

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Connessione a Google Ads
<a name="connecting-to-googleads"></a>

 L'API Google Ads è l'interfaccia programmatica di Google Ads, usata per gestire campagne e account Google Ads complessi o di grandi dimensioni. Se sei un utente Google Ads, puoi connetterti AWS Glue al tuo account Google Ads. Quindi, puoi usare Google Ads come origine dati nei tuoi processi ETL. Esegui questi processi per trasferire dati tra Google Ads e AWS i servizi o altre applicazioni supportate. 

**Topics**
+ [AWS Glue supporto per Google Ads](googleads-support.md)
+ [Policy contenenti le operazioni API per creare e utilizzare le connessioni](googleads-configuring-iam-permissions.md)
+ [Configurazione di Google Ads](googleads-configuring.md)
+ [Configurazione delle connessioni Google Ads](googleads-configuring-connections.md)
+ [Lettura da entità di Google Ads](googleads-reading-from-entities.md)
+ [Opzioni di connessione Google Ads](googleads-connection-options.md)
+ [Creazione di un account Google Ads](googleads-create-account.md)
+ [Limitazioni](googleads-connector-limitations.md)

# AWS Glue supporto per Google Ads
<a name="googleads-support"></a>

AWS Glue supporta Google Ads come segue:

**Supportato come origine?**  
Sì. Puoi utilizzare i lavori AWS Glue ETL per interrogare i dati di Google Ads.

**Supportato come destinazione?**  
No.

**Versioni dell'API Google Ads supportate**  
v18

