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 di campagna oppure effettuare fino a migliaia di mutazioni a livello atomico.

Questo metodo è essenzialmente un involucro attorno a una serie di metodi mutati. Le uniche funzionalità che offre rispetto alla chiamata diretta a questi metodi sono:

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

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 è andata a buon fine, il tuo account potrebbe rimanere in uno stato incoerente. Con l'atomicità, raggiungi direttamente lo stato scelto oppure la richiesta non va a buon fine e puoi riprovare.

Nomi risorse temporanee

I nomi di risorse temporanee sono un tipo speciale di nome di 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 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, il precedente esempio CampaignBudget+Campagna non riuscirebbe se l'ordine di modifica fosse 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 risorse sono diversi.

Latenza

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

{12eError}Error11{/111ErroreAuthorizationErrorErrore AuthorizationError BiddingError CampaignBudgetError CampaignCriterionErrorAdCustomizerErrorAdErrorAdGroupAdErrorAdGroupCriterionErrorAdGroupErrorCampaignErrorCampaignExperimentErrorCampaignSharedSetErrorCollectionSizeErrorContextErrorConversionActionErrorCriterionErrorCustomerFeedErrorDatabaseErrorDateErrorDateRangeErrorDistinctErrorExtensionFeedItemErrorExtensionSettingErrorFeedAttributeReferenceErrorFeedErrorFeedItemErrorFeedItemSetErrorFieldErrorFieldMaskErrorFunctionParsingErrorHeaderErrorImageErrorInternalErrorKeywordPlanAdGroupKeywordErrorKeywordPlanCampaignErrorKeywordPlanErrorLabelErrorListOperationErrorMediaUploadErrorMutateErrorNewResourceCreationErrorNullErrorOperationAccessDeniedErrorPolicyFindingErrorPolicyViolationErrorQuotaErrorRangeErrorRequestErrorResourceCountLimitExceededErrorSettingErrorSharedSetErrorSizeLimitErrorStringFormatErrorStringLengthErrorUrlFieldErrorUserListErrorYoutubeVideoRegistrationError

Richiesta HTTP

POST https://googleads.googleapis.com/v14/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 di operazioni da eseguire sulle singole risorse.

partialFailure

boolean

Se il valore è true, le operazioni riuscite verranno eseguite e quelle non valide restituiranno errori. Se impostato su false, tutte le operazioni verranno eseguite in un'unica transazione 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 modificabile o solo il nome della risorsa deve essere restituito dopo la mutazione. La risorsa modificabile verrà 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 a errori delle operazioni in modalità di errore parziale. Errore restituito solo quando partialFailure = 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, verrà restituito 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 Panoramica di OAuth 2.0.