Method: customers.googleAds.mutate

Crea, aggiorna o rimuove risorse. Questo metodo supporta le transazioni atomiche con più tipi di risorse. Ad esempio, puoi creare a livello atomico una campagna e un budget della campagna o eseguire fino a migliaia di modifiche a livello atomico.

Questo metodo è essenzialmente un wrapper attorno a una serie di metodi mutati. Le uniche funzionalità che offre rispetto alle chiamate dirette a questi metodi sono:

  • Transazioni atomiche
  • Nomi delle risorse temporanee (descritti di seguito)
  • Latenza leggermente ridotta rispetto a una serie di chiamate di modifica

Nota: sono incluse solo le risorse che supportano le transazioni atomiche, quindi questo metodo non può sostituire tutte le chiamate ai singoli servizi.

Vantaggi delle transazioni Atomic

L'Atomicità semplifica la gestione degli errori. Se stai apportando una serie di modifiche e una non funziona, l'account potrebbe avere uno stato incoerente. Con l'atomicità, raggiungi direttamente lo stato scelto o la richiesta non va a buon fine e puoi riprovare.

Nomi risorse temporanee

I nomi delle risorse temporanee sono un tipo speciale di nome della risorsa utilizzato per creare una risorsa e farvi riferimento nella stessa richiesta. Ad esempio, se il budget di una campagna viene creato con resourceName uguale a customers/123/campaignBudgets/-1, il nome della risorsa può essere riutilizzato nel campo Campaign.budget della stessa richiesta. In questo modo, le due risorse vengono create e collegate a livello atomico.

Per creare un nome di risorsa temporanea, inserisci un numero negativo nella parte del nome che il server allocherebbe normalmente.

Nota:

  • Le risorse devono essere create con un nome temporaneo prima che il nome possa essere riutilizzato. Ad esempio, l'esempio precedente di Campagna +Budget non avrebbe avuto esito positivo se l'ordine di modifica venisse invertito.
  • I nomi temporanei non vengono memorizzati nelle richieste.
  • Non esiste un limite al numero di nomi temporanei in una richiesta.
  • Ogni nome temporaneo deve utilizzare un numero negativo univoco, anche se i tipi di risorsa sono diversi.

Latenza

È importante modificare le modifiche del gruppo in base al tipo di risorsa, altrimenti la richiesta potrebbe scadere e non essere completata. La latenza è più o meno uguale a una serie di chiamate a singoli metodi di modifica, in cui ogni modifica nel tipo di risorsa è una nuova chiamata. Ad esempio, la modifica di 10 campagne e 10 gruppi di annunci equivale a 2 chiamate, mentre la modifica di 1 campagna, 1 gruppo di annunci, 1 campagna e 1 gruppo di annunci equivale a 4 chiamate.

{/5Error1{/5Error1{/11{/11estr.{/11e selezionata[Nomedll{/11e.{/17e{/11e{/17eEd[ecke[{/15e{/17e{/11e{/12{/1eDiestereedeedecke[del selezionatodell'errore{/17edi'eckecke[dell'euroedisat.discke[dell'euroe[del_delldell'addestramento] di {CampaignError1dis.discode.AdCustomizerErrorAdErrorAdGroupAdErrorAdGroupCriterionErrorAdGroupErrorAuthenticationErrorAuthorizationErrorCampaignBudgetErrorCampaignCriterionErrorCampaignErrorCampaignExperimentErrorCampaignSharedSetErrorCollectionSizeErrorContextErrorConversionActionErrorCriterionErrorCustomerFeedErrorDatabaseErrorDateErrorDateRangeErrorDistinctErrorExtensionFeedItemErrorExtensionSettingErrorFeedAttributeReferenceErrorFeedErrorFeedItemErrorFeedItemSetErrorFieldErrorFieldMaskErrorFunctionParsingErrorHeaderErrorImageErrorInternalErrorKeywordPlanAdGroupKeywordErrorKeywordPlanCampaignErrorKeywordPlanErrorLabelErrorListOperationErrorMediaUploadErrorMutateErrorNewResourceCreationErrorNullErrorOperationAccessDeniedErrorPolicyFindingErrorPolicyViolationErrorQuotaErrorRangeErrorRequestErrorResourceCountLimitExceededErrorSettingErrorSharedSetErrorSizeLimitErrorStringFormatErrorStringLengthErrorUrlFieldErrorUserListErrorYoutubeVideoRegistrationError

Richiesta HTTP

POST https://googleads.googleapis.com/v16/customers/{customerId}/googleAds:mutate

L'URL utilizza la sintassi di transcodifica gRPC.

Parametri del percorso

Parametri
customerId

string

obbligatorio. L'ID del cliente le cui risorse vengono modificate.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "mutateOperations": [
    {
      object (MutateOperation)
    }
  ],
  "partialFailure": boolean,
  "validateOnly": boolean,
  "responseContentType": enum (ResponseContentType)
}
Campi
mutateOperations[]

object (MutateOperation)

obbligatorio. L'elenco delle operazioni da eseguire sulle singole risorse.

partialFailure

boolean

Se il valore è true, le operazioni andate a buon fine vengono eseguite e le operazioni non valide restituiranno errori. Se il valore è false, tutte le operazioni verranno eseguite in una sola transazione se e solo se sono tutte valide. Il valore predefinito è false.

validateOnly

boolean

Se il valore è true, la richiesta viene convalidata ma non eseguita. Vengono restituiti solo gli errori, non i risultati.

responseContentType

enum (ResponseContentType)

L'impostazione del tipo di contenuti della risposta. Determina se la risorsa mutabile o solo il nome della risorsa deve essere restituito dopo la modifica. La risorsa mutabile viene restituita solo se la risorsa dispone del campo di risposta appropriato. ad esempio MutateCampaignResult.campaign.

Corpo della risposta

Messaggio di risposta per GoogleAdsService.Mutate.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "partialFailureError": {
    object (Status)
  },
  "mutateOperationResponses": [
    {
      object (MutateOperationResponse)
    }
  ]
}
Campi
partialFailureError

object (Status)

Errori relativi agli errori delle operazioni in modalità di errore parziale. Restituito solo quando incompleteFailure = true e tutti gli errori si verificano all'interno delle operazioni. Se si verificano errori al di fuori delle operazioni (ad esempio, errori di autenticazione), restituiamo un errore a livello di RPC.

mutateOperationResponses[]

object (MutateOperationResponse)

Tutte le risposte per la mutazione.

Ambiti di autorizzazione

Richiede il seguente ambito OAuth:

  • https://www.googleapis.com/auth/adwords

Per ulteriori informazioni, consulta la pagina Panoramica di OAuth 2.0.