Um retorno de chamada é uma mensagem que a API do Reactor envia a uma URL específica (geralmente, uma que é hospedada por sua organização).
Os retornos de chamada devem ser usados juntamente com eventos de auditoria para rastrear atividades na API do Reactor. Sempre que um evento de auditoria de determinado tipo é gerado, um retorno de chamada pode enviar uma mensagem correspondente à URL especificada.
O serviço por trás da URL especificada no retorno de chamada deve responder com o código de status HTTP 200 (OK) ou 201 (Criado). Se o serviço não responder com nenhum desses códigos de status, o envio da mensagem será repetido nos seguintes intervalos:
Os intervalos de repetição são relativos ao intervalo anterior. Por exemplo, se a repetição em um minuto falhar, a próxima tentativa será agendada para cinco minutos após a tentativa de um minuto que falhou (seis minutos após a mensagem ter sido gerada).
Se todas as tentativas de envio falharem, a mensagem será descartada.
Um retorno de chamada pertence a apenas uma propriedade. Uma propriedade pode ter muitos retornos de chamada.
O endpoint usado neste manual faz parte da API do Reactor. Antes de continuar, consulte novamente o guia de introdução para obter informações importantes sobre como realizar a autenticação para a API.
Você pode listar todos os retornos de chamada em uma propriedade fazendo uma solicitação GET.
Formato da API
GET /properties/{PROPERTY_ID}/callbacks
Parâmetro | Descrição |
---|---|
{PROPERTY_ID} |
O id da propriedade cujos retornos de chamada você deseja listar. |
Usando parâmetros de consulta, os retornos de chamada listados podem ser filtrados com base nos seguintes atributos:
created_at
updated_at
Solicitação
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'
Resposta
Uma resposta bem-sucedida retorna uma lista de retornos de chamada da propriedade especificada.
{
"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
}
}
}
Você pode pesquisar um retorno de chamada fornecendo a respectiva ID no caminho de uma solicitação GET.
Formato de API
GET /callbacks/{CALLBACK_ID}
Parâmetro | Descrição |
---|---|
CALLBACK_ID |
O id do retorno de chamada que você deseja pesquisar. |
Solicitação
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'
Resposta
Uma resposta bem-sucedida retorna os detalhes do retorno de chamada.
{
"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"
}
}
}
Você pode criar um novo retorno de chamada fazendo uma solicitação POST.
Formato da API
POST /properties/{PROPERTY_ID}/callbacks
Parâmetro | Descrição |
---|---|
PROPERTY_ID |
O id da propriedade sob a qual o retorno de chamada está sendo definido. |
Solicitação
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"
]
}
}
}'
Propriedade | Descrição |
---|---|
url |
O destino da URL para a mensagem de retorno de chamada. A URL deve usar a extensão de protocolo HTTPS. |
subscriptions |
Uma matriz de strings, indicando os tipos de evento de auditoria que acionarão o retorno de chamada. Consulte o manual de endpoint de eventos de auditoria para obter uma lista de tipos de eventos possíveis. |
Resposta
Uma resposta bem-sucedida retorna os detalhes do retorno de chamada recém-criado.
{
"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"
}
}
}
Você pode atualizar um retorno de chamada incluindo a respectiva ID no caminho de uma solicitação PATCH.
Formato da API
PATCH /callbacks/{CALLBACK_ID}
Parâmetro | Descrição |
---|---|
CALLBACK_ID |
A id do retorno de chamada que você deseja atualizar. |
Solicitação
A solicitação a seguir atualiza a matriz subscriptions
para um retorno de chamada existente.
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"
}
}'
Propriedade | Descrição |
---|---|
attributes |
Um objeto cujas propriedades representam os atributos a serem atualizados para o retorno de chamada. Cada chave representa o atributo de retorno de chamada específico a ser atualizado, juntamente com o valor correspondente para o qual ele deve ser atualizado. Os seguintes atributos podem ser atualizados para retornos de chamada:
|
id |
A id do retorno de chamada que você deseja atualizar. Isso deve corresponder ao valor {CALLBACK_ID} informado no caminho da solicitação. |
type |
O tipo de recurso que está sendo atualizado. Para esse endpoint, o valor deve ser callbacks . |
Resposta
Uma resposta bem-sucedida retorna os detalhes do retorno de chamada atualizado.
{
"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"
}
}
}
É possível excluir um retorno de chamada incluindo a respectiva ID no caminho de uma solicitação DELETE.
Formato da API
DELETE /callbacks/{CALLBACK_ID}
Parâmetro | Descrição |
---|---|
CALLBACK_ID |
A id do retorno de chamada que você deseja excluir. |
Solicitação
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'
Resposta
Uma resposta bem-sucedida retorna o status HTTP 204 (Sem conteúdo) sem corpo de resposta, indicando que o retorno de chamada foi excluído.