共用方式為


UpdateUserRoles 服務作業 - 客戶管理

匯報 指定使用者的角色。

注意事項

只有具有超級 管理員 或 Standard 認證的使用者可以更新使用者角色。 Standard 用戶無法設定或修改 Super 管理員 角色。 如需詳細資訊,請參閱 使用者角色 技術指南。

對於具有帳戶角色的使用者,您可以新增和刪除使用者可存取的帳戶。 對於具有客戶角色的使用者,您可以新增和刪除用戶可存取的客戶。 您也可以將使用者從擁有帳戶角色變更為具有客戶角色,反之亦然。

要求專案

UpdateUserRolesRequest 物件會定義服務作業要求的主體標頭元素。 元素的順序必須與 要求SOAP中所示的順序相同。

注意事項

除非下面另有說明,否則所有要求專案都是必要的。

要求本文專案

元素 描述 資料類型
CustomerId 用戶所屬客戶的標識碼。
DeleteAccountIds 要從使用者可以管理的帳戶清單中移除的帳戶標識元陣列。

如需使用方式,請參閱下方的一節。
long 陣列
DeleteCustomerIds 要從使用者可管理的客戶清單中移除的客戶標識子陣列。

如需使用方式,請參閱下方的一節。
long 陣列
DeleteRoleId 如果已設定,則為 DeleteAccountIdsDeleteCustomerIds 元素中所指定值所套用之角色的標識碼。

可能的值包括下列各項:
16 - 使用者具有 廣告營銷活動管理員 角色。
33 - 使用者具有 匯總工具 角色。
41 - 使用者具有超級 管理員 角色。
100 - 使用者具有 查看器 角色。
203 - 使用者具有 Standard 使用者角色。

如需詳細資訊,請參閱 使用者角色 技術指南。

重要:上述清單提供可能傳回值的範例。 可能會傳回其他值。 已淘汰或內部角色可以包含在回應中。
int
NewAccountIds 要限制使用者的帳戶標識碼數位。 使用者只能管理這些帳戶。

如果使用者目前僅限於一組帳戶,請將此元素設定為您希望使用者也管理的新帳戶。 例如,如果使用者目前管理帳戶 123 和 456,而且您希望使用者也管理帳戶 789,請將此元素設定為 789。

如需使用方式,請參閱下方的一節。
long 陣列
NewCustomerIds 要限制使用者的客戶識別碼陣列。 使用者只能管理這些客戶。

如需使用方式,請參閱下方的一節。
long 陣列
NewRoleId 如果已設定,則為 NewAccountIdsNewCustomerIds 元素中所指定值適用的角色識別碼。

可能的值包括下列各項:
16 - 使用者具有 廣告營銷活動管理員 角色。
33 - 使用者具有 匯總工具 角色。
41 - 使用者具有超級 管理員 角色。
100 - 使用者具有 查看器 角色。
203 - 使用者具有 Standard 使用者角色。

如需詳細資訊,請參閱 使用者角色 技術指南。

重要:上述清單提供可能傳回值的範例。 可能會傳回其他值。 已淘汰或內部角色可以包含在回應中。
int
UserId 您想要更新其角色之使用者的識別碼。

要求標頭元素

元素 描述 資料類型
AuthenticationToken OAuth 存取令牌,代表有權Microsoft Advertising 帳戶之用戶的認證。

如需詳細資訊,請 參閱使用 OAuth 進行驗證
string
DeveloperToken 用來存取 Bing 廣告 API 的開發人員令牌。

如需詳細資訊 ,請參閱取得開發人員令牌
string
密碼 此元素會保留供內部使用,並會從未來的 API 版本中移除。 您必須使用 AuthenticationToken 元素來設定用戶認證。 string
UserName 此元素會保留供內部使用,並會從未來的 API 版本中移除。 您必須使用 AuthenticationToken 元素來設定用戶認證。 string

Response 元素

UpdateUserRolesResponse 物件會定義服務作業響應的主體標頭元素。 這些元素的傳回順序與 回應SOAP中所示的順序相同。

回應本文專案

元素 描述 資料類型
LastModifiedTime 上次更新使用者角色的日期和時間。 值為國際標準時間 (UTC)。