# Policy contenenti le operazioni API per creare e utilizzare le connessioni
<a name="googleads-configuring-iam-permissions"></a>

 La seguente politica di esempio descrive le AWS autorizzazioni richieste per la creazione e l'utilizzo delle connessioni. Se si sta creando un nuovo ruolo, creare una policy che contenga quanto segue: 

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "glue:ListConnectionTypes",
        "glue:DescribeConnectionType",
        "glue:RefreshOAuth2Tokens",
        "glue:ListEntities",
        "glue:DescribeEntity"
      ],
      "Resource": "*"
    }
  ]
}
```

------

È anche possibile utilizzare le seguenti policy IAM per autorizzare l'accesso:
+  [AWSGlueServiceRole](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSGlueServiceRole)— Garantisce l'accesso alle risorse che diversi AWS Glue processi richiedono per l'esecuzione per conto dell'utente. Queste risorse includono Amazon S3 AWS Glue, IAM, CloudWatch Logs e Amazon EC2. Se segui la convenzione di denominazione delle risorse specificata in questa politica, AWS Glue i processi dispongono delle autorizzazioni necessarie. Questa policy è in genere collegata ai ruoli specificati quando si definiscono crawler, processi ed endpoint di sviluppo. 
+  [AWSGlueConsoleFullAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AWSGlueConsoleFullAccess)— Concede l'accesso completo alle AWS Glue risorse quando un'identità a cui è allegata la policy utilizza la AWS console di gestione. Se si segue la convenzione per la denominazione per le risorse specificate nella policy, gli utenti hanno la piena funzionalità della console. Questa policy è in genere associata agli utenti della AWS Glue console. 

# Configurazione di Google Ads
<a name="googleads-configuring"></a>

Prima di poter AWS Glue utilizzare il trasferimento da Google Ads, devi soddisfare questi requisiti:

## Requisiti minimi
<a name="googleads-configuring-min-requirements"></a>
+  Hai un account Google Ads con e-mail e password. Per ulteriori informazioni sulla creazione di account, consulta [Creating a Google Ads account](googleads-create-account.md). 
+  Il tuo account di Google Ads è abilitato all'accesso tramite API. Tutti gli utilizzi dell'API di Google Ads sono disponibili senza costi aggiuntivi. 
+  Il tuo account Google Ads ti consente di installare app connesse. Se non hai accesso a questa funzionalità, contatta l'amministratore di Google Ads. 

 Se soddisfi questi requisiti, sei pronto per connetterti AWS Glue al tuo account Google Ads. 

# Configurazione delle connessioni Google Ads
<a name="googleads-configuring-connections"></a>

 Google Ads supporta il tipo di `AUTHORIZATION_CODE` sovvenzione per OAuth2. 

 Questo tipo di concessione è considerato «a tre gambe» in OAuth quanto si basa sul reindirizzamento degli utenti al server di autorizzazione di terze parti per autenticare l'utente. Viene utilizzato durante la creazione di connessioni tramite la console. AWS Glue La AWS Glue Console reindirizzerà l'utente a Google Ads, dove l'utente deve effettuare il login e concedere AWS Glue le autorizzazioni richieste per accedere alla propria istanza Google Ads. 

 Gli utenti possono scegliere di creare la propria app connessa in Google Ads e fornire il proprio ID cliente e il segreto del client quando creano connessioni tramite la AWS Glue Console. In questo scenario, verranno comunque reindirizzati a Google Ads per accedere e autorizzare l'accesso AWS Glue alle proprie risorse. 

 Questo tipo di concessione genera un token di aggiornamento e un token di accesso. Il token di accesso dura poco tempo e può essere aggiornato automaticamente senza l'interazione dell'utente utilizzando il token di aggiornamento. 

 Per ulteriori informazioni, consulta la [documentazione pubblica di Google Ads sulla creazione di un'app connessa per il flusso del codice di autorizzazione. OAuth ](https://developers.google.com/workspace/guides/create-credentials) 

Per configurare una connessione a Google Ads:

1.  In AWS Secrets Manager, crea un segreto con i seguenti dettagli. È necessario creare un segreto per ogni connessione in AWS Glue. 

   1.  Per il tipo di AuthorizationCode sovvenzione: 
      +  Per le app connesse gestite dal cliente: il segreto deve contenere l'app connessa Consumer Secret con `USER_MANAGED_CLIENT_APPLICATION_CLIENT_SECRET` come chiave. 

1. In AWS Glue Glue Studio, crea una connessione in **Connessioni dati** seguendo i passaggi seguenti: 

   1. Quando selezioni un **tipo di connessione**, seleziona Google Ads.

   1. Fornisci `developer token` di Google Ads a cui desideri connetterti.

   1. Fornisci i dati `MANAGER ID` di Google Ads se desideri accedere come gestore.

   1.  Seleziona il ruolo IAM che AWS Glue può assumere e dispone delle autorizzazioni per le seguenti azioni: 

------
#### [ JSON ]

****  

      ```
      {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "secretsmanager:DescribeSecret",
              "secretsmanager:GetSecretValue",
              "secretsmanager:PutSecretValue",
              "ec2:CreateNetworkInterface",
              "ec2:DescribeNetworkInterfaces",
              "ec2:DeleteNetworkInterface"
            ],
            "Resource": "*"
          }
        ]
      }
      ```

------

   1.  Seleziona quello `secretName` che desideri utilizzare per questa connessione per AWS Glue inserire i token. 

   1.  Selezionare le opzioni di rete se si desidera utilizzare la propria rete. 

1.  Concedi il permesso di lettura `secretName` al ruolo IAM associato al tuo AWS Glue lavoro. 

# Lettura da entità di Google Ads
<a name="googleads-reading-from-entities"></a>

 **Prerequisiti** 
+  Un oggetto di Google Ads da cui si desidera leggere. Consulta la tabella delle entità supportate qui di seguito per verificare le entità disponibili. 

 **Entità supportate** 


| Entità | Può essere Filtrato | Supporta Limite | Supporta Ordina per | Supporta Seleziona \$1 | Supporta il partizionamento | 
| --- | --- | --- | --- | --- | --- | 
| Annuncio gruppo di annunci | Sì  | Sì | Sì | No | Sì | 
| Gruppo di annunci | Sì  | Sì | Sì | No | Sì | 
| Budget campagna | Sì  | Sì | Sì | Sì | Sì | 
| Budget account | Sì | No | Sì | Sì | No | 
| Campagna | Sì  | Sì | Sì | Sì | Sì | 
| Account | Sì | No | Sì | No | No | 

 **Esempio** 

```
googleAds_read = glueContext.create_dynamic_frame.from_options(
    connection_type="googleads",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "campaign-3467***",
        "API_VERSION": "v16"
    }
