DoneTalk Desenvolvedores Entrar

Avisos (webhooks)

Listar avisos

GET /v1/c/{slug}/webhooks · Escopos: webhooks:manage

Parâmetros do endereço

CampoDetalhes
slugO identificador da empresa no DoneTalk (o mesmo da chave).

Exemplo de pedido

curl -X GET "https://api.donetalk.com/v1/c/demo/webhooks" \
  -H "Authorization: Bearer $DONETALK_KEY"

Resposta 200

{
  "webhooks": [
    {
      "id": "01a0cb03-417a-7da4-9ae2-70bc321eeef5",
      "url": "https://erp.captei.com.br/donetalk/avisos",
      "events": [
        "campaign.completed",
        "campaign.recipient.replied",
        "conversation.closed"
      ],
      "status": "active",
      "failureCount": 0,
      "createdBy": null,
      "createdAt": "2026-10-23T13:02:11.000Z",
      "updatedAt": "2026-10-23T13:02:11.000Z"
    }
  ]
}

Erros possíveis

  • 401 unauthorized
  • 403 insufficient_scope
  • 422 validation_failed
  • 429 rate_limited

Criar um aviso

POST /v1/c/{slug}/webhooks · Escopos: webhooks:manage

Um endereço do seu sistema e os eventos que ele recebe. O secret volta uma vez só: guarde para conferir as assinaturas.

Parâmetros do endereço

CampoDetalhes
slugO identificador da empresa no DoneTalk (o mesmo da chave).

Corpo do pedido

CampoTipoObrigatórioDetalhes
urlstring (uri)simaté 2000 caracteres
eventslista de um de conversation.opened, conversation.closed, conversation.assigned, conversation.transferred, conversation.reopened, contact.updated, contact.consent_changed, message.received, message.sent, message.delivered, message.read, message.failed, flow.event, appointment.booked, appointment.rescheduled, appointment.cancelled, appointment.confirmed, appointment.attended, appointment.no_show, campaign.started, campaign.paused, campaign.resumed, campaign.completed, campaign.cancelled, campaign.recipient.sent, campaign.recipient.delivered, campaign.recipient.read, campaign.recipient.replied, campaign.recipient.failed, campaign.recipient.opted_outsimaté 30

Exemplo de pedido

curl -X POST "https://api.donetalk.com/v1/c/demo/webhooks" \
  -H "Authorization: Bearer $DONETALK_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "url": "https://erp.captei.com.br/donetalk/avisos",
  "events": [
    "campaign.completed",
    "campaign.recipient.replied",
    "conversation.closed"
  ]
}'

Resposta 201

{
  "webhook": {
    "id": "01a0cb03-417a-7da4-9ae2-70bc321eeef5",
    "url": "https://erp.captei.com.br/donetalk/avisos",
    "events": [
      "campaign.completed",
      "campaign.recipient.replied",
      "conversation.closed"
    ],
    "status": "active",
    "failureCount": 0,
    "createdBy": null,
    "createdAt": "2026-10-23T13:02:11.000Z",
    "updatedAt": "2026-10-23T13:02:11.000Z"
  },
  "secret": "dsf_whsec_4Jx…"
}

Erros possíveis

  • 401 unauthorized
  • 403 insufficient_scope
  • 422 validation_failed
  • 429 rate_limited

Editar um aviso

PATCH /v1/c/{slug}/webhooks/{id} · Escopos: webhooks:manage

Parâmetros do endereço

CampoDetalhes
slugO identificador da empresa no DoneTalk (o mesmo da chave).
idO id do registro.

Corpo do pedido

