Mensajes de solicitud de ubicación

Los mensajes de solicitud de ubicación muestran el texto del cuerpo y un botón de envío de ubicación. Cuando un usuario de WhatsApp toca el botón, se muestra una pantalla que indica la ubicación que el usuario puede usar para compartir la ubicación.


Una vez que el usuario comparte su ubicación, se activa un webhook de mensajes, que contiene los detalles de la ubicación del usuario.

Enviar mensajes de solicitud de ubicación

Usa el punto de conexión POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/messages para enviar un mensaje de solicitud de ubicación a un usuario de WhatsApp.

Sintaxis de la solicitud

POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/messages

Cuerpo de la solicitud POST

{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "type": "interactive",
  "to": "<WHATSAPP_USER_PHONE_NUMBER>",
  "interactive": {
    "type": "location_request_message",
    "body": {
      "text": "<BODY_TEXT>"
    },
    "action": {
      "name": "send_location"
    }
  }
}

Parámetros del cuerpo de la solicitud

Marcador de posiciónDescripciónValor de ejemplo

<BODY_TEXT>

Cadena

Obligatorio.

Texto del cuerpo del mensaje. Admite URL.

No debe superar los 1.024 caracteres.

Let's start with your pickup. You can either manually *enter an address* or *share your current location*.

<WHATSAPP_USER_PHONE_NUMBER>

String

Required.

WhatsApp user phone number.

+16505551234

Respuesta

En caso de éxito:

{
  "messaging_product": "whatsapp",
  "contacts": [
    {
      "input": "<WHATSAPP_USER_PHONE_NUMBER>",
      "wa_id": "<WHATSAPP_USER_ID>"
    }
  ],
  "messages": [
    {
      "id": "<WHATSAPP_MESSAGE_ID>",
      "message_status": "<PACING_STATUS>"
    }
  ]
}

Contenido de la respuesta

PlaceholderDescriptionSample Value

<WHATSAPP_USER_PHONE_NUMBER>

String

WhatsApp user's WhatsApp phone number. May not match wa_id value.

+16505551234

<WHATSAPP_USER_ID>

String

WhatsApp user's WhatsApp ID. May not match input value.

16505551234

<WHATSAPP_MESSAGE_ID>

String

WhatsApp Message ID. This ID appears in associated messages webhooks, such as sent, read, and delivered webhooks.

wamid.HBgLMTY0NjcwNDM1OTUVAgARGBI4MjZGRDA0OUE2OTQ3RkEyMzcA

<PACING_STATUS>

String

Indicates template pacing status. The message_status property is only included in responses when sending a template message that uses a template that is being paced.

wamid.HBgLMTY0NjcwNDM1OTUVAgARGBI4MjZGRDA0OUE2OTQ3RkEyMzcA

Webhook

Cuando un usuario de WhatsApp comparte su ubicación como respuesta a tu mensaje, se activa un webhook de mensajes que contiene los detalles de la ubicación del usuario.

{
  "object": "whatsapp_business_account",
  "entry": [
    {
      "id": "<WHATSAPP_BUSINESS_ACCOUNT_ID>",
      "changes": [
        {
          "value": {
            "messaging_product": "whatsapp",
            "metadata": {
              "display_phone_number": "<WHATSAPP_BUSINESS_DISPLAY_PHONE_NUMBER>",
              "phone_number_id": "<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>"
            },
            "contacts": [
              {
                "profile": {
                  "name": "<WHATSAPP_USER_NAME>"
                },
                "wa_id": "<WHATSAPP_USER_ID>"
              }
            ],
            "messages": [
              {
                "context": {
                  "from": "<WHATSAPP_BUSINESS_PHONE_NUMBER>",
                  "id": "<WHATSAPP_CONTEXT_MESSAGE_ID>"
                },
                "from": "<WHATSAPP_USER_ID>",
                "id": "<WHATSAPP_MESSAGE_ID>",
                "timestamp": "<TIMESTAMP>",
                "location": {
                  "address": "<LOCATION_ADDRESS>",
                  "latitude": <LOCATION_LATITUDE>,
                  "longitude": <LOCATION_LONGITUDE>,
                  "name": "<LOCATION_NAME>"
                },
                "type": "location"
              }
            ]
          },
          "field": "messages"
        }
      ]
    }
  ]
}

Contenido del webhook

