Pular para o conteúdo principal

Criar uma Subscrição a um Evento

Este endpoint é utilizado para criar uma subscrição a eventos emitidos no Motor de Eventos da Catalisa. Esta subscrição permite que um usuário se inscreva para receber notificações de um evento específico.

Assim que um evento for emitido, a Catalisa enviará uma requisição HTTP POST para a URL configurada na subscrição, contendo os dados do evento no corpo da requisição.

IMPORTANTE

Uma resposta HTTP 200 OK é esperada para cada evento recebido.

Requisição​

POST https://api-sandbox.catalisa.com.br/webhooks/api/v1/subscriptions​

Escopos JWT: webhooks-engine/manage:subscriptions webhooks-engine/create:subscriptions

Cabeçalhos​

NomeValor
AuthorizationBearer <token>
Content-Typeapplication/json

Corpo da Requisição​

{
"data": {
"type": "subscriptions",
"attributes": {
"event": "document.status.signed",
"context": "doc-signature",
"name": "MEU_WEBHOOK",
"targetUrl": "https://exemplo.com.br/meus/callbacks"
}
}
}

Descrição dos campos​

CampoTipoDescrição
data.typestringTipo do recurso. Sempre "subscriptions"
data.attributes.eventstringNome do evento que será assinado
data.attributes.contextstringContexto do evento que será assinado
data.attributes.namestringNome da subscrição
data.attributes.targetUrlstringURL que receberá as notificações

Respostas​

CódigoDescrição
201Subscrição criada com sucesso. Retorna os dados da subscrição criada
401Não autorizado

Exemplos de uso​

const headers = new Headers();
headers.append("Authorization", "Bearer <token>");
headers.append("Content-Type", "application/json");

const body = JSON.stringify({
data: {
type: "subscriptions",
attributes: {
event: "document.status.signed",
context: "doc-signature",
targetUrl: "https://exemplo.com.br/meus/callbacks",
name: "MEU_WEBHOOK",
},
},
});

const requestOptions = {
method: "POST",
headers: headers,
body: body,
};

const response = await fetch(
"https://api-sandbox.catalisa.com.br/webhooks/api/v1/subscriptions",
requestOptions
);
const data = await response.json();
console.log(data);

Exemplo de Sucesso​

{
"links": {
"self": "https://api-sandbox.catalisa.com.br/webhooks/api/v1/subscriptions/3a396c21-f644-4013-8e06-470d59f3f719"
},
"data": {
"type": "subscriptions",
"id": "3a396c21-f644-4013-8e06-470d59f3f719",
"attributes": {
"event": "document.status.signed",
"name": "safra-signed-documents-callback",
"context": "doc-signature",
"state": "active",
"targetUrl": "https://exemplo.com.br/meus/callbacks"
}
}
}