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"
}
}
}