La maggior parte delle entità Google Ads espone un metodo getId() che restituisce il relativo identificatore. Anche se nella maggior parte dei casi non è strettamente necessario, gli ID possono essere utili quando
- Si lavora con report
- Gli ID forniscono un buon modo per collegare una riga del report all'entità Google Ads effettiva.
- Si gestisce un mapping con un datastore esterno
- Potresti già avere informazioni basate sull'ID memorizzate nel tuo database.
- Si cerca un piccolo aumento di prestazioni
Il recupero per ID è spesso più rapido rispetto alle alternative. Anche il codice per recuperare una singola entità è un po' più semplice:
let campaigns = AdsApp.campaigns() .withIds([678678]) .get(); // versus let campaigns = AdsApp.campaigns() .withCondition("Name='My Campaign'") .get();
Unicità
Gli ID campagna e gli ID gruppo di annunci sono univoci: non ci saranno mai due campagne o gruppi di annunci con lo stesso ID. Tuttavia, gli annunci e le parole chiave hanno ID compositi: un identificatore univoco di una parola chiave è una combinazione del relativo ID gruppo di annunci e ID parola chiave.
Allo stesso modo, un identificatore univoco di un annuncio è una combinazione del relativo ID gruppo di annunci e ID annuncio. Ciò ha implicazioni per il modo in cui viene chiamato selector.withIds().
Per le campagne e i gruppi di annunci, selector.withIds() prevede un array di numeri:
let ids = [123123, 234234, 345345];
let campaignSelector = AdsApp.campaigns().withIds(ids);
Per gli annunci e le parole chiave, invece, selector.withIds() richiede un array di array di due elementi, il primo dei quali è l'ID gruppo di annunci. Il seguente snippet recupera tre parole chiave da un gruppo di annunci:
let adGroupId = 123123;
let keywordSelector = AdsApp.keywords().withIds([
[adGroupId, 234234],
[adGroupId, 345345],
[adGroupId, 456456]
]);
La stessa struttura si applica quando si recuperano gli annunci.
ID temporanei
Quando lavori con una richiesta di modifica con più operazioni, a volte dovrai utilizzare ID temporanei per collegare le risorse tra loro, poiché i nomi completi delle risorse non saranno disponibili fino a quando non riceverai la risposta dell'API. Gli ID temporanei devono essere numeri negativi che iniziano con -1 e non possono ripetersi nella stessa richiesta di modifica. Per utilizzare gli ID temporanei in modo efficace, dovrai scrivere del codice per assicurarti di non creare ID temporanei duplicati:
let nextId = -1;
function getNextTempId() {
const ret = nextId;
nextId -= 1;
return ret;
}
Ogni chiamata successiva a getNextTempId restituirà un numero inferiore di uno rispetto al precedente. Poiché tutti gli ID temporanei devono essere negativi, inizia da -1.
Gli ID temporanei non vengono memorizzati tra i job o le richieste di modifica. Per fare riferimento a una risorsa creata in una richiesta di modifica precedente, utilizza il relativo nome risorsa effettivo.