Referencia de la API de envío

La API de envío es la API principal que se utiliza para enviar mensajes a los usuarios, incluso textos, adjuntos, plantillas, acciones del emisor y más.

Creación

Crear y enviar mensajes a tus clientes o a las personas interesadas en tu página de Facebook.

Antes de empezar

Necesitarás lo siguiente:

  • Un token de acceso a la página solicitado por una persona que pueda realizar la tarea MESSAGE en la página.
  • El permiso pages_messaging.
  • Es necesario que el destinatario del mensaje haya enviado un mensaje a tu página dentro de las últimas 24 horas o que haya aceptado recibir mensajes de tu página fuera del intervalo de mensajes estándar de 24 horas.

Limitaciones

  • No se pueden usar etiquetas de mensajes para enviar contenido promocional.

Ten en cuenta que la API de envío no incluye recipient_id en la respuesta de los mensajes que se envían con recipient.user_ref o recipient.phone_number para identificar al destinatario del mensaje.

Ejemplo de solicitud

Para enviar un mensaje a una persona, envía una solicitud POST al punto de conexión /PAGE-ID/messsages con los parámetros messaging_type y recipient configurados, y el contenido del mensaje.

El formato se modificó para facilitar la lectura.

El siguiente ejemplo es una respuesta al mensaje de una persona y el mensaje que envía tu página solo contiene texto.

curl -X POST "https://graph.facebook.com/v21.0/{PAGE_ID}/messages" \
      -d "recipient={'id':'{PSID}'}" \
      -d "messaging_type=RESPONSE" \
      -d "message={'text':'hello, world'}" \
      -d "access_token={PAGE_ACCESS_TOKEN}"

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

{
  "recipient_id": "PAGE-SCOPED-ID",
  "message_id": "AG5Hz2U..."
} 

Parámetros

ParámetroDescripción

message

Objeto

El tipo de mensaje que envía tu página. Se debe configurar text o attachement cuando se usa este parámetro.

  • Objeto attachment: se obtiene una vista previa de la URL. Se utiliza para enviar mensajes con contenido multimedia o mensajes estructurados. Se debe configurar text o attachment.

  • metadata: una cadena de datos adicional que deseas pasar en el webhook message_echo. Debe tener menos de 1.000 caracteres.

  • quick_replies: una matriz de respuestas rápidas que se enviarán en un mensaje.
  • text: un mensaje que contiene solo texto. Debe tener formato UTF-8 y menos de 2.000 caracteres.

messaging_type

Enumeración

Obligatorio

El tipo de mensaje que se envía.

  • RESPONSE: el mensaje es la respuesta a un mensaje recibido. Se incluyen los mensajes promocionales y no promocionales que se enviaron en un intervalo de mensajes estándar de 24 horas. Por ejemplo, usa esta etiqueta para enviar una respuesta si una persona hace una consulta sobre la confirmación de una reserva o una actualización de estado.
  • UPDATE: se envía el mensaje de manera proactiva y no representa la respuesta a un mensaje recibido. Se incluyen los mensajes promocionales y no promocionales que se enviaron en un intervalo de mensajes estándar de 24 horas.
  • MESSAGE_TAG: se trata de un mensaje no promocional que se envía fuera del intervalo de mensajes estándar de 24 horas con una etiqueta de mensaje. El mensaje debe coincidir con el caso de uso que se permite para la etiqueta.

notification_type

Enumeración

Tipo de notificación push que recibirá una persona.

  • NO_PUSH: sin notificaciones.
  • REGULAR (predeterminado): sonido o vibración que se produce cuando una persona recibe un mensaje.
  • SILENT_PUSH: solo notificaciones en pantalla.

recipient

Objeto

Obligatorio

La persona que recibirá el mensaje que envía tu página.

  • id: el identificador de usuarios específico de la página de la persona, que se utiliza para enviar un mensaje en respuesta a un mensaje que recibió tu página en las últimas 24 horas, o bien de la persona que aceptó recibir mensajes de tu página fuera del intervalo de mensajes estándar de 24 horas.
  • user_ref: la referencia a una persona, que se usa para enviar un mensaje en respuesta a una casilla o un plugin de chat de cliente.
  • comment_id: el identificador del comentario que se usa para enviar un mensaje como respuesta privada en respuesta al comentario de un visitante en la publicación de la página.
  • post_id: el identificador de la publicación de la página que se usa para enviar un mensaje como respuesta privada en respuesta al comentario de un visitante en la publicación de la página.

sender_action

Enumeración

El icono de acción que se muestra en el intervalo de mensajes que representa la acción que realizó la página en relación con un mensaje que recibió de una persona.

  • typing_on: muestra la burbuja "escribiendo" cuando la página prepara una respuesta.
  • typing_off: no muestra la burbuja "escribiendo".
  • mark_seen: muestra el icono que se ve en los mensajes que envió la página.

Solo puede enviarse con el parámetro recipient. No se puede enviar con el parámetro message, pero se debe enviar como una solicitud por separado.

tag

Enumeración

