Enviar un mensaje

El presente documento contiene los requisitos para poder enviar mensajes de forma libre desde tu cuenta profesional de Instagram a tus clientes o a personas interesadas en tu cuenta mediante la plataforma de Messenger from Meta.

Puedes enviar un mensaje de texto libre que contiene los siguientes elementos:

  • una imagen, un gif, un video o un audio
  • una reacción o un sticker
  • texto, incluso un enlace

Antes de empezar

En esta guía, se asume que leíste la información general sobre la plataforma de Messenger, implementaste los componentes necesarios, como una página de Facebook vinculada a tu cuenta profesional de Instagram (o una página de prueba), te registraste como desarrollador de Meta y creaste un identificador de la app de negocios con Messenger > Producto de mensajes de Instagram en el panel de apps.

También es posible que desees verificar el estado de la plataforma para desarrolladores de Meta para asegurarte de que no haya errores.

Requisitos

  • El identificador de la página de Facebook vinculado a tu cuenta profesional de Instagram.
  • El identificador específico de Instagram del cliente que envió un mensaje a tu negocio.
  • Un token de acceso a la página solicitado por una persona que pueda realizar la tarea MESSAGE en la página de Facebook vinculada a tu cuenta profesional de Instagram.
  • El permiso instagram_manage_messages

Limitaciones

  • Las apps con acceso estándar solo pueden enviar mensajes a las personas que tienen un rol en ellas.
  • Los archivos multimedia adjuntos pueden de los siguientes tipos:
Tipo de archivoFormato admitidoTamaño máximo admitido

Audio

acc, m4a, wav, mp4

25 MB

Imagen

png, jpeg, gif

8 MB

Video

mp4, ogg, avi, mov, webm

25 MB

Para obtener más información sobre los archivos multimedia adjuntos, consulta Subir contenido multimedia para mensajes de Instagram.

Enviar un mensaje básico

Para usar un mensaje que contenga texto o un enlace, envía una solicitud POST al punto de conexión /PAGE-ID/messages con el parámetro recipient que contenga el identificador específico de Instagram y el parámetro message que contenga el texto o el enlace.

El texto del mensaje debe estar codificado en UTF-8 y no tener más de 1.000 bytes. Los enlaces deben ser URL con formato válido.

Ejemplo de solicitud

El formato se modificó para facilitar la lectura.

curl -i -X POST \
  "https://graph.facebook.com/LATEST-API-VERSION/me/messages?access_token=PAGE-ACCESS-TOKEN" \
  --data 'recipient={"id":"IGSID"}&message={"text":"TEXT-OR-LINK"}'

Ejemplo de respuesta de la API

Si la operación se completa correctamente, tu app recibirá la siguiente respuesta JSON:

{
  "recipient_id": "IGSID",
  "message_id": "MESSAGE-ID"
}

Enviar una publicación

Para enviar un mensaje que contenga una publicación que hiciste en Instagram, envía una solicitud POST al punto de conexión /PAGE-ID/messages con el parámetro recipient que contenga el identificador específico de Instagram y el parámetro message que contenga un objeto attachment con type configurado en MEDIA_SHARE y payload con el identificador de Meta de la publicación.

Tu negocio debe ser propietario del contenido multimedia que se usará en el mensaje.

Ejemplo de solicitud

curl -i -X POST \
  "https://graph.facebook.com/LATEST-API-VERSION/me/messages?access_token=PAGE-ACCESS-TOKEN" \
  --data 'recipient={"id":"IGSID"}&message={
      "attachment": 
        {
          "type":"MEDIA_SHARE", 
          "payload":{"id":"POST-ID"}
        }
}’

Ejemplo de respuesta de la API

Si la operación se completa correctamente, tu app recibirá la siguiente respuesta JSON:

{
  "recipient_id": "IGSID",
  "message_id": "MESSAGE-ID"
}

Enviar un sticker

Para enviar un sticker de corazón, envía una solicitud POST al punto de conexión /PAGE-ID/messages con el parámetro recipient que contenga el identificador específico de Instagram y el parámetro message que contenga un objeto attachment con type configurado en like_heart.

Ejemplo de solicitud

El formato se modificó para facilitar la lectura.

curl -i -X POST \
  "https://graph.facebook.com/LATEST-API-VERSION/me/messages?access_token=PAGE-ACCESS-TOKEN" \
  --data 'recipient={"id":"IGSID"}&message={
      "attachment": 
        {
          "type":"like_heart"
        }
}’

Ejemplo de respuesta de la API

Si la operación se completa correctamente, tu app recibirá la siguiente respuesta JSON:

{
  "recipient_id": "IGSID",
  "message_id": "MESSAGE-ID"
}

Reaccionar a un mensaje

Para enviar una reacción, envía una solicitud POST al punto de conexión /PAGE-ID/messages con el parámetro recipient que contenga el identificador específico y el parámetro sender_action para react con payload que contenga message_id configurado en el identificador del mensaje para aplicarle la reacción y reaction en love.

Ejemplo de solicitud

El formato se modificó para facilitar la lectura.

curl -i -X POST \
  "https://graph.facebook.com/LATEST-API-VERSION/me/messages?access_token=PAGE-ACCESS-TOKEN" \
  --data 'recipient={"id":"IGSID"}&sender_action=react&payload={
      "message_id":"MESSAGE-ID",
      "reaction":"love",
}'

Para eliminar una reacción de un mensaje, envía una solicitud POST al punto de conexión /PAGE-ID/messages con el parámetro recipient que contenga el identificador específico de Instagram y el parámetro sender_action para unreact con payload que contenga message_id configurado para el identificador del mensaje del que quieres eliminar la reacción.

Ejemplo de solicitud

curl -i -X POST \
  "https://graph.facebook.com/LATEST-API-VERSION/me/messages?access_token=PAGE-ACCESS-TOKEN" \
  --data 'recipient={"id”:”IGSID”}&sender_action="unreact"&payload={
      “message_id":"MESSAGE-ID",
}'

Ejemplo de respuesta

Si la operación se completa correctamente, tu app recibirá la siguiente respuesta JSON relacionada a las solicitudes de reacción y cancelación de la reacción:

{
  "recipient_id": "IGSID"
}

Próximos pasos

Más información

Ayuda para desarrolladores