```

 **Dettagli sull'entità e sul campo di Google Ads** 


| Entità | Campo | Tipo di dati | Operatori supportati | 
| --- | --- | --- | --- | 
| Account | resourceName | Stringa | \$1=, = | 
| Account | callReportingEnabled | Booleano | \$1=, = | 
| Account | callConversionReportingAbilitato | Booleano | \$1=, = | 
| Account | callConversionAction | Stringa | \$1=, = | 
| Account | conversionTrackingId | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Account | crossAccountConversionTrackingId | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Account | payPerConversionEligibilityFailureReasons | List |  | 
| Account | id | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Account | currencyCode | Stringa | \$1=, =, LIKE | 
| Account | timezone | Stringa | \$1=, =, LIKE | 
| Account | autoTaggingEnabled | Booleano | \$1=, = | 
| Account | hasPartnersBadge | Booleano | \$1=, = | 
| Account | manager | Booleano | \$1=, = | 
| Account | testAccount | Booleano | \$1=, = | 
| Account | data | Data | BETWEEN, =, <, >, <=, >= | 
| Account | costMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Account | acceptedCustomerDataTermini | Booleano |  | 
| Account | conversionTrackingStatus | Stringa | \$1=, =, LIKE | 
| Account | enhancedConversionsForLeadsEnabled | Booleano |  | 
| Account | googleAdsConversionCliente | Stringa |  | 
| Account | status | Stringa | \$1=, = | 
| Account | allConversionsByConversionDate | Double | \$1=, =, <, > | 
| Account | allConversionsValueByConversionDate | Double | \$1=, =, <, > | 
| Account | conversionsByConversionData | Double | \$1=, =, <, > | 
| Account | conversionsValueByConversionDate | Double | \$1=, =, <, > | 
| Account | valuePerAllConversionsByConversionDate | Double | \$1=, =, <, > | 
| Account | videoViews | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Account | clic | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Account | invalidClicks | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Account | costPerAllConversioni | Double | \$1=, =, <, > | 
| Account | costPerConversion | Double | \$1=, =, <, > | 
| Account | conversions | Double | \$1=, =, <, > | 
| Account | absoluteTopImpressionPercentuale | Double | \$1=, =, <, > | 
| Account | impression | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Account | topImpressionPercentage | Double | \$1=, =, <, > | 
| Account | averageCpc | Double | \$1=, =, <, > | 
| Account | activeViewMeasurableCostMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Account | averageCost | Double | \$1=, =, <, > | 
| Account | ctr | Double | \$1=, =, <, > | 
| Account | activeViewCtr | Double | \$1=, =, <, > | 
| Account | searchImpressionShare | Double | \$1=, =, <, > | 
| Account | conversionAction | Stringa | \$1=, = | 
| Account | conversionActionCategory | Stringa | \$1=, = | 
| Account | conversionActionName | Stringa | \$1=, =, LIKE | 
| Budget account | resourceName | Stringa | \$1=, = | 
| Budget account | status | Stringa | \$1=, = | 
| Budget account | proposedEndTimeTipo | Stringa | \$1=, = | 
| Budget account | approvedEndTimeTipo | Stringa | \$1=, = | 
| Budget account | id | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget account | billingSetup | Stringa | \$1=, = | 
| Budget account | nome | Stringa | \$1=, =, LIKE | 
| Budget account | approvedStartDateOra |  DateTime | BETWEEN, =, <, <=, >, >= | 
| Budget account | proposedSpendingLimitMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget account | approvedSpendingLimitMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget account | adjustedSpendingLimitMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget account | amountServedMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | resourceName | Stringa | \$1=, =, LIKE | 
| Gruppo di annunci | status | Stringa | \$1=, =, LIKE | 
| Gruppo di annunci | tipo | Stringa | \$1=, =, LIKE | 
| Gruppo di annunci | id | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | nome | Stringa | \$1=, =, LIKE | 
| Gruppo di annunci | campaign | Stringa | \$1=, = | 
| Gruppo di annunci | cpcBidMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | targetCpaMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | cpmBidMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | cpvBidMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | targetCpmMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | effectiveTargetCpaMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | data | Data | BETWEEN, =, <, >, <=, >= | 
| Gruppo di annunci | costMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | useAudienceGrouped | Booleano | \$1=, = | 
| Gruppo di annunci | effectiveCpcBidMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | allConversionsByConversionDate | Double | \$1=, =, <, > | 
| Gruppo di annunci | allConversionsValueByConversionDate | Double | \$1=, =, <, > | 
| Gruppo di annunci | conversionsByConversionData | Double | \$1=, =, <, > | 
| Gruppo di annunci | conversionsValueByConversionDate | Double | \$1=, =, <, > | 
| Gruppo di annunci | valuePerAllConversionsByConversionDate | Double | \$1=, =, <, > | 
| Gruppo di annunci | valuePerConversionsByConversionDate | Double | \$1=, =, <, > | 
| Gruppo di annunci | averageCost | Double | \$1=, =, <, > | 
| Gruppo di annunci | costPerAllConversioni | Double | \$1=, =, <, > | 
| Gruppo di annunci | costPerConversion | Double | \$1=, =, <, > | 
| Gruppo di annunci | averagePageViews | Double | \$1=, =, <, > | 
| Gruppo di annunci | videoViews | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | clic | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | allConversions | Double | \$1=, =, <, > | 
| Gruppo di annunci | averageCpc | Double | \$1=, =, <, > | 
| Gruppo di annunci | absoluteTopImpressionPercentuale | Double | \$1=, =, <, > | 
| Gruppo di annunci | impression | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Gruppo di annunci | topImpressionPercentage | Double | \$1=, =, <, > | 
| Gruppo di annunci | activeViewCtr | Double | \$1=, =, <, > | 
| Gruppo di annunci | ctr | Double | \$1=, =, <, > | 
| Gruppo di annunci | searchTopImpressionCondividere | Double | \$1=, =, <, > | 
| Gruppo di annunci | searchImpressionShare | Double | \$1=, =, <, > | 
| Gruppo di annunci | searchAbsoluteTopImpressionShare | Double | \$1=, =, <, > | 
| Gruppo di annunci | relativeCtr | Double | \$1=, =, <, > | 
| Gruppo di annunci | conversionAction | Stringa | \$1=, = | 
| Gruppo di annunci | conversionActionCategory | Stringa | \$1=, = | 
| Gruppo di annunci | conversionActionName | Stringa | \$1=, =, LIKE | 
| Gruppo di annunci | updateMask | Stringa |  | 
| Gruppo di annunci | creazione | Struct |  | 
| Gruppo di annunci | aggiorna | Struct |  | 
| Gruppo di annunci | primaryStatus | Stringa | \$1=, = | 
| Gruppo di annunci | primaryStatusReasons | List |  | 
| Annuncio gruppo di annunci | resourceName | Stringa | \$1=, = | 
| Annuncio gruppo di annunci | id | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Annuncio gruppo di annunci | status | Stringa | \$1=, = | 
| Annuncio gruppo di annunci | labels | List |  | 
| Annuncio gruppo di annunci | adGroup | Stringa | \$1=, = | 
| Annuncio gruppo di annunci | costMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Annuncio gruppo di annunci | approvalStatus | Stringa | \$1=, = | 
| Annuncio gruppo di annunci | reviewStatus | Stringa | \$1=, = | 
| Annuncio gruppo di annunci | adStrength | Stringa | \$1=, = | 
| Annuncio gruppo di annunci | tipo | Stringa | \$1=, = | 
| Annuncio gruppo di annunci | businessName | Stringa | \$1=, =, LIKE | 
| Annuncio gruppo di annunci | data | Data | BETWEEN, =, <, >, <=, >= | 
| Annuncio gruppo di annunci | allConversionsByConversionDate | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | allConversionsValueByConversionDate | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | conversionsByConversionData | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | conversionsValueByConversionDate | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | valuePerAllConversionsByConversionDate | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | valuePerConversionsByConversionDate | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | activeViewMeasurableCostMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Annuncio gruppo di annunci | averageCost | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | costPerAllConversioni | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | costPerConversion | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | clic | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Annuncio gruppo di annunci | averagePageViews | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | videoViews | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Annuncio gruppo di annunci | allConversions | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | averageCpc | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | topImpressionPercentage | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | impression | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Annuncio gruppo di annunci | absoluteTopImpressionPercentuale | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | activeViewCtr | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | ctr | Double | \$1=, =, <, > | 
| Annuncio gruppo di annunci | conversionAction | Stringa | \$1=, = | 
| Annuncio gruppo di annunci | conversionActionCategory | Stringa | \$1=, = | 
| Annuncio gruppo di annunci | conversionActionName | Stringa | \$1=, =, LIKE | 
| Annuncio gruppo di annunci | updateMask | Stringa |  | 
| Annuncio gruppo di annunci | creazione | Struct |  | 
| Annuncio gruppo di annunci | aggiorna | Struct |  | 
| Annuncio gruppo di annunci | policyValidationParameter | Struct |  | 
| Annuncio gruppo di annunci | primaryStatus | Stringa | \$1=, = | 
| Annuncio gruppo di annunci | primaryStatusReasons | List |  | 
| Campagna | resourceName | Stringa | \$1=, = | 
| Campagna | status | Stringa | \$1=, = | 
| Campagna | baseCampaign | Stringa | \$1=, = | 
| Campagna | nome | Stringa | \$1=, =, LIKE | 
| Campagna | id | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Campagna | campaignBudget | Stringa | \$1=, =, LIKE | 
| Campagna | startDate | Data | BETWEEN, =, <, >, <=, >= | 
| Campagna | endDate | Data | BETWEEN, =, <, >, <=, >= | 
| Campagna | adServingOptimizationStato | Stringa | \$1=, = | 
| Campagna | advertisingChannelType | Stringa | \$1=, = | 
| Campagna | advertisingChannelSubTipo | Stringa | \$1=, = | 
| Campagna | experimentType | Stringa | \$1=, = | 
| Campagna | servingStatus | Stringa | \$1=, = | 
| Campagna | biddingStrategyType | Stringa | \$1=, = | 
| Campagna | domainName | Stringa | \$1=, =, LIKE | 
| Campagna | languageCode | Stringa | \$1=, =, LIKE | 
| Campagna | useSuppliedUrlsSolo | Booleano | \$1=, = | 
| Campagna | positiveGeoTargetTipo | Stringa | \$1=, = | 
| Campagna | negativeGeoTargetTipo | Stringa | \$1=, = | 
| Campagna | paymentMode | Stringa | \$1=, = | 
| Campagna | optimizationGoalTypes | List |  | 
| Campagna | data | Data | BETWEEN, =, <, >, <=, >= | 
| Campagna | averageCost | Double |  | 
| Campagna | clic | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Campagna | costMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Campagna | impression | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Campagna | useAudienceGrouped | Booleano | \$1=, = | 
| Campagna | activeViewMeasurableCostMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Campagna | costPerAllConversioni | Double | \$1=, =, <, > | 
| Campagna | costPerConversion | Double | \$1=, =, <, > | 
| Campagna | invalidClicks | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Campagna | publisherPurchasedClicks | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Campagna | averagePageViews | Double | \$1=, =, <, > | 
| Campagna | videoViews | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Campagna | allConversionsByConversionDate | Double | \$1=, =, <, > | 
| Campagna | allConversionsValueByConversionDate | Double | \$1=, =, <, > | 
| Campagna | conversionsByConversionData | Double | \$1=, =, <, > | 
| Campagna | conversionsValueByConversionDate | Double | \$1=, =, <, > | 
| Campagna | valuePerAllConversionsByConversionDate | Double | \$1=, =, <, > | 
| Campagna | valuePerConversionsByConversionDate | Double | \$1=, =, <, > | 
| Campagna | allConversions | Double | \$1=, =, <, > | 
| Campagna | absoluteTopImpressionPercentuale | Double | \$1=, =, <, > | 
| Campagna | searchAbsoluteTopImpressionShare | Double | \$1=, =, <, > | 
| Campagna | averageCpc | Double | \$1=, =, <, > | 
| Campagna | searchImpressionShare | Double | \$1=, =, <, > | 
| Campagna | searchTopImpressionCondividere | Double | \$1=, =, <, > | 
| Campagna | activeViewCtr | Double | \$1=, =, <, > | 
| Campagna | ctr | Double | \$1=, =, <, > | 
| Campagna | relativeCtr | Double | \$1=, =, <, > | 
| Campagna | updateMask | Stringa |  | 
| Campagna | creazione | Struct |  | 
| Campagna | aggiorna | Struct |  | 
| Budget campagna | resourceName | Stringa | \$1=, = | 
| Budget campagna | id | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget campagna | status | Stringa | \$1=, = | 
| Budget campagna | deliveryMethod | Stringa | \$1=, = | 
| Budget campagna | punto | Stringa | \$1=, = | 
| Budget campagna | tipo | Stringa | \$1=, = | 
| Budget campagna | nome | Stringa | \$1=, =, LIKE | 
| Budget campagna | amountMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget campagna | explicitlyShared | Booleano | \$1=, = | 
| Budget campagna | referenceCount | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget campagna | hasRecommendedBudget | Booleano | \$1=, = | 
| Budget campagna | data | Data | BETWEEN, =, <, >, <=, >= | 
| Budget campagna | costMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget campagna | startDate | Data | BETWEEN, =, <, >, <=, >= | 
| Budget campagna | endDate | Data | BETWEEN, =, <, >, <=, >= | 
| Budget campagna | maximizeConversionValueTargetRoas | Double | \$1=, =, <, > | 
| Budget campagna | maximizeConversionsTargetCpaMicros | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget campagna | selectiveOptimizationConversionAzioni | Stringa |  | 
| Budget campagna | averageCost | Double | \$1=, =, <, > | 
| Budget campagna | costPerAllConversioni | Double | \$1=, =, <, > | 
| Budget campagna | costPerConversion | Double | \$1=, =, <, > | 
| Budget campagna | videoViews | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget campagna | clicks | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget campagna | allConversions | Double | \$1=, =, <, > | 
| Budget campagna | valuePerAllConversioni | Double | \$1=, =, <, > | 
| Budget campagna | averageCpc | Double | \$1=, =, <, > | 
| Budget campagna | impressions | BigInteger | BETWEEN, =, \$1=, <, >, <=, >= | 
| Budget campagna | ctr | Double | \$1=, =, <, > | 
| Budget campagna | updateMask | Stringa |  | 
| Budget campagna | creazione | Struct |  | 
| Budget campagna | aggiorna | Struct |  | 

 **Query di partizionamento** 

 Se si desidera utilizzare la simultaneità in Spark, possono essere fornite opzioni Spark `PARTITION_FIELD`, `LOWER_BOUND`, `UPPER_BOUND`, `NUM_PARTITIONS` aggiuntive. Con questi parametri, la query originale viene suddivisa in `NUM_PARTITIONS` query secondarie che possono essere eseguite contemporaneamente dalle attività Spark. 
+  `PARTITION_FIELD`: il nome del campo da utilizzare per partizionare la query. 
+  `LOWER_BOUND`: un valore limite inferiore inclusivo del campo di partizione scelto. 

   Per la data, accettiamo il formato di data di Spark utilizzato nelle query di Spark SQL. Esempio di valori validi: `"2024-02-06"`. 
+  `UPPER_BOUND`: un valore limite superiore esclusivo del campo di partizione scelto. 
+  `NUM_PARTITIONS`: numero di partizioni. 

 I dettagli di supporto del campo di partizionamento per entità sono riportati nella tabella seguente. 


| Nome entità | Campo di partizionamento | Tipo di dati | 
| --- | --- | --- | 
| Annuncio gruppo di annunci | data | Data | 
| Gruppo di annunci | data | Data | 
| Campagna | data | Data | 
| Budget campagna | data | Data | 

 **Esempio** 

```
googleads_read = glueContext.create_dynamic_frame.from_options(
    connection_type="googleads",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "campaign-3467***",
        "API_VERSION": "v16",
        "PARTITION_FIELD": "date"
        "LOWER_BOUND": "2024-01-01"
        "UPPER_BOUND": "2024-06-05"
        "NUM_PARTITIONS": "10"
    }
)
```

# Opzioni di connessione Google Ads
<a name="googleads-connection-options"></a>

Le seguenti sono le opzioni di connessione per Google Ads:
+  `ENTITY_NAME`(Stringa): (obbligatorio) utilizzato per la lettura/scrittura. Il nome del tuo oggetto in Google Ads. 
+  `API_VERSION`(Stringa): (obbligatorio) utilizzato per la lettura/scrittura. La versione dell'API Rest di Google Ads che desideri utilizzare. Esempio: v16. 
+  `DEVELOPER_TOKEN`(Stringa): (obbligatorio) utilizzato per la lettura/scrittura. Necessario per autenticare lo sviluppatore o l'applicazione che effettua richieste all'API. 
+  `MANAGER_ID`(Stringa): utilizzato per la lettura/scrittura. Un identificatore univoco che ti consente di gestire più account Google Ads. Questo è l'ID cliente del gestore autorizzato. Se l'accesso all'account cliente avviene tramite un account amministratore, `MANAGER_ID` è necessario. Per ulteriori informazioni, consulta [login-customer-id](https://developers.google.com/google-ads/api/docs/concepts/call-structure#cid). 
+  `SELECTED_FIELDS`(List<String>): predefinito: vuoto (SELECT \$1). Utilizzato per la lettura. Colonne da selezionare per l'oggetto. 
+  `FILTER_PREDICATE`(Stringa): predefinito: vuoto. Utilizzato per la lettura. Dev'essere in formato Spark SQL. 
+  `QUERY`(Stringa): predefinito: vuoto. Utilizzato per la lettura. Query Spark SQL completa. 
+  `PARTITION_FIELD`(Stringa): utilizzato per la lettura. Campo da utilizzare per partizionare la query. 
+  `LOWER_BOUND`(Stringa): utilizzato per la lettura. Un valore limite inferiore inclusivo del campo di partizione scelto. 
+  `UPPER_BOUND`(Stringa): utilizzato per la lettura. Un valore limite superiore esclusivo del campo di partizione scelto. 
+  `NUM_PARTITIONS`(Numero intero): predefinito: 1. Utilizzato per la lettura. Numero di partizioni da leggere. 

# Creazione di un account Google Ads
<a name="googleads-create-account"></a>

1.  Accedi all'[account sviluppatore Google Ads](https://console.cloud.google.com) con le tue credenziali e vai a\$1MyProject.   
![\[La schermata mostra la schermata di benvenuto per accedere all'account sviluppatore Google Ads.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/google-ads-log-in-developer-account.png)

1.  Scegli **Nuovo progetto** e fornisci le informazioni necessarie per creare il progetto Google se non hai alcuna applicazione registrata.   
![\[Lo screenshot mostra la pagina di selezione di un progetto. Scegli Nuovo progetto nell'angolo in alto a destra.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/google-ads-new-project.png)  
![\[La schermata mostra la finestra Nuovo progetto per inserire il nome di un progetto e scegliere una posizione.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/google-ads-new-project-name-location.png)

1.  Scegli la **scheda Navigazione**, quindi **API e impostazioni** e **Crea ID cliente**. Questa operazione **ClientSecret**richiederà un'ulteriore configurazione per la creazione di una connessione tra AWS Glue e GoogleAds. Per ulteriori informazioni, consulta [Credenziali API](https://console.cloud.google.com/apis/credentials).   
![\[La schermata mostra la pagina di configurazione APIs e dei servizi.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/google-ads-apis-and-services.png)

1.  Scegli **CREATE CREDENTIALS** e scegli l'ID **OAuth cliente**.   
![\[La schermata mostra la pagina di configurazione APIs e dei servizi con il menu a discesa Crea credenziali e l'opzione ID client Oauth evidenziata.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/google-ads-create-credentials.png)

1.  Seleziona il **Tipo di applicazione** come **Applicazione web**.   
![\[La schermata mostra la pagina Crea ID OAuth client e il tipo di applicazione come applicazione Web.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/google-ads-oauth-client-id-application-type.png)

1.  **In **Reindirizzamento autorizzato URIs**, aggiungi il OAuth reindirizzamento URIs e scegli Crea.** Se necessario, puoi aggiungere più reindirizzamenti URIs .   
![\[La schermata mostra la pagina Crea ID OAuth cliente e la sezione URIs Reindirizzamento autorizzato. Qui, aggiungi URIs e scegli AGGIUNGI URI se necessario. Al termine, scegliere CREA.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/google-ads-oauth-redirect-uris.png)

1.  **L'ID cliente** e il **segreto del cliente** verranno generati durante la creazione di una connessione tra AWS Glue e Google Ads.   
![\[La schermata mostra la pagina Crea ID OAuth cliente e la sezione Reindirizzamento URIs autorizzato. Qui, aggiungi URIs e scegli AGGIUNGI URI se necessario. Al termine, scegliere CREA.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/google-ads-oauth-client-created.png)

1.  Aggiungi gli ambiti in base alle esigenze della tua applicazione, scegli la **schermata di OAuth consenso** e fornisci le informazioni richieste e aggiungi gli ambiti in base ai requisiti.   
![\[Lo screenshot mostra la pagina di configurazione Aggiorna selezionati. Seleziona gli ambiti in base alle tue esigenze.\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/images/google-ads-selected-scopes.png)

# Limitazioni
<a name="googleads-connector-limitations"></a>

Di seguito sono riportate le limitazioni per il connettore di Google Ads.
+ `MANAGER_ID` è un input opzionale per la creazione di una connessione. Ma quando si desidera accedere ai clienti sottostanti a un particolare gestore, allora `MANAGER_ID` è un input obbligatorio. La tabella seguente spiega le limitazioni di accesso in base al fatto che `MANAGER_ID` sia incluso o meno in una connessione.    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/glue/latest/dg/googleads-connector-limitations.html)
+ Quando si sceglie un account amministratore come oggetto, `Account` verrà visualizzato solo come oggetto secondario. Nel connettore Google Ads, entità come campagne, annunci e così via vengono recuperate in base ai singoli account cliente, non all'account amministratore.
+ Non puoi recuperare le metriche per l'account amministratore. Puoi invece recuperare le metriche per i singoli account cliente.
+  Ogni account può avere fino a 10.000 campagne, comprese quelle attive e quelle in pausa. Per ulteriori informazioni, consulta l'argomento relativo alle [campagne per account](https://support.google.com/google-ads/answer/6372658). 
+  Quando crei un rapporto, se scegli determinate metriche da visualizzare, le righe le cui metriche selezionate sono tutte pari a zero non verranno restituite. Per ulteriori informazioni, consulta [Zero Metrics ](https://developers.google.com/google-ads/api/docs/reporting/zero-metrics?hl=en#exclude_zero_metrics_by_segmenting). 
+  Con i seguenti campi, il flusso di mappatura completa non funzionerà per le entità Account, Ad Group e Ad Group Ad, in particolare per ConversionAction,. conversionActionCategory conversionActionName Per ulteriori informazioni, consulta [ Segmenti e metriche ](https://developers.google.com/google-ads/api/docs/reporting/segmentation?hl=en#selectability_between_segments_and_metrics). 
+ Un filtro per intervallo di date è obbligatorio quando il campo `segments.date` è selezionato.