Per offrire agli utenti un ecosistema pubblicitario sicuro e affidabile e rispettare i regolamenti emergenti, Google ora richiede agli inserzionisti di completare uno o più programmi di verifica.
Se devi completare un programma di verifica, potrebbe essere impostata una scadenza per la procedura di verifica. Se la scadenza viene superata senza che la verifica sia stata completata, il tuo account potrebbe essere messo in pausa.
Puoi anche sottoporti proattivamente alla verifica senza che ti venga richiesto.
La IdentityVerificationService
offre metodi per:
- Recuperare lo stato della procedura di verifica per un account cliente, incluse eventuali scadenze
- Avviare una procedura di verifica
Recuperare lo stato della verifica
Per recuperare lo stato della procedura di verifica dell'identità dell'inserzionista per un
account cliente, chiama il metodo GetIdentityVerification
:
Java
private IdentityVerification getIdentityVerification( long customerId, IdentityVerificationServiceClient identityVerificationServiceClient) { GetIdentityVerificationResponse response = identityVerificationServiceClient.getIdentityVerification(Long.toString(customerId)); if (response.getIdentityVerificationCount() == 0) { return null; } IdentityVerification identityVerification = response.getIdentityVerification(0); String deadline = identityVerification .getIdentityVerificationRequirement() .getVerificationCompletionDeadlineTime(); IdentityVerificationProgress progress = identityVerification.getVerificationProgress(); System.out.printf( "Account %d has a verification completion deadline of '%s' and status '%s' for advertiser" + " identity verification.%n", customerId, deadline, progress.getProgramStatus()); return identityVerification; }
C#
private static IdentityVerification GetIdentityVerification( GoogleAdsClient client, long customerId) { IdentityVerificationServiceClient identityVerificationService = client.GetService(Services.V21.IdentityVerificationService); try { GetIdentityVerificationResponse response = identityVerificationService.GetIdentityVerification( new GetIdentityVerificationRequest() { CustomerId = customerId.ToString() } ); if (response.IdentityVerification.Count == 0) { return null; } IdentityVerification identityVerification = response.IdentityVerification[0]; string deadline = identityVerification.IdentityVerificationRequirement.VerificationCompletionDeadlineTime; IdentityVerificationProgress identityVerificationProgress = identityVerification.VerificationProgress; Console.WriteLine($"Account {customerId} has a verification completion " + $"deadline of {deadline} and status " + $"{identityVerificationProgress.ProgramStatus} for advertiser identity " + "verification."); return identityVerification; } catch (GoogleAdsException e) { Console.WriteLine("Failure:"); Console.WriteLine($"Message: {e.Message}"); Console.WriteLine($"Failure: {e.Failure}"); Console.WriteLine($"Request ID: {e.RequestId}"); throw; } }
PHP
private static function getIdentityVerification( int $customerId, IdentityVerificationServiceClient $identityVerificationServiceClient ) { // Gets an identity verification response. $response = $identityVerificationServiceClient->getIdentityVerification( GetIdentityVerificationRequest::build($customerId) ); if (empty($response->getIdentityVerification())) { return null; } // Prints some details about the retrieved identity verification. /** @var IdentityVerification $identityVerification */ $identityVerification = $response->getIdentityVerification()->getIterator()->current(); $deadline = $identityVerification->getIdentityVerificationRequirement() ->getVerificationCompletionDeadlineTime(); $progress = $identityVerification->getVerificationProgress(); printf( "Account %d has a verification completion deadline of '%s' and status '%s' for" . " advertiser identity verification.%s", $customerId, $deadline, IdentityVerificationProgramStatus::name($progress->getProgramStatus()), PHP_EOL ); return $identityVerification; }
Python
def get_identity_verification( client: GoogleAdsClient, customer_id: str ) -> Optional[IdentityVerification]: """Retrieves the status of the advertiser identity verification process. Args: client: An initialized GoogleAdsClient instance. customer_id: The client customer ID str. Returns: either an IdentityVerification instance, or None """ service: IdentityVerificationServiceClient = client.get_service( "IdentityVerificationService" ) response: GetIdentityVerificationResponse = ( service.get_identity_verification(customer_id=customer_id) ) # Check if the response contains any indentity verifications. If not, then # None will be returned. if response.identity_verification: identity_verification_data: IdentityVerification = ( response.identity_verification[0] ) deadline: str = ( identity_verification_data.identity_verification_requirement.verification_completion_deadline_time ) # progress is an enum member progress: ( IdentityVerificationProgramStatusEnum.IdentityVerificationProgramStatus ) = identity_verification_data.verification_progress.program_status print( f"Account {customer_id} has a verification completion deadline " "of {deadline} and status {progress.name} for advertiser identity " # Use .name for string representation of enum "verification." ) return identity_verification_data
Ruby
def get_identity_verification(client, customer_id) response = client.service.identity_verification.get_identity_verification( customer_id: customer_id ) return nil if response.nil? || response.identity_verification.empty? identity_verification = response.identity_verification.first deadline = identity_verification. identity_verification_requirement. verification_completion_deadline_time progress = identity_verification.verification_progress puts "Account #{customer_id} has a verification completion deadline " \ "of #{deadline} and status #{progress.program_status} for advertiser " \ "identity verification." identity_verification end
Perl
sub get_identity_verification { my ($api_client, $customer_id) = @_; my $response = $api_client->IdentityVerificationService()->get({ customerId => $customer_id }); if (!defined $response->{identityVerification}) { printf "Account %s does not require advertiser identity verification.", $customer_id; return; } my $identity_verification = $response->{identityVerification}[0]; my $deadline = $identity_verification->{identityVerificationRequirement} {verificationCompletionDeadlineTime}; my $identity_verification_progress = $identity_verification->{verificationProgress}; printf "Account %s has a verification completion deadline of %s and status " . "%s for advertiser identity verification.", $customer_id, $deadline, $identity_verification_progress->{programStatus}; return $identity_verification; }
Se l'account cliente è registrato al programma di verifica obbligatoria dell'identità dell'inserzionista, il servizio restituisce una risposta non vuota contenente un elenco di oggetti IdentityVerification
. Una
risposta vuota indica che l'account cliente non è tenuto a sottoporsi alla
verifica dell'identità dell'inserzionista.
L'API Google Ads supporta solo il programma ADVERTISER_IDENTITY_VERIFICATION
, quindi sarà l'unico elemento dell'elenco.
Un oggetto IdentityVerification
contiene le seguenti proprietà:
Un
IdentityVerificationRequirement
che descrive le scadenze per iniziare e completare la procedura di verificaUn
IdentityVerificationProgress
che descrive lo stato attuale della procedura di verifica: può includere anche l'URL dell'azione per consentire all'utente di completare la procedura di verifica.
Avvia il processo di verifica
Se un account cliente è registrato al programma di verifica obbligatoria dell'identità dell'inserzionista —GetIdentityVerification
ha restituito una risposta non vuota con una scadenza per il completamento della procedura di verifica, puoi avviare una sessione di verifica chiamando StartIdentityVerification
:
Java
private void startIdentityVerification( long customerId, IdentityVerificationServiceClient identityVerificationServiceClient) { // Sends a request to start the identity verification process. identityVerificationServiceClient.startIdentityVerification( Long.toString(customerId), IdentityVerificationProgram.ADVERTISER_IDENTITY_VERIFICATION); }
C#
private static void StartIdentityVerification(GoogleAdsClient client, long customerId) { IdentityVerificationServiceClient identityVerificationService = client.GetService(Services.V21.IdentityVerificationService); StartIdentityVerificationRequest request = new StartIdentityVerificationRequest() { CustomerId = customerId.ToString(), VerificationProgram = IdentityVerificationProgram.AdvertiserIdentityVerification }; try { identityVerificationService.StartIdentityVerification(request); } catch (GoogleAdsException e) { Console.WriteLine("Failure:"); Console.WriteLine($"Message: {e.Message}"); Console.WriteLine($"Failure: {e.Failure}"); Console.WriteLine($"Request ID: {e.RequestId}"); throw; } }
PHP
private static function startIdentityVerification( int $customerId, IdentityVerificationServiceClient $identityVerificationServiceClient ): void { // Sends a request to start the identity verification process. $identityVerificationServiceClient->startIdentityVerification( StartIdentityVerificationRequest::build( $customerId, IdentityVerificationProgram::ADVERTISER_IDENTITY_VERIFICATION ) ); }
Python
def start_identity_verification( client: GoogleAdsClient, customer_id: str ) -> None: """Starts the identity verification process. Args: client: An initialized GoogleAdsClient instance. customer_id: The client customer ID str. """ service: IdentityVerificationServiceClient = client.get_service( "IdentityVerificationService" ) # Sends a request to start the identity verification process. # The verification_program argument expects an IdentityVerificationProgramEnum value (int). service.start_identity_verification( customer_id=customer_id, verification_program=client.enums.IdentityVerificationProgramEnum.ADVERTISER_IDENTITY_VERIFICATION.value, )
Ruby
def start_identity_verification(client, customer_id) client.service.identity_verification.start_identity_verification( customer_id: customer_id, verification_program: :ADVERTISER_IDENTITY_VERIFICATION, ) end
Perl
sub start_identity_verification { my ($api_client, $customer_id) = @_; my $request = Google::Ads::GoogleAds::V21::Services::IdentityVerificationService::StartIdentityVerificationRequest ->new({ customerId => $customer_id, verificationProgram => ADVERTISER_IDENTITY_VERIFICATION }); $api_client->AdvertiserIdentityVerificationService() ->start_identity_verification($request); }
L'operazione andrà a buon fine solo se non è in corso un'altra sessione di verifica.
Una volta avviata una sessione di verifica, le chiamate successive a
GetIdentityVerification
restituiranno l'URL dell'azione che l'utente deve completare
la procedura di verifica e la data di scadenza dell'URL dell'azione.
Una volta trascorso il tempo di scadenza, puoi chiamare di nuovo il numero StartIdentityVerification
per avviare una nuova sessione di verifica.