Die meisten Google Ads-Entitäten haben eine getId()
-Methode, die ihre Kennung zurückgibt. In den meisten Fällen sind IDs nicht unbedingt erforderlich, können aber nützlich sein, wenn
- Mit Berichten arbeiten
- Mithilfe von IDs lässt sich eine Berichtszeile gut mit der tatsächlichen Google Ads-Einheit verknüpfen.
- Zuordnung mit einem externen Datenspeicher verwalten
- Möglicherweise haben Sie bereits ID-basierte Informationen in Ihrer eigenen Datenbank gespeichert.
- Beim Versuch, die Leistung zu steigern
Das Abrufen nach IDs geht häufig schneller als alternative Vorgehensweisen. Der Code zum Abrufen einer einzelnen Entität ist ebenfalls etwas einfacher:
let campaigns = AdsApp.campaigns() .withIds([678678]) .get(); // versus let campaigns = AdsApp.campaigns() .withCondition("Name='My Campaign'") .get();
Eindeutigkeit
Kampagnen-IDs und Anzeigengruppen-IDs sind eindeutig. Zwei Kampagnen oder Anzeigengruppen haben niemals dieselbe ID. Anzeigen und Keywords haben jedoch zusammengesetzte IDs: Die eindeutige ID eines Keywords ist eine Kombination aus der Anzeigengruppen-ID und der Keyword-ID.
Eine eindeutige Kennung für eine Anzeige ist eine Kombination aus ihrer Anzeigengruppen-ID und Anzeigen-ID. Dies hat Auswirkungen auf die Art und Weise, wie selector.withIds()
aufgerufen wird.
Für Kampagnen und Anzeigengruppen erwartet selector.withIds()
ein Array von Zahlen:
let ids = [123123, 234234, 345345];
let campaignSelector = AdsApp.campaigns().withIds(ids);
Für Anzeigen und Keywords benötigt selector.withIds()
jedoch ein Array mit Arrays mit zwei Elementen, wobei das erste Element die Anzeigengruppen-ID ist. Im folgenden Snippet werden drei Keywords aus einer Anzeigengruppe abgerufen:
let adGroupId = 123123;
let keywordSelector = AdsApp.keywords().withIds([
[adGroupId, 234234],
[adGroupId, 345345],
[adGroupId, 456456]
]);
Dasselbe Konstrukt gilt beim Abrufen von Anzeigen.
Temporäre IDs
Wenn Sie mit einer Mutate-Anfrage mit mehreren Vorgängen arbeiten, müssen Sie gelegentlich temporäre IDs verwenden, um Ressourcen miteinander zu verknüpfen, da die vollständigen Ressourcennamen erst verfügbar sind, wenn Sie die API-Antwort erhalten. Temporäre IDs müssen negative Zahlen sein, die mit -1 beginnen und sich nicht innerhalb derselben Mutate-Anfrage wiederholen dürfen. Damit Sie temporäre IDs effektiv nutzen können, müssen Sie Code schreiben, um zu verhindern, dass doppelte temporäre IDs erstellt werden:
let nextId = -1;
function getNextTempId() {
const ret = nextId;
nextId -= 1;
return ret;
}
Bei jedem nachfolgenden Aufruf von getNextTempId
wird eine Zahl zurückgegeben, die um eins kleiner ist als die vorherige. Da alle temporären IDs negativ sein müssen, beginnen Sie mit -1.
Temporäre IDs werden nicht job- oder mutationsübergreifend gespeichert. Verwenden Sie den tatsächlichen Ressourcennamen, um auf eine Ressource zu verweisen, die in einer vorherigen Mutate-Anfrage erstellt wurde.