Проверка личности рекламодателя

Чтобы обеспечить пользователям безопасную и надежную рекламную экосистему и соблюдать новые правила, Google теперь требует от рекламодателей пройти одну или несколько программ проверки .

Если вам необходимо пройти программу проверки, для процесса проверки может быть установлен крайний срок. Если срок истек, а проверка не завершена, ваша учетная запись может быть приостановлена.

Вы также можете заранее пройти верификацию без необходимости этого делать. IdentityVerificationService предлагает методы для выполнения следующих действий:

  • Получить статус процесса проверки учетной записи клиента, включая любые сроки.
  • Начать процесс проверки

Получить статус проверки

Чтобы получить статус процесса проверки личности рекламодателя для учетной записи клиента, вызовите метод GetIdentityVerification :

Ява

This example is not yet available in Java; you can take a look at the other languages.
    

С#

private static IdentityVerification GetIdentityVerification(
        GoogleAdsClient client, long customerId)
{
    IdentityVerificationServiceClient identityVerificationService =
        client.GetService(Services.V17.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

This example is not yet available in PHP; you can take a look at the other languages.
    

Питон

This example is not yet available in Python; you can take a look at the other languages.
    

Руби

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
      

Перл

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;
}
      

Если учетная запись клиента зарегистрирована в программе обязательной проверки личности рекламодателя, служба возвращает непустой ответ, содержащий список объектов IdentityVerification . Пустой ответ означает, что учетная запись клиента не требуется проходить проверку личности рекламодателя.

Начиная с версии 16, Google Ads API поддерживает только программу ADVERTISER_IDENTITY_VERIFICATION , поэтому это будет единственный элемент в списке.

Объект IdentityVerification содержит следующие свойства:

  • IdentityVerificationRequirement описывающий сроки начала и завершения процесса проверки.

  • IdentityVerificationProgress , описывающий текущий статус процесса проверки: он также может включать URL-адрес действия, позволяющий пользователю завершить процесс проверки.

Начать процесс проверки

Если учетная запись клиента зарегистрирована в программе обязательной проверки личности рекламодателя — GetIdentityVerification вернула непустой ответ со сроком завершения процесса проверки, вы можете начать сеанс проверки, вызвав StartIdentityVerification :

Ява

This example is not yet available in Java; you can take a look at the other languages.
    

С#

private static void StartIdentityVerification(GoogleAdsClient client, long customerId)
{
    IdentityVerificationServiceClient identityVerificationService =
        client.GetService(Services.V17.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

This example is not yet available in PHP; you can take a look at the other languages.
    

Питон

This example is not yet available in Python; you can take a look at the other languages.
    

Руби

def start_identity_verification(client, customer_id)
  client.service.identity_verification.start_identity_verification(
    customer_id: customer_id,
    verification_program: :ADVERTISER_IDENTITY_VERIFICATION,
  )
end
      

Перл

sub start_identity_verification {
  my ($api_client, $customer_id) = @_;

  my $request =
    Google::Ads::GoogleAds::V17::Services::IdentityVerificationService::StartIdentityVerificationRequest
    ->new({
      customerId          => $customer_id,
      verificationProgram => ADVERTISER_IDENTITY_VERIFICATION
    });

  $api_client->AdvertiserIdentityVerificationService()
    ->start_identity_verification($request);
}
      

Это произойдет только в том случае, если не проводится еще один сеанс проверки; после начала сеанса проверки последующие вызовы GetIdentityVerification вернут пользователю URL-адрес действия для завершения процесса проверки и время истечения срока действия URL-адреса действия.

По истечении срока действия вы можете снова вызвать StartIdentityVerification чтобы начать новый сеанс проверки.