Zeitpläne-Endpunkt
Zeitpläne sind ein Tool, mit dem Batch-Segmentierungsvorgänge automatisch einmal täglich ausgeführt werden können. Sie können den /config/schedules-Endpunkt verwenden, um eine Liste von Zeitplänen abzurufen, einen neuen Zeitplan zu erstellen, Details zu einem bestimmten Zeitplan abzurufen, einen bestimmten Zeitplan zu aktualisieren oder einen bestimmten Zeitplan zu löschen.
Erste Schritte
Die in diesem Handbuch verwendeten Endpunkte sind Teil der Adobe Experience Platform Segmentation Service-API. Bevor Sie fortfahren, lesen Sie den Abschnitt Erste Schritte. Dort erhalten Sie wichtige Informationen darüber, wie Sie die API aufrufen und die erforderlichen Kopfzeilen sowie Beispiele für API-Aufrufe lesen können.
Abrufen einer Liste von Zeitplänen retrieve-list
Sie können eine Liste aller Zeitpläne für Ihre Organisation abrufen, indem Sie eine GET-Anfrage an den /config/schedules-Endpunkt stellen.
API-Format
Der /config/schedules-Endpunkt unterstützt verschiedene Abfrageparameter, mit denen Sie Ihre Ergebnisse filtern können. Obwohl diese Parameter optional sind, wird ihre Verwendung dringend empfohlen, um kostspieligen Aufwand zu reduzieren. Wenn Sie diesen Endpunkt ohne Parameter aufrufen, werden alle für Ihre Organisation verfügbaren Zeitpläne abgerufen. Es können mehrere Parameter eingeschlossen werden, die durch kaufmännische Und-Zeichen (&) voneinander getrennt werden.
GET /config/schedules
GET /config/schedules?{QUERY_PARAMETERS}
Abfrageparameter
| table 0-row-3 1-row-3 2-row-3 | ||
|---|---|---|
| Parameter | Beschreibung | Beispiel |
start |
Gibt an, von welcher Seite der Offset beginnt. Der Standardwert ist 0. | start=5 |
limit |
Gibt die Anzahl der Zeitpläne an, die zurückgegeben werden. Der Standardwert ist 100. | limit=20 |
Anfrage
Mit der folgenden Anfrage werden die letzten zehn in Ihrer Organisation veröffentlichten Zeitpläne abgerufen.
| code language-shell |
|---|
|
Antwort
Bei einer erfolgreichen Antwort wird der HTTP-Status 200 mit einer Liste von Zeitplänen für die angegebene Organisation als JSON zurückgegeben.
| code language-json |
|---|
|
| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 10-row-2 11-row-2 12-row-2 13-row-2 14-row-2 15-row-2 | |
|---|---|
| Eigenschaft | Beschreibung |
_page.totalCount |
Die Gesamtzahl der zurückgegebenen Zeitpläne. |
_page.pageSize |
Die Größe der Zeitplanseite. |
children.id |
Die ID des Zeitplans. |
children.imsOrgId |
Die Organisations-ID des Zeitplans. |
children.sandbox |
Ein Objekt mit Sandbox-Informationen für den Zeitplan. |
children.name |
Der Name des Zeitplans als Zeichenfolge. |
children.state |
Eine Zeichenfolge, die den Status des Zeitplans enthält. Die beiden unterstützten Status sind „aktiv“ und „inaktiv“. Standardmäßig ist der Status auf „inaktiv“ festgelegt. |
children.type |
Der Typ des Auftrags als Zeichenfolge. Unterstützt werden die Typen batch_segmentation und export. |
children.schedule |
Eine Zeichenfolge, die den Auftragsplan enthält. Aufträge können nur für die Ausführung einmal täglich geplant werden, d. h., Sie können nicht festlegen, dass ein Auftrag innerhalb eines Zeitraums von 24 Stunden mehrmals ausgeführt wird. Weitere Informationen zu Cron-Zeitplänen finden Sie im Anhang zum Cron-Ausdrucksformat. In diesem Beispiel bedeutet “0 0 1 * *”, dass dieser Zeitplan jeden Tag um 1 Uhr morgens ausgeführt wird. |
children.frequency |
Die Häufigkeit, mit der der Zeitplan ausgeführt wird. Zu den möglichen Werten gehören daily, weekly, monthly und yearly. |
children.properties |
Ein Objekt, das zusätzliche Eigenschaften im Zusammenhang mit dem Zeitplan enthält. |
children.properties.segments |
Die IDs der Segmentdefinitionen, die zum Zeitplan gehören. |
children.owner |
Der Besitzer des Zeitplans. Zu den möglichen Werten gehören user, ob der Zeitplan vom Benutzer erstellt wird, und system, ob der Zeitplan vom System erstellt wird. |
children.createEpoch |
Die Epochenerstellungszeit für den Zeitplan in Sekunden. |
children.updateEpoch |
Die Epochenzeit, zu der der Zeitplan zuletzt aktualisiert wurde, in Sekunden. |
Erstellen neuer Zeitpläne create
Sie können einen neuen Zeitplan erstellen, indem Sie eine POST-Anfrage an den Endpunkt /config/schedules senden.
API-Format
POST /config/schedules
Anfrage
| code language-shell |
|---|
|
| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 | |
|---|---|
| Eigenschaft | Beschreibung |
name |
Erforderlich. Der Name des Zeitplans als Zeichenfolge. |
type |
Erforderlich. Der Typ des Auftrags als Zeichenfolge. Unterstützt werden die Typen batch_segmentation und export. |
properties |
Erforderlich. Ein Objekt, das zusätzliche Eigenschaften im Zusammenhang mit dem Zeitplan enthält. |
properties.segments |
Erforderlich, wenn type gleich „batch_segmentation“ ist. Die IDs der Segmentdefinitionen, die Sie als Teil des Zeitplans einbeziehen möchten. |
schedule |
Erforderlich. Eine Zeichenfolge, die den Auftragsplan enthält. Aufträge können nur für die Ausführung einmal täglich geplant werden, d. h., Sie können nicht festlegen, dass ein Auftrag innerhalb eines Zeitraums von 24 Stunden mehrmals ausgeführt wird. Die Auftragsplanung bestimmt die Häufigkeit des Zeitplans. Weitere Informationen zu Cron-Zeitplänen finden Sie im Anhang zum Cron-Ausdrucksformat. In diesem Beispiel bedeutet “0 0 1 * *”, dass dieser Zeitplan jeden Tag um 1 Uhr morgens ausgeführt wird. |
state |
optional. Eine Zeichenfolge, die den Status des Zeitplans enthält. Unterstützt werden die Status active und inactive. Standardmäßig lautet der Status inactive. |
Antwort
Eine erfolgreiche Antwort gibt den HTTP-Status-Code 200 mit Details zum von Ihnen neu erstellten Zeitplan zurück.
| code language-json |
|---|
|
| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 10-row-2 11-row-2 12-row-2 13-row-2 14-row-2 15-row-2 16-row-2 | |
|---|---|
| Eigenschaft | Beschreibung |
id |
Die ID des neu erstellten Zeitplans. |
imsOrgId |
Die Organisations-ID des Benutzers, der den Zeitplan erstellt hat. |
sandbox |
Ein Objekt, das die Sandbox-Informationen für den Zeitplan enthält. Weitere Informationen zu Sandboxes finden Sie unter Sandbox-Übersicht. |
sandbox.sandboxId |
Die ID der Sandbox, die Ihren Zeitplan enthält. |
sandbox.sandboxName |
Der Name der Sandbox, die Ihren Zeitplan enthält. |
sandbox.type |
Der Typ der Sandbox. Mögliche Werte sind production und development. |
sandbox.default |
Ein boolescher Wert, der anzeigt, ob die Sandbox die Standard-Sandbox ist oder nicht. |
name |
Der Name, den Sie dem Zeitplan gegeben haben. |
state |
Der Status des Zeitplans. Mögliche Werte sind active und inactive. Wenn Sie dies nicht als Teil des Anfragetexts festgelegt haben, wird der Status auf inactive festgelegt. |
type |
Der Vorgangstyp für den Zeitplan. Mögliche Werte sind batch_segmentation und export. |
schedule |
Der Cron-Ausdruck, der für die Ausführung des Zeitplans steht. Weitere Informationen zum Erstellen von Cron-Ausdrücken finden Sie im Abschnitt Cron-Ausdrucksformat. |
frequency |
Die Häufigkeit, mit der der Zeitplan ausgeführt wird. Dies hängt direkt vom Cron-Ausdruck des Zeitplans ab. Zu den möglichen Werten gehören daily, weekly, monthly und yearly. |
properties |
Ein Objekt, das die Segmentdefinitions-IDs für den Zeitplan enthält, wenn der Zeitplan vom batch_segmentation Typ ist. |
owner |
Der Typ der Entität, der der Zeitplan gehört. Da Sie den Zeitplan erstellt haben, ist dieser Wert user. |
createEpoch |
Die Epochenerstellungszeit für den Zeitplan in Sekunden. |
updateEpoch |
Die Epochenzeit, zu der der Zeitplan zuletzt aktualisiert wurde, in Sekunden. |
Abrufen einzelner Zeitpläne get
Sie können detaillierte Informationen zu einem bestimmten Zeitplan abrufen, indem Sie eine GET-Anfrage an den /config/schedules-Endpunkt senden und im Anfragepfad die Kennung des Zeitplans angeben, den Sie abrufen möchten.
API-Format
GET /config/schedules/{SCHEDULE_ID}
{SCHEDULE_ID}id Wert des Zeitplans, den Sie abrufen möchten.Anfrage
| code language-shell |
|---|
|
Antwort
Eine erfolgreiche Antwort gibt den HTTP-Status-Code 200 mit Details zum angegebenen Zeitplan zurück.
| code language-json |
|---|
|
| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 5-row-2 6-row-2 7-row-2 8-row-2 9-row-2 10-row-2 11-row-2 12-row-2 13-row-2 14-row-2 15-row-2 16-row-2 17-row-2 | |
|---|---|
| Eigenschaft | Beschreibung |
id |
Die ID des Zeitplans. |
imsOrgId |
Die ID der Organisation, zu der der Zeitplan gehört. |
sandbox |
Ein Objekt, das die Sandbox-Informationen für den Zeitplan enthält. Weitere Informationen zu Sandboxes finden Sie unter Sandbox-Übersicht. |
sandbox.sandboxId |
Die ID der Sandbox, die Ihren Zeitplan enthält. |
sandbox.sandboxName |
Der Name der Sandbox, die Ihren Zeitplan enthält. |
sandbox.type |
Der Typ der Sandbox. Mögliche Werte sind production und development. |
sandbox.default |
Ein boolescher Wert, der anzeigt, ob die Sandbox die Standard-Sandbox ist oder nicht. |
name |
Der Name des Zeitplans als Zeichenfolge. |
state |
Eine Zeichenfolge, die den Status des Zeitplans enthält. Unterstützt werden die Status active und inactive. Standardmäßig lautet der Status inactive. |
type |
Der Typ des Auftrags als Zeichenfolge. Unterstützt werden die Typen batch_segmentation und export. |
schedule |
Eine Zeichenfolge, die den Auftragsplan enthält. Aufträge können nur einmal pro Tag ausgeführt werden, d. h., Sie können einen Auftrag nicht so planen, dass er während eines Zeitraums von 24 Stunden mehr als einmal ausgeführt wird. Weitere Informationen zu Cron-Zeitplänen finden Sie im Anhang zum Cron-Ausdrucksformat. In diesem Beispiel bedeutet “0 0 1 * *”, dass dieser Zeitplan jeden Tag um 1 Uhr morgens ausgeführt wird. |
frequency |
Die Häufigkeit, mit der der Zeitplan ausgeführt wird. Dieser Wert hängt direkt vom Cron-Ausdruck des Zeitplans ab. Zu den möglichen Werten gehören daily, weekly, monthly und yearly. |
properties |
Ein Objekt, das zusätzliche Eigenschaften im Zusammenhang mit dem Zeitplan enthält. |
properties.segments |
Die Liste der Segmentdefinitions-IDs, die Teil des Zeitplans sind. |
owner |
Der Typ der Entität, der der Zeitplan gehört. Wenn ein(e) Benutzende® den Zeitplan erstellt hat, wird dieser Wert user. Wenn es sich bei dem Zeitplan um einen vom System erstellten Zeitplan handelte, wird dieser Wert system. |
createEpoch |
Die Epochenerstellungszeit für den Zeitplan in Sekunden. |
updateEpoch |
Die Epochenzeit, zu der der Zeitplan zuletzt aktualisiert wurde, in Sekunden. |
Aktualisieren von Details für einen bestimmten Zeitplan update
Sie können einen bestimmten Zeitplan aktualisieren, indem Sie eine PATCH-Anfrage an den /config/schedules-Endpunkt senden und im Anfragepfad die ID des Zeitplans angeben, den Sie aktualisieren möchten.
Mit der PATCH-Anfrage können Sie entweder den state oder den cron-Zeitplan für einen einzelnen Zeitplan aktualisieren.
API-Format
PATCH /config/schedules/{SCHEDULE_ID}
{SCHEDULE_ID}id Wert des Zeitplans, den Sie aktualisieren möchten.Sie können einen JSON-Patch-Vorgang verwenden, um den Status des Zeitplans zu aktualisieren. Um den Status zu aktualisieren, deklarieren Sie die path-Eigenschaft als /state und legen die value entweder auf active oder inactive fest. Weitere Informationen zu JSON-Patch-Vorgängen finden Sie in der Dokumentation JSON-Patch.
Anfrage
| accordion | ||
|---|---|---|
| Eine Beispielanfrage zum Aktualisieren des Zeitplanstatus. | ||
|
| table 0-row-2 1-row-2 2-row-2 | |
|---|---|
| Eigenschaft | Beschreibung |
path |
Der Pfad des Werts, den Sie ändern möchten. Da Sie in diesem Fall den Status des Zeitplans aktualisieren, müssen Sie den Wert von path auf "/state“ festlegen. |
value |
Der aktualisierte Wert des Status des Zeitplans. Dieser Wert kann entweder als „aktiv“ oder „inaktiv“ festgelegt werden, um den Zeitplan zu aktivieren oder zu deaktivieren. Beachten Sie, Sie einen Zeitplan können, wenn die Organisation für Streaming aktiviert wurde. |
Antwort
Bei erfolgreicher Antwort wird der HTTP-Status-Code 204 (kein Inhalt) zurückgegeben.
path-Eigenschaft als /schedule und legen Sie den value auf einen gültigen Cron-Zeitplan fest. Weitere Informationen zu JSON-Patch-Vorgängen finden Sie in der Dokumentation JSON-Patch. Weitere Informationen zu Cron-Zeitplänen finden Sie im Anhang zum Cron-Ausdrucksformat.Anfrage
| code language-shell |
|---|
|
| table 0-row-2 1-row-2 2-row-2 | |
|---|---|
| Eigenschaft | Beschreibung |
path |
Der Pfad des Werts, den Sie aktualisieren möchten. Da Sie in diesem Fall den Cron-Zeitplan aktualisieren, müssen Sie den Wert von path auf /schedule festlegen. |
value |
Der aktualisierte Wert des Cron-Zeitplans. Dieser Wert muss in Form eines Cron-Zeitplans angegeben werden. In diesem Beispiel wird der Zeitplan am zweiten Tag jedes Monats ausgeführt. |
Antwort
Bei erfolgreicher Antwort wird der HTTP-Status-Code 204 (kein Inhalt) zurückgegeben.
Löschen einzelner Zeitpläne
Sie können das Löschen eines bestimmten Zeitplans anfordern, indem Sie eine DELETE-Anfrage an den /config/schedules-Endpunkt senden und im Anfragepfad die ID des Zeitplans angeben, den Sie löschen möchten.
API-Format
DELETE /config/schedules/{SCHEDULE_ID}
{SCHEDULE_ID}id Wert des Zeitplans, den Sie löschen möchten.Anfrage
| code language-shell |
|---|
|
Antwort
Bei erfolgreicher Antwort wird der HTTP-Status-Code 204 (kein Inhalt) zurückgegeben.
Zielgruppen zum Zeitplan hinzufügen add-audiences
Sie können Zielgruppen zu einem bestimmten Zeitplan hinzufügen, indem Sie eine POST-Anfrage an den /config/schedules/add-audiences-Endpunkt senden.
API-Format
POST /config/schedules/add-audiences
Anfrage
| code language-shell |
|---|
|
idsegmentsAntwort
Eine erfolgreiche Antwort gibt den HTTP-Status-Code 200 mit detaillierten Informationen zum Vorgang zurück.
| code language-json |
|---|
|
| table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 | |
|---|---|
| Eigenschaft | Beschreibung |
added |
Ein Array, das die IDs der Segmentdefinitionen enthält, die dem Zeitplan hinzugefügt wurden. |
existing |
Ein Array, das die IDs der Segmentdefinitionen enthält, die bereits im Zeitplan waren. |
invalid |
Ein Array mit ungültigen Segmentdefinitions-IDs, die Teil des Anfragetexts waren. |
segmentCount |
Ein -Objekt, das die Anzahl der Segmentdefinitionen enthält, die zuvor Teil des Zeitplans waren (previous), die Anzahl der Segmentdefinitionen, die jetzt Teil des Zeitplans sind (current), und die Differenz zwischen diesen beiden Werten (diff). |
Zielgruppen aus Zeitplan entfernen remove-audiences
Sie können Zielgruppen aus einem bestimmten Zeitplan entfernen, indem Sie eine POST-Anfrage an den /config/schedules/remove-audiences-Endpunkt senden.
API-Format
POST /config/schedules/remove-audiences
Anfrage
| code language-shell |
|---|
|
idsegmentsAntwort
Eine erfolgreiche Antwort gibt den HTTP-Status-Code 200 mit detaillierten Informationen zum Vorgang zurück.
| code language-json |
|---|
|
| table 0-row-2 1-row-2 2-row-2 3-row-2 | |
|---|---|
| Eigenschaft | Beschreibung |
removed |
Ein Array, das die IDs der Segmentdefinitionen enthält, die aus dem Zeitplan entfernt wurden. |
notFound |
Ein Array, das die IDs von Segmentdefinitionen enthält, die nicht im Zeitplan gefunden werden konnten. |
segmentCount |
Ein -Objekt, das die Anzahl der Segmentdefinitionen enthält, die zuvor Teil des Zeitplans waren (previous), die Anzahl der Segmentdefinitionen, die jetzt Teil des Zeitplans sind (current), und die Differenz zwischen diesen beiden Werten (diff). |
Zielgruppen-Map abrufen get-audience-map
Sie können die Zielgruppenzuordnung Ihrer Zielgruppen abrufen, indem Sie eine POST-Anfrage an den /config/schedules/audience-map-Endpunkt senden. Die Zielgruppenzuordnung stellt eine Zuordnung zwischen den Segmentdefinitions-IDs und den Zeitplänen dar, zu denen diese IDs gehören.
API-Format
POST /config/schedules/audience-map
Anfrage
| code language-shell |
|---|
|
segmentsAntwort
Eine erfolgreiche Antwort gibt den HTTP-Status-Code 200 mit detaillierten Informationen zur Zielgruppe und zur Zeitplanzuordnung zurück.
| code language-json |
|---|
|
| table 0-row-2 1-row-2 2-row-2 | |
|---|---|
| Eigenschaft | Beschreibung |
audienceMap |
Eine Zuordnung von Segmentdefinitions-IDs zu den Zeitplänen, zu denen sie gehören. |
schedules |
Ein Objekt, das Informationen zu den Zeitplänen enthält, die in der Zielgruppenzuordnung aufgelistet sind. |
Trigger-Zeitplanvorgang trigger
Sie können einen zu aktivierenden Zeitplan manuell in Trigger setzen, indem Sie eine POST-Anfrage an den /config/schedules/trigger-Endpunkt senden.
API-Format
POST /config/schedules/trigger
Anfrage
| code language-shell |
|---|
|
idAntwort
Eine erfolgreiche Antwort gibt den HTTP-Status-Code 200 ohne Inhalt zurück.
Nächste Schritte
Nach dem Lesen dieses Handbuchs haben Sie jetzt ein besseres Verständnis davon, wie Zeitpläne funktionieren.
Anhang appendix
Im folgenden Anhang wird das Format der Cron-Ausdrücke erläutert, die in Zeitplänen verwendet werden.
Format
Ein Cron-Ausdruck ist eine Zeichenfolge, die aus 6 oder 7 Feldern besteht. Der Ausdruck würde in etwa wie folgt aussehen:
0 0 12 * * ?
In einer Cron-Ausdruckszeichenfolge steht das erste Feld für die Sekunden, das zweite Feld steht für die Minuten, das dritte Feld steht für die Stunden, das vierte Feld steht für den Tag des Monats, das fünfte Feld steht für den Monat und das sechste Feld steht für den Tag der Woche. Optional können Sie auch ein siebtes Feld einfügen, das das Jahr darstellt.
, - * /, - * /, - * /, - * ? / L W, - * /, - * ? / L #, - * /SUN der Verwendung von sun.Die zulässigen Sonderzeichen stellen die folgenden Bedeutungen dar:
** im Feld Stunden eingeben, bedeutet dies jede Stunde.?3 in das Feld Tag des Monats und ? in das Feld Wochentag ein.-9-15 in das Feld Stunden eingeben, bedeutet dies, dass die Stunden 9, 10, 11, 12, 13, 14 und 15 umfassen.,MON, FRI, SAT in das Feld Wochentag eingeben, bedeutet dies, dass die Wochentage Montag, Freitag und Samstag enthalten.// platzierte Wert bestimmt, von wo aus er inkrementiert, während der nach dem / platzierte Wert bestimmt, um wie viel er inkrementiert. Wenn Sie beispielsweise 1/7 in das Feld Minuten eingeben, bedeutet dies, dass die Minuten 1, 8, 15, 22, 29, 36, 43, 50 und 57 enthalten.LLast verwendet und hat eine andere Bedeutung, je nachdem, von welchem Feld er verwendet wird. Wenn es mit dem Feld Tag des Monats verwendet wird, stellt es den letzten Tag des Monats dar. Wenn das Feld allein mit dem Wochentag verwendet wird, stellt es den letzten Wochentag dar, nämlich Samstag (SAT). Wird es zusammen mit einem anderen Wert mit dem Feld Wochentag verwendet, stellt es den letzten Tag dieses Typs für den Monat dar. Wenn Sie beispielsweise 5L in das Feld Wochentag einfügen, würde es nur den letzten Freitag des Monats einschließen.W18W in das Feld Tag des Monats eingeben und der 18. dieses Monats ein Samstag ist, wird Freitag der 17. diesen Wochentag als Trigger haben. Wenn der 18. eines Monats ein Sonntag wäre, würde er am Montag den 19. Trigger machen, der dem Wochentag am nächsten liegt. Wenn Sie 1W in das Feld Tag des Monats einfügen und der nächste Wochentag im Vormonat liegt, wird das Ereignis weiterhin am nächsten Wochentag des aktuellen Monats Trigger.Darüber hinaus können Sie
L und W zu LW kombinieren, wodurch der letzte Wochentag des Monats angegeben wird.## platzierte Wert steht für den Wochentag, während der nach dem # platzierte Wert für das Auftreten in dem Monat steht, in dem er liegt. Wenn Sie beispielsweise 1#3 angeben, wird das Ereignis am dritten Sonntag im Monat Trigger. Beachten Sie, dass das Ereignis nicht ausgelöst wird, wenn Sie X#5 setzen und es an diesem Wochentag in diesem Monat fünftes Auftreten. Wenn Sie beispielsweise 1#5 setzen und es keinen fünften Sonntag in diesem Monat gibt, wird das Ereignis nicht ausgelöst.Beispiele
Die folgende Tabelle zeigt Beispielzeichenfolgen für Cron-Ausdrücke und erläutert, was sie bedeuten.
0 0 13 * * ?0 30 9 * * ? 20220 * 18 * * ?0 0/10 17 * * ?0 13,38 5 ? 6 WED0 30 12 ? * 4#30 30 12 ? * 6L0 45 11 ? * MON-THU