> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ycloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Exemplos de Webhook de Calling Connect do WhatsApp

> Processe eventos de conexão de chamada do WhatsApp.

<Note>Para o catálogo completo derivado do esquema, consulte [todos os exemplos](/pt/api-reference/guides/examples/webhook-examples/webhook-payload-examples).</Note>

## O que é

Processe eventos de conexão de chamada do WhatsApp.

## Antes de começar

* Crie um endpoint HTTPS público em sua aplicação.
* Configure um endpoint de webhook da YCloud para os tipos de evento de que você precisa.
* Armazene o segredo de assinatura do endpoint com segurança.
* Torne o processamento de eventos idempotente.

## Como funciona

A YCloud envia uma solicitação HTTP `POST` quando o evento ocorre. Verifique a assinatura, registre o evento de forma duradoura, retorne uma resposta `2xx` e processe tarefas lentas de forma assíncrona.

## Requisição

Os cenários abaixo mostram solicitações entregues à sua URL de webhook. Trate o `id` do evento como o identificador de entrega e use `type` para rotear o payload.

## Resposta

Retorne um status `2xx` após aceitar o evento.

```http theme={"theme":{"light":"github-light","dark":"github-dark"}}
HTTP/1.1 200 OK
```

<Note>Para configuração de endpoint, validação de assinatura e comportamento de novas tentativas, consulte [Configurar webhooks](/pt/api-reference/guides/api-fundamentals/configure-webhooks).</Note>

## Calling Connect iniciado pelo usuário

Quando um usuário do WhatsApp liga para a sua empresa, um webhook de Call Connect será disparado com uma SDP Offer:

### Requisição

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "id": "evt_6757b723a5a42d369ef48480",
  "type": "whatsapp.call.connect",
  "apiVersion": "v2",
  "createTime": "2024-12-10T03:36:03.749Z",
  "callingConnect": {
    "id": "6757b723960b25543b9ecc66",
    "wacid": "wacid.HBgNNjI4MTM2MTkwNTEzMxrtLopSdPMwd",
    "phoneId": "461269257068832",
    "from": "+6281361905133",
    "fromUserId": "ID.13491208655302741918",
    "fromParentUserId": "ID.11815799212886844830",
    "to": "+6283138205150",
    "direction": "USER_INITIATED",
    "sdpType": "offer",
    "sdp": "<<RFC 4566 SDP>>"
  }
}
```

### Resposta

Confirme a entrega após aceitar o evento de forma duradoura.

```http theme={"theme":{"light":"github-light","dark":"github-dark"}}
HTTP/1.1 200 OK
```

<br />

### Explicação

Roteie o evento por `type`, remova duplicatas por `id` e mova tarefas lentas ou propensas a falhas para um processador assíncrono.

## Calling Connect iniciado pela empresa

Quando a empresa inicia uma nova chamada para o usuário do WhatsApp, um webhook de Call Connect será disparado com uma SDP Answer:

### Requisição

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "id": "evt_676e5a0d7a9cb742d02d7645",
  "type": "whatsapp.call.connect",
  "apiVersion": "v2",
  "createTime": "2024-12-27T07:41:01.554Z",
  "callingConnect": {
    "id": "676e5a0d94c533526d3c5ad5",
    "wacid": "wacid.HBgNNjI4MTM2MTkwNTEzMxUCABE",
    "phoneId": "461269257068832",
    "from": "+6283138205150",
    "to": "+6281361905133",
    "toUserId": "ID.13491208655302741918",
    "toParentUserId": "ID.11815799212886844830",
    "direction": "BUSINESS_INITIATED",
    "sdpType": "answer",
    "sdp": "<<RFC 4566 SDP>>",
    "dialTime": 1735283452000
  }
}
```

### Resposta

Confirme a entrega após aceitar o evento de forma duradoura.

```http theme={"theme":{"light":"github-light","dark":"github-dark"}}
HTTP/1.1 200 OK
```

<br />

### Explicação

Roteie o evento por `type`, remova duplicatas por `id` e mova tarefas lentas ou propensas a falhas para um processador assíncrono.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.