> ## 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.

# whatsapp.meta_business_agent.handover.updated

> Ocorre quando um callback de handover compatível transfere o controle para fora de um Public REST API Agent. Não confirma a atribuição no Inbox.

Use `whatsapp.meta_business_agent.handover.updated` para processar este evento em seu endpoint de webhook.

## Gatilhos

Ocorre quando um callback de handover compatível transfere o controle para fora de um Public REST API Agent. Não confirma a atribuição no Inbox.

Assine `whatsapp.meta_business_agent.handover.updated` ao [configurar seu endpoint de webhook](https://docs.ycloud.com/pt/api-reference/guides/api-fundamentals/configure-webhooks.md).

Este evento é limitado a Agents integrados por meio da Public REST API. Ele informa que o controle foi transferido para fora do Agent. Ele não confirma a atribuição no Inbox.

## Sintaxe

A YCloud envia uma solicitação HTTP `POST` para a URL de webhook configurada. A estrutura a seguir mostra uma variante do payload. Os valores entre colchetes angulares são marcadores de posição; seus tipos estão listados em **Parâmetros**. Campos opcionais e outras variantes são descritos abaixo.

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "id": "<ID>",
  "type": "whatsapp.meta_business_agent.handover.updated",
  "apiVersion": "<API_VERSION>",
  "createTime": "<CREATE_TIME>",
  "whatsappMetaBusinessAgent": {
    "agentId": "<AGENT_ID>",
    "metaAgentId": "<META_AGENT_ID>",
    "phoneNumberId": "<PHONE_NUMBER_ID>",
    "wabaId": "<WABA_ID>",
    "consumerPhoneNumber": "<CONSUMER_PHONE_NUMBER>",
    "controlState": "<CONTROL_STATE>",
    "actor": "<ACTOR>",
    "reason": "<REASON>",
    "timestamp": "<TIMESTAMP_VALUE>"
  }
}
```

## Parâmetros

Valide o cabeçalho HTTP `YCloud-Signature` antes de processar o corpo JSON. Consulte [validação de assinatura](https://docs.ycloud.com/pt/api-reference/guides/api-fundamentals/configure-webhooks.md).

### Envelope do evento

| Parâmetro | Tipo | Obrigatório | Descrição |
| - | - | - | - |
| `id` | string | Sim | ID exclusivo do evento. Tamanho mínimo: `6`. Tamanho máximo: `128`. |
| `type` | string | Sim | Sempre `whatsapp.meta_business_agent.handover.updated`. |
| `apiVersion` | string | Sim | A versão da API usada para renderizar este evento. |
| `createTime` | string (data e hora) | Sim | O momento em que este evento foi criado, formatado em [RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339). Ex.: `2022-06-01T12:00:00.000Z`. |

### Payload do evento

| Parâmetro | Tipo | Obrigatório | Descrição |
| - | - | - | - |
| `whatsappMetaBusinessAgent` | object | Sim | Payload específico do evento `whatsappMetaBusinessAgent`. |

Os quatro campos comuns do envelope são obrigatórios. Os campos de payload dependem da variante do evento. Em cada tabela de objetos, **Obrigatório** se aplica quando o objeto pai correspondente estiver presente. Campos opcionais podem ser omitidos; um exemplo não torna um campo obrigatório.

#### whatsappMetaBusinessAgent

| Parâmetro | Tipo | Obrigatório | Descrição |
| - | - | - | - |
| `agentId` | string | Não | ID de Agent da YCloud. Não é um ID de Agent da Meta nem um ID de responsável no Inbox. |
| `metaAgentId` | string | Não | ID de Agent da Meta, quando disponível. |
| `phoneNumberId` | string | Não | ID do número de telefone comercial da Meta. Não é um número de telefone no formato E.164. |
| `wabaId` | string | Não | ID da conta do WhatsApp Business do callback de origem, quando disponível. |
| `consumerPhoneNumber` | string | Não | Número de telefone do cliente do callback de handover, normalizado para E.164 quando disponível. Este não é o número da empresa nem o phoneNumberId.Padrão: `^+[1-9][0-9]{7,14}$`. |
| `controlState` | string | Não | Presente para eventos de handover. Atualmente APP\_CONTROL\_TAKEN para callbacks de handover da Public REST API. Não confirma a atribuição no Inbox nem a entrega de mensagens. |
| `actor` | string | Não | Ator de origem opcional do handover. Para uma transferência com control\_passed, este é o ID do aplicativo do proprietário anterior, não o funcionário que recebe a conversa. |
| `reason` | string | Não | Motivo ou metadados opcionais de handover do provedor, por exemplo customer\_request. Não é um enum fechado. |
| `timestamp` | integer (int64) | Não | Horário do evento de origem em milissegundos Unix, ou horário de processamento se indisponível. |

## Exemplo

O JSON a seguir é o corpo entregue ao seu receptor. IDs, números de telefone e outros valores de conta são ilustrativos.

APP\_CONTROL\_TAKEN informa a transferência de controle, não uma atribuição de funcionário no Inbox ou a entrega de mensagem personalizada de transferência. actor é o ID do aplicativo do proprietário anterior neste exemplo.

```json theme={"theme":{"light":"github-light","dark":"github-dark"}}
{
  "id": "evt_example_agent_handover",
  "type": "whatsapp.meta_business_agent.handover.updated",
  "apiVersion": "v2",
  "createTime": "2026-09-09T02:00:04.000Z",
  "whatsappMetaBusinessAgent": {
    "agentId": "00000000-0000-4000-8000-000000000001",
    "metaAgentId": "META_AGENT_ID",
    "phoneNumberId": "PHONE_NUMBER_ID",
    "wabaId": "WABA_ID",
    "consumerPhoneNumber": "+12025550124",
    "controlState": "APP_CONTROL_TAKEN",
    "actor": "PREVIOUS_OWNER_APP_ID",
    "reason": "customer_request",
    "timestamp": 1788919204000
  }
}
```

Após verificar a assinatura e aceitar o evento de forma duradoura, retorne uma resposta `2xx`. Processe tarefas lentas de forma assíncrona.

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

Para demonstrações passo a passo de cenários, consulte os [exemplos anotados](https://docs.ycloud.com/pt/api-reference/guides/examples/webhook-examples/whatsapp-meta-business-agent-handover-updated).


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