Una etiqueta que permite que tu página envíe un mensaje a una persona fuera del intervalo de mensajes estándar de 24 horas.

  • ACCOUNT_UPDATE: etiqueta el mensaje que envía a tu cliente como actualización no recurrente de su app o cuenta Ver los usos permitidos.

    No disponible para la API de mensajes de Instagram.

  • CONFIRMED_EVENT_UPDATE: etiqueta el mensaje que envías a tu cliente como recordatorio de un evento próximo o actualización de un evento en progreso en el que se registró dicho cliente Ver los usos permitidos.

    No disponible para la API de mensajes de Instagram.

  • CUSTOMER_FEEDBACK: etiqueta el mensaje que envías a tu cliente como encuesta sobre los comentarios de los clientes . Se deben enviar las encuestas de comentarios de clientes en un plazo de 7 días desde el último mensaje del cliente. Ver los usos permitidos.

    No disponible para la API de mensajes de Instagram.

  • HUMAN_AGENTObligatorio para la API de mensajes Instagram. Si se agrega esta etiqueta a un mensaje enviado a una persona, un agente humano podrá responder al mensaje de la persona. Se pueden enviar los mensajes en un plazo de 7 días desde el mensaje de la persona. El apoyo de agentes humanos es para problemas que no se pueden resolver dentro de la ventana de mensajería estándar. Ver los usos permitidos.
    • Las apps deberán solicitar el permiso Human Agent a través del panel de apps para desarrolladores. Ve a Panel de apps -> Revisión de apps -> Permisos y funciones -> Agente humano. Las apps previamente aprobadas para el acceso beta al permiso de agente humano no necesitan volver a solicitar acceso.

    El permiso Human Agent no está disponible en el acceso estándar ni en el modo de desarrollador. Es necesario que completes el proceso de revisión de apps antes de que puedas hacer uso de la etiqueta de agente humano. Al enviar la solicitud de revisión de apps, proporciónanos instrucciones claras y haznos llegar una demostración de cómo quieres aprovechar la etiqueta de agente humano en tus experiencias.

  • POST_PURCHASE_UPDATE: etiqueta el mensaje que envías a tu cliente como actualización de una compra que este realizó recientemente Ver los usos permitidos.

    No disponible para la API de mensajes de Instagram.

Usos de etiquetas de mensajes

En la siguiente tabla, se muestran los tipos de mensajes correspondientes a cada etiqueta de mensajes.

Etiqueta de mensajesUso

ACCOUNT_UPDATE

Usos permitidos

  • Notificación de un cambio en el estado de una solicitud, como la de una tarjeta de crédito o de una solicitud de empleo.
  • Notificación de una actividad sospechosa, como alertas por fraude.

Usos no admitidos (lista no exhaustiva)

  • Contenido promocional, incluidos, entre otros, ofertas, promociones, cupones y descuentos; contenido recurrente, como avisos de extractos listos, facturas adeudadas, nuevos anuncios de empleo.
  • Invitaciones a encuestas o reseñas que no guardan relación con la interacción anterior con Messenger.

No disponible para la API de mensajes de Instagram.

CONFIRMED_EVENT_UPDATE

Usos permitidos

  • Recordatorio de una próxima clase, cita o evento que programó un usuario.
  • Confirmación de la reserva o asistencia del usuario a un evento o una cita aceptados.
  • Notificación sobre transporte o viaje programado del usuario, como la llegada, la cancelación o la demora en la entrega de equipaje o algún otro cambio de estado del viaje.

Usos no admitidos (lista no exhaustiva)

  • Contenido promocional, por ejemplo, ofertas, cupones y descuentos, entre otros.
  • Contenido relacionado con un evento para el que no se registró el usuario (por ejemplo, recordatorios para comprar entradas para un evento, ventas cruzadas de otros eventos, visitas programadas, etc.).
  • Mensajes relacionados con eventos pasados.
  • Invitaciones a encuestas o reseñas que no guardan relación con la interacción anterior con Messenger.

No disponible para la API de mensajes de Instagram.

CUSTOMER_FEEDBACK

Usos permitidos

  • Encuesta sobre los comentarios de apoyo de compra.
  • Encuesta sobre los comentarios de eventos.
  • Reseñas de productos

Usos no admitidos (lista no exhaustiva)

  • La etiqueta solo se puede usar con la plantilla de comentarios de clientes. Está prohibido usarla de cualquier otra manera y, al hacerlo, se producirá un error.

No disponible para la API de mensajes de Instagram.

HUMAN_AGENT

Usos permitidos

  • Ayuda a través de agentes humanos relacionada con cuestiones que no se pueden resolver dentro del intervalo estándar de los mensajes de 24 horas, como la resolución de problemas fuera del horario de atención habitual o los problemas que necesitan más de 24 horas para resolverse.

Usos no admitidos (lista no exhaustiva)

  • Mensajes automáticos
  • Contenido no relacionado con la solicitud del usuario

Obligatorio para la API de mensajes de Instagram.

POST_PURCHASE_UPDATE

Usos permitidos

  • Confirmación de una transacción, como facturas o recibos.
  • Actualización del estado de un envío, como productos en tránsito, enviados, entregados o demorados.
  • Actualización de estado que requiere que un usuario tome medidas relacionadas con un pedido que realizó, como una tarjeta de crédito rechazada, pedidos de elementos pendientes u otro tipo de actualizaciones que requieren una acción por parte de los usuarios.

Usos no admitidos (lista no exhaustiva)

  • Contenido promocional; por ejemplo, ofertas, cupones y descuentos.
  • Los mensajes que permiten realizar ventas cruzadas o dirigida de productos o servicios.
  • Invitaciones a encuestas o reseñas que no guardan relación con la interacción anterior con Messenger.

No disponible para la API de mensajes de Instagram.

Lectura

No es posible realizar esta operación en este punto de conexión.

Para obtener información sobre las conversaciones de las que participa tu página, consulta la referencia de las conversaciones de la página.

Actualización

No es posible realizar esta operación en este punto de conexión.

Eliminación

No es posible realizar esta operación en este punto de conexión.

Más información

Ayuda para desarrolladores