Criar endpoint de webhook
POST · API de Integração v2
/v2/webhooks/endpointsCadastra uma URL que receberá eventos da Expedit e define suas inscrições iniciais.
Autenticação e escopo: envie X-API-Key. A empresa é identificada pela chave; clienteId não
existe no body e não pode ser escolhido pelo consumidor.
URL: deve ser HTTPS, absoluta e pública. Endereços locais, privados, com credenciais na URL ou fragmento são recusados para reduzir risco de SSRF.
Tipos disponíveis: agenda.compromisso.criado, agenda.compromisso.concluido,
agenda.compromisso.atualizado e agenda.comentario.criado. O evento de atualização é emitido
quando algum campo operacional exposto no contrato mudar; o de comentário é emitido quando a
observação é registrada diretamente em uma agenda. Envie ao menos um tipo. O conjunto não aceita
duplicatas.
A resposta confirma o estado local e solicita sincronização com o provider. PENDING_SYNC significa
que o endpoint ainda será provisionado; consulte a listagem para acompanhar o estado. O segredo de
assinatura não é retornado nesta versão da API.
Autenticação
X-API-Key no cabeçalho. Como autenticar
Corpo da requisiçãoobrigatório
Nome, URL HTTPS pública e tipos de evento a receber.
application/json
eventTypesstring[]nomestringobrigatóriourlstringobrigatórioRespostas4
Exemplos ilustrativos · nenhuma requisição é enviada
200 · Sucesso
- Quando acontece
- A operação foi concluída.
- Como tratar
- Leia os dados retornados; em listagens, confira também a paginação.
Exemplo declarado no OpenAPI · application/json
{
"id": 123,
"nome": "ERP Jurídico",
"url": "https://erp.exemplo.com/webhooks/expedit",
"status": "PENDING_SYNC",
"eventTypes": [
"agenda.compromisso.criado",
"agenda.compromisso.concluido",
"agenda.compromisso.atualizado",
"agenda.comentario.criado"
]
}Contrato de respostas
200Endpoint aceito e sincronização solicitada.
Endpoint aceito e sincronização solicitada.
application/json
eventTypesstring[]idintegernomestringstatusstringurlstring400Nome, URL ou inscrições inválidos.
Nome, URL ou inscrições inválidos.
O contrato não declara um corpo para esta resposta.
401Chave de API ausente ou inválida.
Chave de API ausente ou inválida.
O contrato não declara um corpo para esta resposta.
403Chave sem permissão para esta operação.
Chave sem permissão para esta operação.
O contrato não declara um corpo para esta resposta.
