header, body, footer e action. Dentro do componente de ação, a empresa especifica o nome “address_message” e os parâmetros relevantes.| Nome do campo | Etiqueta de exibição | Tipo de entrada | Países compatíveis | Limitações |
|---|---|---|---|---|
name | Nome | text | Índia | Nenhum |
phone_number | Número de telefone | tel | Índia | Somente números de telefone válidos |
in_pin_code | Código PIN | text | Índia | Comprimento máximo: 6 |
house_number | Número do apartamento/casa | text | Índia | Nenhum |
floor_number | Número do andar | text | Índia | Nenhum |
tower_number | Número da torre | text | Índia | Nenhum |
building_name | Nome do edifício/apartamento | text | Índia | Nenhum |
address | Endereço | text | Índia | Nenhum |
landmark_area | Ponto de referência/área | text | Índia | Nenhum |
city | Cidade | text | Índia | Nenhum |
state | Estado | text | Índia | Nenhum |
country é um campo obrigatório nos parâmetros de ação. Se ele não for incluído, ocorrerá um erro de validação.curl -X POST \
'https://graph.facebook.com/<API_VERSION>/<FROM_PHONE_NUMBER_ID>/messages' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Content-Type: application/json' \
-d '
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "<PHONE_NUMBER>",
"type": "interactive",
"interactive": {
"type": "address_message",
"body": {
"text": "Thanks for your order! Tell us what address you’d like this order delivered to."
},
"action": {
"name": "address_message",
"parameters": {
"country": "<COUNTRY_ISO_CODE>"
}
}
}
}'
address_message




