Developers

An event for every change. The API on every plan.

Everything that happens in TalkyHub can reach you as a signed webhook: new messages, assignments, statuses, labels. No add-on fee, no request packs.

  • message.created
  • message.updated
  • message.deleted
  • conversation.created
  • conversation.status_changed
  • conversation.assigned
  • conversation.team_changed
  • conversation.priority_changed
  • conversation.labels_changed
  • HMAC-SHA256 with a timestamp against replays
  • Retries after 5 and 30 seconds, failure log
  • REST /api/v1, RFC 9457 errors
live
  • 00:16:49message.updatedapi.company.ru/hooks200
  • 00:16:46conversation.labels_changedapi.company.ru/hooks200
  • 00:16:43message.createdapi.company.ru/hooks200 · attempt 2
  • 00:16:40message.createdapi.company.ru/hooks503 · retry in 5s
  • 00:16:37conversation.createdapi.company.ru/hooks200
  • 00:16:34conversation.assignedapi.company.ru/hooks200
  • 00:16:31message.createdapi.company.ru/hooks200
Event catalog

Subscribe only to what you need

Event names are validated when you subscribe: a typo returns an error, not silence.

message.createdA new customer message or agent replylive
message.updatedA message was editedlive
message.deletedA message was deletedlive
conversation.createdA new conversation startedlive
conversation.status_changedOpen, pending, snoozed, resolvedlive
conversation.assignedAssigned to an agentlive
conversation.team_changedMoved to another teamlive
conversation.priority_changedPriority changedlive
conversation.labels_changedLabels changedlive
contact.mergedTwo contacts mergedsoon
sla.breachedA response deadline was missedsoon

Managing webhooks

Endpoints and subscriptions are managed through the API or in workspace settings.

  • GET
    /api/v1/webhook-endpoints/catalogEvents you can subscribe to
  • POST
    /api/v1/webhook-endpointsRegister a URL and events. The secret is shown once
  • GET
    /api/v1/webhook-endpointsYour endpoints (secrets omitted)
  • GET
    /api/v1/webhook-endpoints/{id}/deliveriesDelivery log, failures included
  • DELETE
    /api/v1/webhook-endpoints/{id}Remove an endpoint
Widget

Website chat that knows your users

Pass a user ID signed by your server and the user sees their conversation on any device, with no pre-chat form. Without a signature the details are only a hint and never unlock anyone else’s history.

  • 24 KB gzipped, Shadow DOM: your CSS stays intact
  • Realtime replies
  • TalkyHub.setUser() and reset() for sign-in and sign-out
<script>
  window.talkyhubSettings = {
    token: 'wgt_…',
    apiBase: 'https://api.talkyhub.ru',
    user: {
      identifier: 'user-42',
      identifier_hash: '9f86d081…', // HMAC on your server
      name: 'Anna Morozova',
      email: 'anna.m@yandex.ru',
    },
  }
</script>
<script async src="https://cdn.talkyhub.ru/widget/v1/loader.js"></script>
Principles

How the API behaves

One format for every channel

A message from VK, MAX or email reaches you in the same shape. Each messenger’s quirks stay inside TalkyHub.

At-least-once delivery

If your server doesn’t answer, the event is retried after 5 and 30 seconds. Dedupe on X-TalkyHub-Delivery.

Signatures and replay protection

HMAC-SHA256 covers the timestamp and the body. Reject requests with a stale timestamp.

Readable errors

A REST API under /api/v1, with RFC 9457 problem details for errors.

Try TalkyHub for free

Connect your first channel and answer a customer today.

Free forever · No card · First channel in 5 minutes