日期和時間值會反映伺服器上的日期和時間,而不是用戶端。 如需日期和時間格式的相關信息,請參閱 基本 XML 數據類型中的 dateTime 專案。
dateTime

回應標頭元素

元素 描述 資料類型
TrackingId 包含 API 呼叫詳細數據的記錄項目識別碼。 string

要求SOAP

此範本是由工具所產生,用來顯示SOAP要求的主體標頭元素順序。 如需可搭配此服務作業使用的支援類型,請參閱上述 的要求本文項目 參考。

<s:Envelope xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Header xmlns="https://bingads.microsoft.com/Customer/v13">
    <Action mustUnderstand="1">UpdateUserRoles</Action>
    <AuthenticationToken i:nil="false">ValueHere</AuthenticationToken>
    <DeveloperToken i:nil="false">ValueHere</DeveloperToken>
  </s:Header>
  <s:Body>
    <UpdateUserRolesRequest xmlns="https://bingads.microsoft.com/Customer/v13">
      <CustomerId>ValueHere</CustomerId>
      <UserId>ValueHere</UserId>
      <NewRoleId i:nil="false">ValueHere</NewRoleId>
      <NewAccountIds i:nil="false" xmlns:a1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <a1:long>ValueHere</a1:long>
      </NewAccountIds>
      <NewCustomerIds i:nil="false" xmlns:a1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <a1:long>ValueHere</a1:long>
      </NewCustomerIds>
      <DeleteRoleId i:nil="false">ValueHere</DeleteRoleId>
      <DeleteAccountIds i:nil="false" xmlns:a1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <a1:long>ValueHere</a1:long>
      </DeleteAccountIds>
      <DeleteCustomerIds i:nil="false" xmlns:a1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
        <a1:long>ValueHere</a1:long>
      </DeleteCustomerIds>
    </UpdateUserRolesRequest>
  </s:Body>
</s:Envelope>

回應 SOAP

此範本是由工具所產生,用來顯示SOAP回應的 主體標頭 元素順序。

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Header xmlns="https://bingads.microsoft.com/Customer/v13">
    <TrackingId d3p1:nil="false" xmlns:d3p1="http://www.w3.org/2001/XMLSchema-instance">ValueHere</TrackingId>
  </s:Header>
  <s:Body>
    <UpdateUserRolesResponse xmlns="https://bingads.microsoft.com/Customer/v13">
      <LastModifiedTime>ValueHere</LastModifiedTime>
    </UpdateUserRolesResponse>
  </s:Body>
</s:Envelope>

程序代碼語法

範例語法可以與 Bing 廣告 SDK 搭配使用。 如需更多範例,請參閱 Bing 廣告 API 程式代碼範 例。

