การยืนยันตัวตนของผู้ลงโฆษณา

ตอนนี้ Google กําหนดให้ผู้ลงโฆษณาทําตามขั้นตอนในโปรแกรมการยืนยันอย่างน้อย 1 รายการให้เสร็จสมบูรณ์ เพื่อสร้างระบบนิเวศของโฆษณาที่ปลอดภัยและน่าเชื่อถือสําหรับผู้ใช้ และเป็นไปตามกฎระเบียบใหม่ๆ ที่มีขึ้น

หากจำเป็นต้องเข้าร่วมโปรแกรมการยืนยันให้เสร็จสมบูรณ์ ระบบอาจกำหนดกำหนดเวลาสำหรับกระบวนการยืนยัน หากพ้นกำหนดเวลาแล้วและคุณยังไม่ได้ทำการยืนยันให้เสร็จสมบูรณ์ บัญชีของคุณอาจถูกระงับชั่วคราว

นอกจากนี้ คุณยังทำการยืนยันได้โดยไม่ต้องมีคำสั่งให้ดำเนินการ IdentityVerificationService มีวิธีการต่อไปนี้

  • เรียกดูสถานะกระบวนการยืนยันตัวตนของบัญชีลูกค้า รวมถึงกำหนดเวลา
  • เริ่มกระบวนการยืนยันตัวตน

เรียกดูสถานะการยืนยัน

หากต้องการเรียกข้อมูลสถานะกระบวนการยืนยันตัวตนของผู้ลงโฆษณาสําหรับบัญชีลูกค้า ให้เรียกใช้เมธอด 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.V18.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, customer_id):
    """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 = client.get_service("IdentityVerificationService")
    response = 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 = response.identity_verification[0]
        deadline = (
            identity_verification.identity_verification_requirement.verification_completion_deadline_time
        )
        progress = identity_verification.verification_progress.program_status

        print(
            f"Account {customer_id} has a verification completion deadline "
            f"of {deadline} and status {progress} for advertiser identity "
            "verification."
        )

        return identity_verification
      

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

หากบัญชีลูกค้าลงทะเบียนในโปรแกรมยืนยันตัวตนผู้ลงโฆษณาที่จําเป็น บริการจะแสดงผลลัพธ์ที่ไม่ใช่ค่าว่างซึ่งมีรายการออบเจ็กต์ IdentityVerification การตอบกลับที่ว่างเปล่าบ่งชี้ว่าบัญชีลูกค้าไม่จำเป็นต้องได้รับการยืนยันตัวตนของผู้ลงโฆษณา

Google Ads API รองรับเฉพาะโปรแกรม ADVERTISER_IDENTITY_VERIFICATION เท่านั้น ดังนั้นรายการดังกล่าวจะเป็นรายการเดียวในรายการ

ออบเจ็กต์ IdentityVerification มีพร็อพเพอร์ตี้ต่อไปนี้

  • IdentityVerificationRequirement ที่อธิบายกำหนดเวลาในการเริ่มและดำเนินการยืนยันตัวตนให้เสร็จสมบูรณ์

  • IdentityVerificationProgress ที่อธิบายสถานะปัจจุบันของกระบวนการยืนยัน ซึ่งอาจรวมถึง URL การดําเนินการเพื่อให้ผู้ใช้ดําเนินการตามกระบวนการยืนยันให้เสร็จสมบูรณ์

เริ่มขั้นตอนการยืนยัน

หากบัญชีลูกค้าลงทะเบียนในโปรแกรมการยืนยันตัวตนผู้ลงโฆษณาที่จําเป็นGetIdentityVerificationแสดงคําตอบที่ไม่ใช่ค่าว่างพร้อมกําหนดเวลาสําหรับการดําเนินการยืนยันให้เสร็จสมบูรณ์ คุณสามารถเริ่มเซสชันการยืนยันได้โดยเรียกใช้ 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.V18.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, customer_id):
    """Starts the identity verification process.

    Args:
        client: An initialized GoogleAdsClient instance.
        customer_id: The client customer ID str.
    """
    service = client.get_service("IdentityVerificationService")
    # Sends a request to start the identity verification process.
    service.start_identity_verification(
        customer_id=customer_id,
        verification_program=client.enums.IdentityVerificationProgramEnum.ADVERTISER_IDENTITY_VERIFICATION,
    )
      

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::V18::Services::IdentityVerificationService::StartIdentityVerificationRequest
    ->new({
      customerId          => $customer_id,
      verificationProgram => ADVERTISER_IDENTITY_VERIFICATION
    });

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

การเรียกใช้นี้จะสำเร็จก็ต่อเมื่อไม่มีเซสชันการยืนยันอื่นที่อยู่ระหว่างดำเนินการ เมื่อคุณเริ่มเซสชันการยืนยันแล้ว การเรียกใช้ GetIdentityVerification ในภายหลังจะแสดง URL การดําเนินการเพื่อให้ผู้ใช้ดําเนินการยืนยันให้เสร็จสมบูรณ์และแสดงเวลาหมดอายุของ URL การดําเนินการ

หลังจากเวลาหมดอายุผ่านไปแล้ว คุณสามารถโทรหา StartIdentityVerification อีกครั้งเพื่อเริ่มเซสชันการยืนยันใหม่