CampoTipoObrigatórioDetalhes
urlstring (uri)nãoaté 2000 caracteres
eventslista de um de conversation.opened, conversation.closed, conversation.assigned, conversation.transferred, conversation.reopened, contact.updated, contact.consent_changed, message.received, message.sent, message.delivered, message.read, message.failed, flow.event, appointment.booked, appointment.rescheduled, appointment.cancelled, appointment.confirmed, appointment.attended, appointment.no_show, campaign.started, campaign.paused, campaign.resumed, campaign.completed, campaign.cancelled, campaign.recipient.sent, campaign.recipient.delivered, campaign.recipient.read, campaign.recipient.replied, campaign.recipient.failed, campaign.recipient.opted_outnãoaté 30
statusum de active, pausednão

Exemplo de pedido

curl -X PATCH "https://api.donetalk.com/v1/c/demo/webhooks/:id" \
  -H "Authorization: Bearer $DONETALK_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "status": "paused"
}'

Resposta 200

{
  "webhook": {
    "id": "01a0cb03-417a-7da4-9ae2-70bc321eeef5",
    "url": "https://erp.captei.com.br/donetalk/avisos",
    "events": [
      "campaign.completed",
      "campaign.recipient.replied",
      "conversation.closed"
    ],
    "status": "active",
    "failureCount": 0,
    "createdBy": null,
    "createdAt": "2026-10-23T13:02:11.000Z",
    "updatedAt": "2026-10-23T13:02:11.000Z"
  }
}

Erros possíveis

  • 401 unauthorized
  • 403 insufficient_scope
  • 422 validation_failed
  • 429 rate_limited

Apagar um aviso

DELETE /v1/c/{slug}/webhooks/{id} · Escopos: webhooks:manage

Parâmetros do endereço

CampoDetalhes
slugO identificador da empresa no DoneTalk (o mesmo da chave).
idO id do registro.

Exemplo de pedido

curl -X DELETE "https://api.donetalk.com/v1/c/demo/webhooks/:id" \
  -H "Authorization: Bearer $DONETALK_KEY"

Resposta 200

{
  "ok": true
}

Erros possíveis

  • 401 unauthorized
  • 403 insufficient_scope
  • 422 validation_failed
  • 429 rate_limited

Mandar um aviso de teste

POST /v1/c/{slug}/webhooks/{id}/test · Escopos: webhooks:manage

Parâmetros do endereço

CampoDetalhes
slugO identificador da empresa no DoneTalk (o mesmo da chave).
idO id do registro.

Exemplo de pedido

curl -X POST "https://api.donetalk.com/v1/c/demo/webhooks/:id/test" \
  -H "Authorization: Bearer $DONETALK_KEY"

Resposta 202

{
  "deliveryId": "01a3e4f5-a6b7-7c8d-9e0f-1a2b3c4d5e6f",
  "eventId": "01a3c0de-8b22-7c33-9d44-0e55f6677889"
}

Erros possíveis

  • 401 unauthorized
  • 403 insufficient_scope
  • 422 validation_failed
  • 429 rate_limited

Entregas recentes

GET /v1/c/{slug}/webhooks/{id}/deliveries · Escopos: webhooks:manage

Parâmetros do endereço

CampoDetalhes
slugO identificador da empresa no DoneTalk (o mesmo da chave).
idO id do registro.

Exemplo de pedido

curl -X GET "https://api.donetalk.com/v1/c/demo/webhooks/:id/deliveries" \
  -H "Authorization: Bearer $DONETALK_KEY"

Resposta 200

{
  "deliveries": [
    {
      "id": "01a3e4f5-a6b7-7c8d-9e0f-1a2b3c4d5e6f",
      "eventId": "01a3c0de-8b22-7c33-9d44-0e55f6677889",
      "eventType": "campaign.recipient.replied",
      "attempt": 1,
      "status": "delivered",
      "responseCode": 200,
      "responseMs": 84,
      "nextAttemptAt": null,
      "createdAt": "2026-10-24T12:04:03.000Z"
    }
  ]
}

Erros possíveis

  • 401 unauthorized
  • 403 insufficient_scope
  • 422 validation_failed
  • 429 rate_limited

Esta página em Markdown