public async Task<UpdateUserRolesResponse> UpdateUserRolesAsync(
	long customerId,
	long userId,
	int? newRoleId,
	IList<long> newAccountIds,
	IList<long> newCustomerIds,
	int? deleteRoleId,
	IList<long> deleteAccountIds,
	IList<long> deleteCustomerIds)
{
	var request = new UpdateUserRolesRequest
	{
		CustomerId = customerId,
		UserId = userId,
		NewRoleId = newRoleId,
		NewAccountIds = newAccountIds,
		NewCustomerIds = newCustomerIds,
		DeleteRoleId = deleteRoleId,
		DeleteAccountIds = deleteAccountIds,
		DeleteCustomerIds = deleteCustomerIds
	};

	return (await CustomerManagementService.CallAsync((s, r) => s.UpdateUserRolesAsync(r), request));
}
static UpdateUserRolesResponse updateUserRoles(
	java.lang.Long customerId,
	java.lang.Long userId,
	int newRoleId,
	ArrayOflong newAccountIds,
	ArrayOflong newCustomerIds,
	int deleteRoleId,
	ArrayOflong deleteAccountIds,
	ArrayOflong deleteCustomerIds) throws RemoteException, Exception
{
	UpdateUserRolesRequest request = new UpdateUserRolesRequest();

	request.setCustomerId(customerId);
	request.setUserId(userId);
	request.setNewRoleId(newRoleId);
	request.setNewAccountIds(newAccountIds);
	request.setNewCustomerIds(newCustomerIds);
	request.setDeleteRoleId(deleteRoleId);
	request.setDeleteAccountIds(deleteAccountIds);
	request.setDeleteCustomerIds(deleteCustomerIds);

	return CustomerManagementService.getService().updateUserRoles(request);
}
static function UpdateUserRoles(
	$customerId,
	$userId,
	$newRoleId,
	$newAccountIds,
	$newCustomerIds,
	$deleteRoleId,
	$deleteAccountIds,
	$deleteCustomerIds)
{

	$GLOBALS['Proxy'] = $GLOBALS['CustomerManagementProxy'];

	$request = new UpdateUserRolesRequest();

	$request->CustomerId = $customerId;
	$request->UserId = $userId;
	$request->NewRoleId = $newRoleId;
	$request->NewAccountIds = $newAccountIds;
	$request->NewCustomerIds = $newCustomerIds;
	$request->DeleteRoleId = $deleteRoleId;
	$request->DeleteAccountIds = $deleteAccountIds;
	$request->DeleteCustomerIds = $deleteCustomerIds;

	return $GLOBALS['CustomerManagementProxy']->GetService()->UpdateUserRoles($request);
}
response=customermanagement_service.UpdateUserRoles(
	CustomerId=CustomerId,
	UserId=UserId,
	NewRoleId=NewRoleId,
	NewAccountIds=NewAccountIds,
	NewCustomerIds=NewCustomerIds,
	DeleteRoleId=DeleteRoleId,
	DeleteAccountIds=DeleteAccountIds,
	DeleteCustomerIds=DeleteCustomerIds)

註解

例如,如果廣告營銷活動經理僅限於管理帳戶 123、456 和 789,而且您不想再讓使用者管理 456,請據此設定下列元素:

  • NewRoleId 元素設定為 16 (廣告營銷活動經理角色) 。

  • NewAccountIds 元素設定為包含 123 和 789 的數位。

  • DeleteRoleId 元素設定為 16 (廣告營銷活動管理員角色) 。

  • DeleteAccountIds 元素設定為包含 456 的陣列。

如果廣告行銷活動管理員僅限於管理帳戶 123 和 789,而且您現在想要讓使用者管理所有帳戶,請據以設定下列元素:

  • NewRoleId 元素設定為 16 (廣告營銷活動經理角色) 。

  • NewAccountIds 元素設定為 NULL。

  • DeleteRoleId 元素設定為 16 (廣告營銷活動管理員角色) 。

  • DeleteAccountIds 元素設定為包含 123、456 和 789 的陣列。

具有帳戶層級角色的使用者可以限制為特定帳戶。 具有客戶層級角色的使用者可以存取用戶客戶內的所有帳戶,而且其存取權不能限製為特定帳戶。

注意事項

嘗試將客戶層級使用者角色限制為特定帳戶時, UpdateUserRoles 作業不會失敗,而且使用者會保留使用者客戶內所有帳戶的存取權。

需求

服務: CustomerManagementService.svc v13
命名空間: https://bingads.microsoft.com/Customer/v13

要求 URL

https://clientcenter.api.bingads.microsoft.com/CustomerManagement/v13/UserRoles

要求專案

UpdateUserRolesRequest 物件會定義服務作業要求的主體標頭元素。

注意事項

除非下面另有說明,否則所有要求專案都是必要的。

要求本文專案

元素 描述 資料類型
CustomerId 用戶所屬客戶的標識碼。
DeleteAccountIds 要從使用者可以管理的帳戶清單中移除的帳戶標識元陣列。

如需使用方式,請參閱下方的一節。
long 陣列
DeleteCustomerIds 要從使用者可管理的客戶清單中移除的客戶標識子陣列。

如需使用方式,請參閱下方的一節。
long 陣列
DeleteRoleId 如果已設定,則為 DeleteAccountIdsDeleteCustomerIds 元素中所指定值所套用之角色的標識碼。

可能的值包括下列各項:
16 - 使用者具有 廣告營銷活動管理員 角色。
33 - 使用者具有 匯總工具 角色。
41 - 使用者具有超級 管理員 角色。
100 - 使用者具有 查看器 角色。
203 - 使用者具有 Standard 使用者角色。