values, validation_errors ou saved_addresses) como parte dos parâmetros de ação interativos. Confira abaixo mais informações sobre o uso de cada um deles.| Parâmetro de ação | Uso |
|---|---|
values | As empresas preenchem automaticamente os campos de endereço (por exemplo, preenchem automaticamente o campo "city" com "Índia") |
saved_addresses | Para empresas, é possível transmitir endereços salvos anteriormente associados ao usuário. Para usuários, eles terão a opção de escolher o endereço salvo em vez de preenchê-lo manualmente |
validation_errors | As empresas podem indicar erros nos campos de endereço e o WhatsApp impedirá que o usuário envie o formulário antes que os problemas sejam corrigidos. |
POST a /PHONE_NUMBER_ID/messages usando a API do WhatsApp para enviar mensagens de endereço criptografadas de ponta a ponta para o usuário:curl -X POST \
'https://graph.facebook.com/<API_VERSION>/<FROM_PHONE_NUMBER_ID>/messages' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Content-Type: application/json' \
-d '
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "<PHONE_NUMBER>",
"type": "interactive",
"interactive": {
"type": "address_message",
"body": {
"text": "Thanks for your order! Tell us what address you’d like this order delivered to."
},
"action": {
"name": "address_message",
"parameters": "JSON Payload"
}
}
}'
curl -X POST \
'https://graph.facebook.com/<API_VERSION>/<FROM_PHONE_NUMBER_ID>/messages' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Content-Type: application/json' \
-d '
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "+91xxxxxxxxxx",
"type": "interactive",
"interactive": {
"type": "address_message",
"body": {
"text": "Thanks for your order! Tell us what address you’d like this order delivered to."
},
"action": {
"name": "address_message",
"parameters": {
"country": "IN",
"values": {
"name": "<CUSTOMER_NAME>",
"phone_number": "+91xxxxxxxxxx"
}
}
}
}
}'
curl -X POST \
'https://graph.facebook.com/<API_VERSION>/<FROM_PHONE_NUMBER_ID>/messages' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Content-Type: application/json' \
-d '
{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "91xxxxxxxxxx",
"type": "interactive",
"interactive": {
"type": "address_message",
"body": {
"text": "Thanks for your order! Tell us what address you’d like this order delivered to."
},
"action": {
"name": "address_message",
"parameters": {
"country": "IN",
"saved_addresses": [
{
"id": "address1",
"value": {
"name": "<CUSTOMER_NAME>",
"phone_number": "+91xxxxxxxxxx",
"in_pin_code": "400063",
"floor_number": "8",
"building_name": "",
"address": "Wing A, Cello Triumph,IB Patel Rd",
"landmark_area": "Goregaon",
"city": "Mumbai"
}
}
]
}
}
}
}'
messages com a identificação da mensagem recém-criada.{
"messaging_product": "whatsapp",
"contacts": [
{
"input": "<PHONE_NUMBER>",
"wa_id": "<WHATSAPP_ID>"
}
],
"messages": [
{
"id": "wamid.ID"
}
]
}
curl -X POST \
'https://graph.facebook.com/<API_VERSION>/<FROM_PHONE_NUMBER_ID>/messages' \
-H 'Authorization: Bearer <ACCESS_TOKEN>' \
-H 'Content-Type: application/json' \
-d
'{
"messaging_product": "whatsapp",
"recipient_type": "individual",
"to": "91xxxxxxxxxx",
"type": "interactive",
"interactive": {
"type": "address_message",
"body": {
"text": "Thanks for your order! Tell us what address you’d like this order delivered to."
},
"action": {
"name": "address_message",
"parameters": {
"country": "IN",
"values": {
"name": "CUSTOMER_NAME",
"phone_number": "+91xxxxxxxxxx",
"in_pin_code": "666666",
"address": "Some other location",
"city": "Delhi"
},
"validation_errors": {
"in_pin_code": "We could not locate this pin code."
}
}
}
}
}'
{ "messages": [ { "id": "gBGGFlAwCWFvAgmrzrKijase8yA", "from": "<PHONE_NUMBER>", "interactive": { "type": "interactive", "action": "address_message", "nfm_reply": { "name": "address_message", "response_json": "<response_json from client>", "body": "<body text from client>" }, "timestamp": "1670394125" } } ] }
| Nome do campo | Tipo | Descrição |
|---|---|---|
interactive | Objeto | Contém a resposta do cliente |
type | String | Seria nfm_reply, indicando que se trata de uma resposta do fluxo nativo (NFM) do cliente |
nfm_reply | Objeto | Contém os dados recebidos do cliente |
response_json | String | Os valores dos campos de endereço preenchidos pelo usuário no formato JSON que sempre estão presentes |
body (opcional) | String | O corpo do texto do cliente, o que o usuário vê |
name (opcional) | String | Seria address_message, indicando o tipo de resposta de ação NFM do cliente |
{
"messages": [
{
"context": {
"from": "FROM_PHONE_NUMBER_ID",
"id": "wamid.HBgLMTIwNjU1NTAxMDcVAgARGBI3NjNFN0U5QzMzNDlCQjY0M0QA"
},
"from": "<PHONE_NUMBER>",
"id": "wamid.HBgLMTIwNjU1NTAxMDcVAgASGCA5RDhBNENEMEQ3RENEOEEzMEI0RUExRDczN0I1NThFQwA=",
"timestamp": "1671498855",
"type": "interactive",
"interactive": {
"type": "nfm_reply",
"nfm_reply": {
"response_json": "{\"saved_address_id\":\"address1\",\"values\":{\"in_pin_code\":\"400063\",\"building_name\":\"\",\"landmark_area\":\"Goregaon\",\"address\":\"Wing A, Cello Triumph, IB Patel Rd\",\"city\":\"Mumbai\",\"name\":\"CUSTOMER_NAME\",\"phone_number\":\"+91xxxxxxxxxx\",\"floor_number\":\"8\"}}",
"body": "CUSTOMER_NAME\n +91xxxxxxxxxx\n 400063, Goregaon, Wing A, Cello Triumph,IB Patel Rd, Mumbai, 8",
"name": "address_message"
}
}
}
]
}
address_message, as mensagens serão removidas silenciosamente. Além disso, a empresa receberá uma mensagem de erro por meio do webhook. Confira abaixo a notificação enviada por webhook:{ "statuses": [ { "errors": [ { "code": 1026, "href": "/docs/whatsapp/api/errors", "title": "Receiver Incapable" } ], "id": "gBGGFlAwCWFvAgkyHMGKnRu4JeA", "message": { "recipient_id": "+91xxxxxxxxxx" }, "recipient_id": "91xxxxxxxxxx", "status": "failed", "timestamp": "1670394125", "type": "message" } ] }