Webhooks

Webhooks let you receive workspace events in real time on your own endpoint. Whenever something happens (a conversation is created, a message arrives, a customer is updated…), Platica sends an HTTP request to the URL you configure.

Unlike Apps and REST API —where your agent queries outward—, webhooks go in the opposite direction: it's Platica that notifies your systems when something happens.

Each request is signed with HMAC SHA-256 (if you set a secret) and has automatic retries if your endpoint doesn't respond.

To start, click "Create webhook". The wizard has three steps: Endpoint → Events → Done.


Step 1: Endpoint

Define where and how events will be delivered.

FieldDescription
NameHow you'll identify this webhook (for example, "External CRM - production"). Up to 100 characters.
Endpoint URLThe address that will receive the events. It must be a publicly accessible URL (HTTPS recommended).
Active from the startWhether the webhook starts delivering events immediately. You can pause it at any time.
Signing secret (optional)A random string only you know. You can type it or use "Generate".
Custom headersExtra HTTP headers (up to 10). Useful for sending your own tokens (for example, Authorization: Bearer ...).

Before finishing, use "Test delivery" to send a sample payload (with its HMAC signature) and see your endpoint's response. You can choose the test payload type (for example, "Generic ping").


Step 2: Events

Choose which events to subscribe to. There are 18 events grouped into four categories; select only the ones you need.

Conversations

Lifecycle of each conversation: creation, status changes, owners, tags, and expiration.

EventWhen it fires
conversation.createdNew conversation created in the workspace.
conversation.status.updatedConversation status updated (open, pending, finished, spam, …).
conversation.operation.updatedOperation / pipeline assigned to the conversation.
conversation.owners.updatedConversation owners added or removed.
conversation.tags.updatedConversation tags added or removed.
conversation.expiredConversation expired (for example, WhatsApp's 24h window).

Messages

Individual messages within a conversation: creation, update, and deletion.

EventWhen it fires
message.createdNew message created in a conversation.
message.updatedMessage updated (status, edited content, etc.).
message.deletedMessage deleted.

Customers

Changes to the customer profile: basic data, owners, tags, and custom fields.

EventWhen it fires
client.createdNew customer created.
client.updatedCustomer updated (basic data).
client.owners.updatedCustomer owners added or removed.
client.tags.updatedCustomer tags added or removed.
client.customFields.updatedChanges to the customer's custom fields.

WhatsApp Flows

Interactions with WhatsApp Flows. Your endpoint must respond with JSON in under 700 ms.

EventWhen it fires
whatsapp.flows.initStart of a WhatsApp Flow (action INIT from Meta).
whatsapp.flows.screen_advanceScreen advance in the flow (action data_exchange).
whatsapp.flows.backReturn to the previous screen (action BACK).
whatsapp.flows.exchanges"Umbrella" subscription: receives init, screen_advance, and back in a single webhook.

Step 3: Done

The webhook is created and Platica will start delivering events as soon as they happen.

From here you can "Back to list" or go to "View details", where you'll find the delivery logs for each event.


Managing your webhooks

The list shows all the webhooks you've created, with their status (active), whether they're Signed (a secret is configured), the URL, and how many events they're subscribed to. You can sort them by Recent or Alphabetical and search by name.

Webhook detail

Opening a webhook shows at a glance its status (Active), the URL, the signature (with or without a secret), and the number of subscribed events, plus a shortcut to Logs.

Recent deliveries lists the last 5 deliveries with their status, event, HTTP code, and latency. Use "Test" to send a test event (you can choose which one) or "View full history" to open the logs.

Configuration

From the configuration you can change the name, the URL, add or remove the signing secret, manage custom headers, and adjust which events it's subscribed to.

Delivery logs

The full history of delivery attempts for this webhook. Records are kept for 30 days and then deleted automatically.

At the top you'll see aggregate metrics: Total, Successes, Errors, Error rate, and P50 / P95 latencies. You can filter by All / Successes / Errors, filter by event, search, and Export the history as JSON or CSV.

Expanding a delivery shows its full detail:

FieldDescription
URLThe endpoint the event was delivered to.
Event IDUnique identifier of the event.
HTTPYour endpoint's response code (for example, 429 Too many requests).
ExpiresDate when the record will be deleted (after 30 days).
Request bodyThe JSON payload Platica sent.
Response bodyThe response your endpoint returned.