Google-Ads-GoogleAds-Client

 view release on metacpan or  search on metacpan

lib/Google/Ads/GoogleAds/OAuth2ServiceAccountsHandler.pm  view on Meta::CPAN

  my $time     = time;

  my $jwt = JSON::WebToken->encode({
      iss   => $json_key->{client_email},
      scope => $self->__formatted_scopes(),
      aud   => Google::Ads::GoogleAds::Constants::OAUTH2_BASE_URL . "/token",
      exp   => $time + 3600,
      iat   => $time,
      sub   => $self->get_impersonated_email()
    },
    $json_key->{private_key},
    "RS256"
  );

  my $response = $self->get___lwp_agent()->post(
    Google::Ads::GoogleAds::Constants::OAUTH2_BASE_URL . "/token",
    {
      grant_type => "urn:ietf:params:oauth:grant-type:jwt-bearer",
      assertion  => $jwt
    });

sa-test.json  view on Meta::CPAN

{
  "type": "service_account",
  "project_id": "org-project-test-387615",
  "private_key_id": "ba736d2d01ae7d7cf7ea2f0de72fbf4b3a49b844",
  "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCw4dbqt0Dal5wW\niu1RTiIyWEg4N/jO3/cZcYNnVFi4z/rEanSwKq5xDXb32LvDZpYQjM70EYFGGhLS\nlRd6tUx8dw5RYpH2LfhDwrr+5oASizPX9U/TpS/wfd+TmgTY4rt43VXyRen6bsi9\nv6C5h...
  "client_email": "anash-test-sa-googleads@org-project-test-387615.iam.gserviceaccount.com",
  "client_id": "117450351457249907255",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/anash-test-sa-googleads%40org-project-test-387615.iam.gserviceaccount.com",
  "universe_domain": "googleapis.com"
}



( run in 1.916 second using v1.01-cache-2.11-cpan-62ea2d55848 )