Skip to main content
For the exhaustive schema-derived catalog, see all examples.

What it is

Handle WhatsApp call status updates.

Before you begin

  • Create a public HTTPS endpoint in your application.
  • Configure a YCloud webhook endpoint for the event types you need.
  • Store the endpoint signing secret securely.
  • Make event processing idempotent.

How it works

YCloud sends an HTTP POST request when the event occurs. Verify the signature, durably record the event, return a 2xx response, and process slow work asynchronously.

Request

The scenarios below show requests delivered to your webhook URL. Treat the event id as the delivery identifier and use type to route the payload.

Response

Return a 2xx status after accepting the event.
For endpoint setup, signature validation, and retry behavior, see Configure webhooks.

When a business calls a WhatsApp user, it receives a status webhook with the call state: RINGING, ACCEPTED, or REJECTED.

Business initiated call is ringing the user

When the WhatsApp user’s client device begins ringing:

Request

Response

Acknowledge the delivery after durably accepting the event.

Explanation

Route the event by type, deduplicate it by id, and move slow or failure-prone work to an asynchronous processor.

Business initiated call is accepted by the user

When the WhatsApp user accepts the call:

Request

Response

Acknowledge the delivery after durably accepting the event.

Explanation

Route the event by type, deduplicate it by id, and move slow or failure-prone work to an asynchronous processor.

Business initiated call is rejected by the user

When the call is rejected by the WhatsApp user. You’ll also receive the call terminate webhook in this case:

Request

Response

Acknowledge the delivery after durably accepting the event.

Explanation

Route the event by type, deduplicate it by id, and move slow or failure-prone work to an asynchronous processor.