如需詳細資訊,請參閱 使用者角色 技術指南。

重要:上述清單提供可能傳回值的範例。 可能會傳回其他值。 已淘汰或內部角色可以包含在回應中。
int
NewAccountIds 要限制使用者的帳戶標識碼數位。 使用者只能管理這些帳戶。

如果使用者目前僅限於一組帳戶,請將此元素設定為您希望使用者也管理的新帳戶。 例如,如果使用者目前管理帳戶 123 和 456,而且您希望使用者也管理帳戶 789,請將此元素設定為 789。

如需使用方式,請參閱下方的一節。
long 陣列
NewCustomerIds 要限制使用者的客戶識別碼陣列。 使用者只能管理這些客戶。

如需使用方式,請參閱下方的一節。
long 陣列
NewRoleId 如果已設定,則為 NewAccountIdsNewCustomerIds 元素中所指定值適用的角色識別碼。

可能的值包括下列各項:
16 - 使用者具有 廣告營銷活動管理員 角色。
33 - 使用者具有 匯總工具 角色。
41 - 使用者具有超級 管理員 角色。
100 - 使用者具有 查看器 角色。
203 - 使用者具有 Standard 使用者角色。

如需詳細資訊,請參閱 使用者角色 技術指南。

重要:上述清單提供可能傳回值的範例。 可能會傳回其他值。 已淘汰或內部角色可以包含在回應中。
int
UserId 您想要更新其角色之使用者的識別碼。

要求標頭元素

元素 描述 資料類型
授權 OAuth 存取令牌,代表有權Microsoft Advertising 帳戶之用戶的認證。 請確定令牌前面加上 「Bearer」 ,這是正確驗證的必要專案。

如需詳細資訊,請 參閱使用 OAuth 進行驗證
string
DeveloperToken 用來存取 Bing 廣告 API 的開發人員令牌。

如需詳細資訊 ,請參閱取得開發人員令牌
string
密碼 此元素會保留供內部使用,並會從未來的 API 版本中移除。 您必須使用 AuthenticationToken 元素來設定用戶認證。 string
UserName 此元素會保留供內部使用,並會從未來的 API 版本中移除。 您必須使用 AuthenticationToken 元素來設定用戶認證。 string

Response 元素

UpdateUserRolesResponse 物件會定義服務作業響應的主體標頭元素。 這些元素的傳回順序與 回應 JSON 中所示的順序相同。

回應本文專案

元素 描述 資料類型
LastModifiedTime 上次更新使用者角色的日期和時間。 值為國際標準時間 (UTC)。

日期和時間值會反映伺服器上的日期和時間,而不是用戶端。 如需日期和時間格式的相關信息,請參閱 基本 XML 數據類型中的 dateTime 專案。
dateTime

回應標頭元素

元素 描述 資料類型
TrackingId 包含 API 呼叫詳細數據的記錄項目識別碼。 string

要求 JSON

此範本是由工具所產生,用來顯示 JSON 要求的 主體標頭 元素。 如需可搭配此服務作業使用的支援類型,請參閱上述 的要求本文項目 參考。

{
  "CustomerId": "LongValueHere",
  "UserId": "LongValueHere",
  "NewRoleId": IntValueHere,
  "NewAccountIds": [
    "LongValueHere"
  ],
  "NewCustomerIds": [
    "LongValueHere"
  ],
  "DeleteRoleId": IntValueHere,
  "DeleteAccountIds": [
    "LongValueHere"
  ],
  "DeleteCustomerIds": [
    "LongValueHere"
  ]
}

回應 JSON

此範本是由工具所產生,用來顯示 JSON 回應的 主體標頭 元素。

{
  "LastModifiedTime": "ValueHere"
}

程序代碼語法

若要透過 SDK 呼叫 REST API,您必須將 SDK 升級至特定版本並設定系統參數。範例語法可以與 Bing 廣告 SDK 搭配使用。 如需更多範例,請參閱 Bing 廣告 API 程式代碼範 例。

