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

# Mensagem de Endereço

> Solicite ou envie informações de endereço via WhatsApp usando o tipo ADDRESS_MESSAGE

# Mensagem de Endereço

O tipo `ADDRESS_MESSAGE` é usado para solicitar e coletar informações de endereço do destinatário no WhatsApp. O formulário de endereço exibido é definido pelo país (`country`), e você pode enviar valores pré-preenchidos através do objeto opaco `values`.

<Note>
  Os campos aceitos no formulário de endereço variam de acordo com o país. O conteúdo de `values` é repassado de forma opaca ao provedor, sem interpretação pela plataforma.
</Note>

## Payload

```json theme={null}
{
  "channelId": "uuid-do-canal",
  "content": {
    "type": "ADDRESS_MESSAGE",
    "to": {
      "type": "WHATSAPP",
      "number": "5511999999999"
    },
    "country": "BR"
  }
}
```

## Campos

<ParamField body="content.type" type="string" required>
  Deve ser `"ADDRESS_MESSAGE"`.
</ParamField>

<ParamField body="content.to" type="Address" required>
  Endereço do destinatário. Veja [formatos de endereço](/mensagens/visao-geral#enderecamento-address).
</ParamField>

<ParamField body="content.country" type="string" required>
  Código do país que determina o formato do formulário de endereço (ex.: `"BR"`, `"IN"`). Os campos e a validação do endereço dependem do país informado.
</ParamField>

<ParamField body="content.values" type="object">
  Objeto JSON opaco com os valores do endereço a serem pré-preenchidos. A estrutura depende do país e do provedor; a plataforma repassa o conteúdo verbatim, sem validar. Omita quando não houver valores a pré-preencher.
</ParamField>

### Campos opcionais comuns

<ParamField body="content.quotedMessage" type="QuotedMessage">
  Referência a uma mensagem anterior para enviar como resposta (quote/reply).
</ParamField>

<ParamField body="content.deliveryStrategy" type="string">
  Estratégia de entrega da mensagem. Padrão `DEFAULT`.
</ParamField>

<ParamField body="content.priority" type="integer">
  Prioridade de entrega, de `1` (mais alta) a `5`.
</ParamField>

<ParamField body="content.deliveryDeadline" type="string">
  Prazo limite (ISO 8601) para a entrega da mensagem.
</ParamField>

## Exemplos

### Solicitação de endereço simples

<CodeGroup>
  ```bash cURL theme={null}
  curl -X POST https://api-dev.messagefy.io/api/v1/message/SendMessage \
    -H "Content-Type: application/json" \
    -H "X-API-KEY: sua-api-key-aqui" \
    -d '{
      "channelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
      "content": {
        "type": "ADDRESS_MESSAGE",
        "to": {
          "type": "WHATSAPP",
          "number": "5511999999999"
        },
        "country": "BR"
      }
    }'
  ```

  ```python Python theme={null}
  import requests

  response = requests.post(
      "https://api-dev.messagefy.io/api/v1/message/SendMessage",
      headers={
          "Content-Type": "application/json",
          "X-API-KEY": "sua-api-key-aqui"
      },
      json={
          "channelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
          "content": {
              "type": "ADDRESS_MESSAGE",
              "to": {
                  "type": "WHATSAPP",
                  "number": "5511999999999"
              },
              "country": "BR"
          }
      }
  )
  print(response.json())
  ```

  ```javascript Node.js theme={null}
  const response = await fetch(
    "https://api-dev.messagefy.io/api/v1/message/SendMessage",
    {
      method: "POST",
      headers: {
        "Content-Type": "application/json",
        "X-API-KEY": "sua-api-key-aqui",
      },
      body: JSON.stringify({
        channelId: "3fa85f64-5717-4562-b3fc-2c963f66afa6",
        content: {
          type: "ADDRESS_MESSAGE",
          to: {
            type: "WHATSAPP",
            number: "5511999999999",
          },
          country: "BR",
        },
      }),
    }
  );
  const data = await response.json();
  console.log(data);
  ```
</CodeGroup>

### Com valores pré-preenchidos

O objeto `values` permite enviar dados já conhecidos do destinatário. A estrutura interna é opaca e definida pelo país/provedor:

```json theme={null}
{
  "channelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "content": {
    "type": "ADDRESS_MESSAGE",
    "to": {
      "type": "WHATSAPP",
      "number": "5511999999999"
    },
    "country": "BR",
    "values": {
      "name": "Maria Silva",
      "city": "Sao Paulo",
      "state": "SP"
    }
  }
}
```

<Warning>
  Os nomes de campo dentro de `values` mostrados acima são ilustrativos. Envie apenas o conjunto de chaves suportado pelo formulário do país (`country`) e pelo provedor de destino -- a plataforma não valida esse conteúdo.
</Warning>

### Respondendo a uma mensagem (Quote/Reply)

```json theme={null}
{
  "channelId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "content": {
    "type": "ADDRESS_MESSAGE",
    "to": {
      "type": "WHATSAPP",
      "number": "5511999999999"
    },
    "country": "BR",
    "quotedMessage": {
      "messageId": "20CFBA298FAB68AA75D3B369EDB5C805",
      "participant": "5511999999999@s.whatsapp.net",
      "body": "Qual o endereco de entrega?",
      "type": "TEXT"
    }
  }
}
```

## Resposta

```json theme={null}
{
  "packageId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
```

O `packageId` retornado é um identificador de rastreamento do pacote enviado. Use-o, junto com o `correlationId` que você mesmo informar no envelope, para correlacionar a mensagem com os webhooks de status.

<Tip>
  A disponibilidade do formulário de endereço e o conjunto de países suportados dependem do provedor de destino. Confirme o suporte antes de usar `ADDRESS_MESSAGE` em produção.
</Tip>
