Callback-Endpunkt
Ein Callback ist eine Nachricht, die die Reactor-API an eine bestimmte URL sendet (normalerweise eine, die von Ihrer Organisation gehostet wird).
Callbacks sind dazu gedacht, in Verbindung mit Audit-Ereignissen verwendet zu werden, um Aktivitäten in der Reactor-API zu verfolgen. Jedes Mal, wenn ein Audit-Ereignis eines bestimmten Typs erzeugt wird, kann ein Callback eine passende Nachricht an die angegebene URL senden.
Der Service hinter der im Callback angegebenen URL muss mit dem HTTP-Status-Code 200 (OK) oder 201 (Erstellt) antworten. Wenn der Service nicht mit einem dieser Status-Codes antwortet, wird die Nachrichtenzustellung in den folgenden Abständen erneut versucht:
- 1 Minute
- 5 Minuten
- 30 Minuten
- 1 Stunde
- 12 Stunden
- 1 Tag
- 3 Tage
Wenn alle Zustellversuche erfolglos sind, wird die Nachricht verworfen.
Ein Callback gehört zu genau einer Eigenschaft. Eine Eigenschaft kann viele Callbacks haben.
Erste Schritte
Der in diesem Handbuch verwendete Endpunkt ist Teil der Reactor-API. Bevor Sie fortfahren, lesen Sie zunächst das Erste-Schritte-Handbuch, um wichtige Informationen zur Authentifizierung bei der API zu erhalten.
Auflisten von Callbacks list
Sie können alle Callbacks unter einer Eigenschaft auflisten, indem Sie eine GET-Anfrage stellen.
API-Format
GET /properties/{PROPERTY_ID}/callbacks
{PROPERTY_ID}
id
der Eigenschaft, deren Callbacks Sie auflisten möchten.created_at
updated_at
Anfrage
curl -X GET \
https://reactor.adobe.io/properties/PR66a3356c73fc4aabb67ee22caae53d70/callbacks \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H "Content-Type: application/vnd.api+json" \
-H 'Accept: application/vnd.api+json;revision=1'
Antwort
Eine erfolgreiche Antwort gibt eine Liste von Callbacks für die angegebene Eigenschaft zurück.
{
"data": [
{
"id": "CB26edef8d709243579589107bcda034da",
"type": "callbacks",
"attributes": {
"created_at": "2020-12-14T17:34:47.082Z",
"subscriptions": [
"rule.created"
],
"updated_at": "2020-12-14T17:34:47.082Z",
"url": "https://www.example.com"
},
"relationships": {
"property": {
"links": {
"related": "https://reactor.adobe.io/callbacks/CB26edef8d709243579589107bcda034da/property"
},
"data": {
"id": "PR66a3356c73fc4aabb67ee22caae53d70",
"type": "properties"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR66a3356c73fc4aabb67ee22caae53d70",
"self": "https://reactor.adobe.io/callbacks/CB26edef8d709243579589107bcda034da"
}
}
],
"meta": {
"pagination": {
"current_page": 1,
"next_page": null,
"prev_page": null,
"total_pages": 1,
"total_count": 1
}
}
}
Suchen eines Callbacks lookup
Sie können einen Callback suchen, indem Sie seine ID im Pfad einer GET-Anfrage angeben.
API-Format
GET /callbacks/{CALLBACK_ID}
CALLBACK_ID
id
des Callbacks, den Sie suchen möchten.Anfrage
curl -X GET \
https://reactor.adobe.io/callbacks/CBeef389cee8d84e69acef8665e4dcbef6 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H "Content-Type: application/vnd.api+json" \
-H 'Accept: application/vnd.api+json;revision=1'
Antwort
Eine erfolgreiche Antwort gibt die Details des Callbacks zurück.
{
"data": {
"id": "CBeef389cee8d84e69acef8665e4dcbef6",
"type": "callbacks",
"attributes": {
"created_at": "2020-12-14T17:34:36.872Z",
"subscriptions": [
"rule.created"
],
"updated_at": "2020-12-14T17:34:36.872Z",
"url": "https://www.example.com"
},
"relationships": {
"property": {
"links": {
"related": "https://reactor.adobe.io/callbacks/CBeef389cee8d84e69acef8665e4dcbef6/property"
},
"data": {
"id": "PRb513bbab52114573ac87f9848eea6ead",
"type": "properties"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PRb513bbab52114573ac87f9848eea6ead",
"self": "https://reactor.adobe.io/callbacks/CBeef389cee8d84e69acef8665e4dcbef6"
}
}
}
Erstellen eines Callbacks create
Sie können einen neuen Callback erstellen, indem Sie eine POST-Anfrage stellen.
API-Format
POST /properties/{PROPERTY_ID}/callbacks
PROPERTY_ID
id
der Eigenschaft, unter der Sie den Callback definieren.Anfrage
curl -X POST \
https://reactor.adobe.io/properties/PR5e22de986a7c4070965e7546b2bb108d/callbacks \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Content-Type: application/json' \
-H 'Accept: application/vnd.api+json;revision=1' \
-d '{
"data": {
"attributes": {
"url": "https://www.example.com",
"subscriptions": [
"rule.created"
]
}
}
}'
url
subscriptions
Antwort
Eine erfolgreiche Antwort gibt die Details des neu erstellten Callbacks zurück.
{
"data": {
"id": "CB32d8f23d5ee548278d32076af4c442a0",
"type": "callbacks",
"attributes": {
"created_at": "2020-12-14T17:34:27.059Z",
"subscriptions": [
"rule.created"
],
"updated_at": "2020-12-14T17:34:27.059Z",
"url": "https://www.example.com"
},
"relationships": {
"property": {
"links": {
"related": "https://reactor.adobe.io/callbacks/CB32d8f23d5ee548278d32076af4c442a0/property"
},
"data": {
"id": "PR5e22de986a7c4070965e7546b2bb108d",
"type": "properties"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR5e22de986a7c4070965e7546b2bb108d",
"self": "https://reactor.adobe.io/callbacks/CB32d8f23d5ee548278d32076af4c442a0"
}
}
}
Aktualisieren eines Callbacks
Sie können einen Callback aktualisieren, indem Sie dessen ID in den Pfad einer PATCH-Anfrage einschließen.
API-Format
PATCH /callbacks/{CALLBACK_ID}
CALLBACK_ID
id
des Callbacks, den Sie aktualisieren möchten.Anfrage
Die folgende Anfrage aktualisiert das subscriptions
-Array für einen vorhandenen Callback.
curl -X PATCH \
https://reactor.adobe.io/callbacks/CB4310904d415549888cc9e31ebe1e1e45 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Content-Type: application/json' \
-H 'Accept: application/vnd.api+json;revision=1' \
-d '{
"data": {
"attributes": {
"url": "https://www.example.net",
"subscriptions": [
"rule.created",
"build.created"
]
},
"type": "callbacks",
"id": "CB4310904d415549888cc9e31ebe1e1e45"
}
}'
attributes
Ein Objekt, dessen Eigenschaften die zu aktualisierenden Attribute für den Callback darstellen. Jeder Schlüssel steht für das jeweilige Callback-Attribut, das aktualisiert werden soll, zusammen mit dem entsprechenden Wert, auf den es aktualisiert werden soll.
Die folgenden Attribute können für Callbacks aktualisiert werden:
subscriptions
url
id
id
des Callbacks, den Sie aktualisieren möchten. Diese sollte mit dem {CALLBACK_ID}
-Wert übereinstimmen, der im Anfragepfad angegeben ist.type
callbacks
lauten.Antwort
Eine erfolgreiche Antwort gibt die Details des aktualisierten Callbacks zurück.
{
"data": {
"id": "CB4310904d415549888cc9e31ebe1e1e45",
"type": "callbacks",
"attributes": {
"created_at": "2020-12-14T17:34:56.884Z",
"subscriptions": [
"rule.created",
"build.created"
],
"updated_at": "2020-12-14T17:34:57.614Z",
"url": "https://www.example.net"
},
"relationships": {
"property": {
"links": {
"related": "https://reactor.adobe.io/callbacks/CB4310904d415549888cc9e31ebe1e1e45/property"
},
"data": {
"id": "PR0a8ef3ca31dc456a8566e9288960bd79",
"type": "properties"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR0a8ef3ca31dc456a8566e9288960bd79",
"self": "https://reactor.adobe.io/callbacks/CB4310904d415549888cc9e31ebe1e1e45"
}
}
}
Löschen eines Callbacks
Sie können einen Callback löschen, indem Sie seine ID im Pfad einer DELETE-Anfrage angeben.
API-Format
DELETE /callbacks/{CALLBACK_ID}
CALLBACK_ID
id
des Callbacks, den Sie löschen möchten.Anfrage
curl -X DELETE \
https://reactor.adobe.io/callbacks/CB4310904d415549888cc9e31ebe1e1e45 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Content-Type: application/json' \
-H 'Accept: application/vnd.api+json;revision=1'
Antwort
Eine erfolgreiche Antwort gibt den HTTP-Status 204 (Kein Inhalt) ohne Antworttext zurück und zeigt damit an, dass der Callback gelöscht wurde.