public async Task<UpdateUserRolesResponse> UpdateUserRolesAsync(
	long customerId,
	long userId,
	int? newRoleId,
	IList<long> newAccountIds,
	IList<long> newCustomerIds,
	int? deleteRoleId,
	IList<long> deleteAccountIds,
	IList<long> deleteCustomerIds)
{
	var request = new UpdateUserRolesRequest
	{
		CustomerId = customerId,
		UserId = userId,
		NewRoleId = newRoleId,
		NewAccountIds = newAccountIds,
		NewCustomerIds = newCustomerIds,
		DeleteRoleId = deleteRoleId,
		DeleteAccountIds = deleteAccountIds,
		DeleteCustomerIds = deleteCustomerIds
	};

	return (await CustomerManagementService.CallAsync((s, r) => s.UpdateUserRolesAsync(r), request));
}
static UpdateUserRolesResponse updateUserRoles(
	java.lang.Long customerId,
	java.lang.Long userId,
	int newRoleId,
	ArrayOflong newAccountIds,
	ArrayOflong newCustomerIds,
	int deleteRoleId,
	ArrayOflong deleteAccountIds,
	ArrayOflong deleteCustomerIds) throws RemoteException, Exception
{
	UpdateUserRolesRequest request = new UpdateUserRolesRequest();

	request.setCustomerId(customerId);
	request.setUserId(userId);
	request.setNewRoleId(newRoleId);
	request.setNewAccountIds(newAccountIds);
	request.setNewCustomerIds(newCustomerIds);
	request.setDeleteRoleId(deleteRoleId);
	request.setDeleteAccountIds(deleteAccountIds);
	request.setDeleteCustomerIds(deleteCustomerIds);

	return CustomerManagementService.getService().updateUserRoles(request);
}
static function UpdateUserRoles(
	$customerId,
	$userId,
	$newRoleId,
	$newAccountIds,
	$newCustomerIds,
	$deleteRoleId,
	$deleteAccountIds,
	$deleteCustomerIds)
{

	$GLOBALS['Proxy'] = $GLOBALS['CustomerManagementProxy'];

	$request = new UpdateUserRolesRequest();

	$request->CustomerId = $customerId;
	$request->UserId = $userId;
	$request->NewRoleId = $newRoleId;
	$request->NewAccountIds = $newAccountIds;
	$request->NewCustomerIds = $newCustomerIds;
	$request->DeleteRoleId = $deleteRoleId;
	$request->DeleteAccountIds = $deleteAccountIds;
	$request->DeleteCustomerIds = $deleteCustomerIds;

	return $GLOBALS['CustomerManagementProxy']->GetService()->UpdateUserRoles($request);
}
response=customermanagement_service.UpdateUserRoles(
	CustomerId=CustomerId,
	UserId=UserId,
	NewRoleId=NewRoleId,
	NewAccountIds=NewAccountIds,
	NewCustomerIds=NewCustomerIds,
	DeleteRoleId=DeleteRoleId,
	DeleteAccountIds=DeleteAccountIds,
	DeleteCustomerIds=DeleteCustomerIds)

註解

例如,如果廣告營銷活動經理僅限於管理帳戶 123、456 和 789,而且您不想再讓使用者管理 456,請據此設定下列元素:

  • NewRoleId 元素設定為 16 (廣告營銷活動經理角色) 。

  • NewAccountIds 元素設定為包含 123 和 789 的數位。

  • DeleteRoleId 元素設定為 16 (廣告營銷活動管理員角色) 。

  • DeleteAccountIds 元素設定為包含 456 的陣列。

如果廣告行銷活動管理員僅限於管理帳戶 123 和 789,而且您現在想要讓使用者管理所有帳戶,請據以設定下列元素:

  • NewRoleId 元素設定為 16 (廣告營銷活動經理角色) 。

  • NewAccountIds 元素設定為 NULL。

  • DeleteRoleId 元素設定為 16 (廣告營銷活動管理員角色) 。

  • DeleteAccountIds 元素設定為包含 123、456 和 789 的陣列。

具有帳戶層級角色的使用者可以限制為特定帳戶。 具有客戶層級角色的使用者可以存取用戶客戶內的所有帳戶,而且其存取權不能限製為特定帳戶。

注意事項

嘗試將客戶層級使用者角色限制為特定帳戶時, UpdateUserRoles 作業不會失敗,而且使用者會保留使用者客戶內所有帳戶的存取權。