Marcador de posiciónDescripciónValor de ejemplo

<LOCATION_ADDRESS>

Cadena

Dirección de la ubicación.

Este parámetro solo aparecerá si el usuario de WhatsApp decide compartirlo.

1071 5th Ave, New York, NY 10128

<LOCATION_LATITUDE>

Número

Latitud de la ubicación en grados decimales.

40.782910059774

<LOCATION_LONGITUDE>

Número

Longitud de la ubicación en grados decimales.

-73.959075808525

<LOCATION_NAME>

Cadena

Nombre de la ubicación.

Este parámetro solo aparecerá si el usuario de WhatsApp decide compartirlo.

Solomon R. Guggenheim Museum

<TIMESTAMP>

Cadena

Marca de tiempo de UNIX que indica cuándo procesaron nuestros servidores el mensaje del usuario de WhatsApp.

1702920965

<WHATSAPP_BUSINESS_ACCOUNT_ID>

Cadena

Identificador de la cuenta de WhatsApp Business.

102290129340398

<WHATSAPP_BUSINESS_DISPLAY_PHONE_NUMBER>

Cadena

Número de teléfono de WhatsApp Business que se muestra.

15550783881

<WHATSAPP_BUSINESS_PHONE_NUMBER>

Cadena

Números de teléfono de WhatsApp Business.

15550783881

<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>

Cadena

Identificador del número de teléfono de WhatsApp Business.

106540352242922

<WHATSAPP_CONTEXT_MESSAGE_ID>

Cadena

Identificador de mensaje de WhatsApp al que el usuario responde.

wamid.HBgLMTY0NjcwNDM1OTUVAgARGBI1QjJGRjI1RDY0RkE4Nzg4QzcA

<WHATSAPP_MESSAGE_ID>

Cadena

Identificador de mensaje de WhatsApp del mensaje del usuario.

wamid.HBgLMTY0NjcwNDM1OTUVAgASGBQzQTRCRDcwNzgzMTRDNTAwRTgwRQA=

<WHATSAPP_USER_ID>

Cadena

Identificador de WhatsApp del usuario de WhatsApp.

16505551234

<WHATSAPP_USER_NAME>

Cadena

Nombre de usuario de WhatsApp.

Pablo Morales

Ejemplo de solicitud

curl 'https://graph.facebook.com/v21.0/106540352242922/messages' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
  "messaging_product": "whatsapp",
  "recipient_type": "individual",
  "type": "interactive",
  "to": "+16505551234",
  "interactive": {
    "type": "location_request_message",
    "body": {
      "text": "Let us start with your pickup. You can either manually *enter an address* or *share your current location*."
    },
    "action": {
      "name": "send_location"
    }
  }
}'

Ejemplo de respuesta

{
  "messaging_product": "whatsapp",
  "contacts": [
    {
      "input": "+16505551234",
      "wa_id": "16505551234"
    }
  ],
  "messages": [
    {
      "id": "wamid.HBgLMTY0NjcwNDM1OTUVAgARGBJCNUQ5RUNBNTk3OEQ2M0ZEQzgA"
    }
  ]
}

Ejemplo de webhook

{
  "object": "whatsapp_business_account",
  "entry": [
    {
      "id": "102290129340398",
      "changes": [
        {
          "value": {
            "messaging_product": "whatsapp",
            "metadata": {
              "display_phone_number": "15550783881",
              "phone_number_id": "106540352242922"
            },
            "contacts": [
              {
                "profile": {
                  "name": "Pablo Morales"
                },
                "wa_id": "16505551234"
              }
            ],
            "messages": [
              {
                "context": {
                  "from": "15550783881",
                  "id": "wamid.HBgLMTY0NjcwNDM1OTUVAgARGBI1QjJGRjI1RDY0RkE4Nzg4QzcA"
                },
                "from": "16505551234",
                "id": "wamid.HBgLMTY0NjcwNDM1OTUVAgASGBQzQTRCRDcwNzgzMTRDNTAwRTgwRQA=",
                "timestamp": "1702920965",
                "location": {
                  "address": "1071 5th Ave, New York, NY 10128",
                  "latitude": 40.782910059774,
                  "longitude": -73.959075808525,
                  "name": "Solomon R. Guggenheim Museum"
                },
                "type": "location"
              }
            ]
          },
          "field": "messages"
        }
      ]
    }
  ]
}