Una caratteristica importante di BatchJobService
è che
supporta l'uso di ID temporanei.
Puoi farlo specificando il valore resource_name
della nuova risorsa per utilizzare un
ID negativo. Ad esempio, se crei una campagna e ne specifichi il nome risorsa
come customers/<YOUR_CUSTOMER_ID>/campaigns/-1
, quando crei
gruppo di annunci in un'operazione successiva, potrai farvi riferimento
con il nome della risorsa e
il valore -1
specificato verrà sostituito dall'ID effettivo della campagna creata
automaticamente.
Di seguito sono riportati alcuni aspetti da tenere presente quando utilizzi i nomi temporanei delle risorse:
- Un nome risorsa temporaneo può essere utilizzato solo dopo essere stato definito in un risorsa. Nell'esempio riportato di seguito, l'operazione relativa al gruppo di annunci dovrebbe essere nell'elenco delle operazioni dopo l'operazione.
- I nomi delle risorse temporanee non vengono memorizzati nei job né nelle richieste di modifica; per fare riferimento a una risorsa creata in un job precedente o modificare una richiesta, utilizza la sua del nome effettivo della risorsa.
- Per un singolo job o una richiesta di modifica, ogni nome di risorsa temporanea deve utilizzare un numero negativo univoco, anche se provengono da tipi di risorse diversi. Se un ID temporaneo viene riutilizzato in un singolo job o in una richiesta di modifica, viene generato un errore viene restituito.
Esempio
Per fornire un esempio più concreto alla situazione sopra menzionata, supponi di Vuoi aggiungere una campagna, un gruppo di annunci e un annuncio in una singola richiesta API. Tu creerebbe una struttura per la tua richiesta analoga alla seguente:
mutate_operations: [
{
campaign_operation: {
create: {
resource_name: "customers/<YOUR_CUSTOMER_ID>/campaigns/-1",
...
}
}
},
{
ad_group_operation: {
create: {
resource_name: "customers/<YOUR_CUSTOMER_ID>/adGroups/-2",
campaign: "customers/<YOUR_CUSTOMER_ID>/campaigns/-1"
...
}
}
},
{
ad_group_ad_operation: {
create: {
ad_group: "customers/<YOUR_CUSTOMER_ID>/adGroups/-2"
...
}
}
},
]
Tieni presente che viene utilizzato un nuovo ID temporaneo per il gruppo di annunci, in quanto non possiamo riutilizzarlo
i -1
che abbiamo utilizzato per la campagna; facciamo riferimento anche a questo gruppo di annunci quando
creando un annuncio del gruppo di annunci. Lo stesso gruppo di annunci fa riferimento al nome della risorsa
per la campagna in un'operazione precedente nella richiesta, mentre
resource_name
in ad_group_ad_operation
non è necessario perché non serve
operativa vi fa riferimento.