Como administrador do Google Ads, você pode gerenciar convites de acesso de usuários para uma do Compute Engine.
Convidar usuários
Você pode enviar um convite por e-mail para um novo usuário como parte do
Como gerenciar o acesso a uma conta do Google Ads.
Para isso, é preciso criar
CustomerUserAccessInvitation
usando o
MutateCustomerUserAccessInvitation
da
CustomerUserAccessInvitationService
O convite por e-mail precisa ser enviado
aceito pelo usuário que recebeu o convite. O convite também pode ser
aceito pelo usuário usando um endereço de e-mail alternativo. Pode levar até 24
horas para que o status mude de pendente depois que o convite for aceito.
Este snippet de código mostra como enviar um convite:
Java
// Constructs an access invitation. CustomerUserAccessInvitation invitation = CustomerUserAccessInvitation.newBuilder() .setEmailAddress(emailAddress) .setAccessRole(accessRole) .build(); // Constructs an operation to send the invitation. CustomerUserAccessInvitationOperation operation = CustomerUserAccessInvitationOperation.newBuilder().setCreate(invitation).build(); // Creates a CustomerUserAccessInvitationServiceClient. try (CustomerUserAccessInvitationServiceClient client = googleAdsClient.getLatestVersion().createCustomerUserAccessInvitationServiceClient()) { // Issues the request. MutateCustomerUserAccessInvitationResponse response = client.mutateCustomerUserAccessInvitation(String.valueOf(customerId), operation); // Prints some information about the result. System.out.printf( "Customer user access invitation was sent for customerId = " + "%d to email address = '%s' and access role = '%s'. The invitation resource " + "name is '%s'.%n", customerId, emailAddress, accessRole, response.getResult().getResourceName()); }
C#
MutateCustomerUserAccessInvitationRequest invitationRequest = new MutateCustomerUserAccessInvitationRequest() { CustomerId = customerId.ToString(), Operation = new CustomerUserAccessInvitationOperation() { Create = new CustomerUserAccessInvitation() { EmailAddress = emailAddress, AccessRole = accessRole }, } }; try { var response = service.MutateCustomerUserAccessInvitation(invitationRequest); Console.WriteLine("Customer user access invitation was sent for customerId = " + "{0} to email address = {1} and access role = {2}. The invitation resource " + "name is {3}.", customerId, emailAddress, accessRole, response.Result.ResourceName); } catch (GoogleAdsException e) { Console.WriteLine("Failure:"); Console.WriteLine($"Message: {e.Message}"); Console.WriteLine($"Failure: {e.Failure}"); Console.WriteLine($"Request ID: {e.RequestId}"); throw; }
PHP
// Creates a customer user access invitation. $customerUserAccessInvitation = new CustomerUserAccessInvitation([ 'email_address' => $emailAddress, 'access_role' => AccessRole::value($accessRole) ]); // Creates a customer user access invitation operation. $customerUserAccessInvitationOperation = new CustomerUserAccessInvitationOperation(); $customerUserAccessInvitationOperation->setCreate($customerUserAccessInvitation); // Issues a mutate request to send the customer user access invitation and prints its // information. $customerUserAccessInvitationServiceClient = $googleAdsClient->getCustomerUserAccessInvitationServiceClient(); $response = $customerUserAccessInvitationServiceClient->mutateCustomerUserAccessInvitation( MutateCustomerUserAccessInvitationRequest::build( $customerId, $customerUserAccessInvitationOperation ) ); printf( "Customer user access invitation with resource name '%s' was sent from customer " . "ID %d to email address '%s' with access role '%s'.%s", $response->getResult()->getResourceName(), $customerId, $emailAddress, $accessRole, PHP_EOL );
Python
invitation_operation = client.get_type( "CustomerUserAccessInvitationOperation" ) invitation = invitation_operation.create invitation.email_address = email_address invitation.access_role = client.enums.AccessRoleEnum[access_role].value response = service.mutate_customer_user_access_invitation( customer_id=customer_id, operation=invitation_operation ) print( "Customer user access invitation was sent for " f"customer ID: '{customer_id}', " f"email address {email_address}, and " f"access role {access_role}. The invitation resource name is: " f"{response.result.resource_name}" )
Ruby
operation = client.operation.create_resource.customer_user_access_invitation do |inv| inv.email_address = email_address inv.access_role = access_role end # Issues a mutate request to get the response. response = client.service.customer_user_access_invitation.mutate_customer_user_access_invitation( customer_id: customer_id, operation: operation, ) # Prints out information of the created invitation. puts "Customer user access invitation was sent for customerId = #{customer_id} " \ "email address = '#{email_address}', " \ "access role = '#{access_role}'."
Perl
sub invite_user_with_access_role { my ($api_client, $customer_id, $email_address, $access_role) = @_; # Create the user access invitation. my $user_access_invitation = Google::Ads::GoogleAds::V17::Resources::CustomerUserAccessInvitation->new({ emailAddress => $email_address, accessRole => $access_role }); # Create the user access invitation operation. my $invitation_operation = Google::Ads::GoogleAds::V17::Services::CustomerUserAccessInvitationService::CustomerUserAccessInvitationOperation ->new({create => $user_access_invitation}); # Send the user access invitation. my $invitation_response = $api_client->CustomerUserAccessInvitationService()->mutate({ customerId => $customer_id, operation => $invitation_operation }); printf "Customer user access invitation was sent for customerId = %d " . "to email address = '%s' and access role = '%s'. " . "The invitation resource name is '%s'.\n", $customer_id, $email_address, $access_role, $invitation_response->{result}{resourceName}; return 1; }
Revogar convites
Para revogar um convite, remova um CustomerUserAccessInvitation
usando o
o método MutateCustomerUserAccessInvitation
da
CustomerUserAccessInvitationService
Recuperar convites de usuários
Você pode recuperar a lista de convites de usuários pendentes criando um
Linguagem de consulta do Google Ads para consultar todas as
Entidades do CustomerUserAccessInvitation
associadas a um ID de cliente. Aqui está uma consulta típica:
SELECT
customer_user_access_invitation.invitation_id,
customer_user_access_invitation.email_address,
customer_user_access_invitation.access_role,
customer_user_access_invitation.invitation_status,
customer_user_access_invitation.creation_date_time
FROM
customer_user_access_invitation
Você pode adicionar outras condições de filtragem para recuperar subconjuntos de convites.
Por exemplo, um caso de uso comum é recuperar a lista de usuários pendentes
convites. Isso pode ser feito filtrando por
customer_user_access_invitation.invitation_status = PENDING
: