La API de subida de archivos adjuntos te permite cargar activos que pueden enviarse en mensajes posteriores. De esta manera, no será necesario que cargues varias veces los archivos que se utilizan con frecuencia. La API admite que se guarden activos de la URL y del sistema de archivos local.
También puedes usar la API de envío para enviar de manera simultánea un mensaje con un archivo adjunto y guardarlo para utilizarlo más adelante. Para obtener más información, consulta la referencia de la API de envío.
Para cargar un archivo adjunto, envía una solicitud POST
al punto de conexión /
Your-page-id
/message_attachment
con message.attachment
con type
y payload
. Para poder usar el recurso en varios mensajes, configura payload.is_reusable
en true
.
El formato se modificó para facilitar la lectura. Reemplaza los valores en negrita y cursiva, como page_access_token, por tus valores.
curl -X POST "https://graph.facebook.com/v19.0
/Your-page-id/message_attachment" \
-H "Content-Type: application/json" \
-d '{
"access_token":"Your_page_access_token",
"message":{
"attachment":{
"type":"image",
"payload":{
"url":"https.your-url.com/image.jp",
"is_reusable": true
}
}
}
}'
El formato se modificó para facilitar la lectura. Reemplaza los valores en negrita y cursiva, como page_access_token, por tus valores.
curl -X POST "https://graph.facebook.com/v19.0
/Your-page-id/message_attachment" \
-H "Content-Type: application/json" \
-d '{
"access_token":"Your_page_access_token",
"message":{
"attachment":{
"type":"image"
}
},
"filedata":"@/path-to-your-file/image.png";"type":"image/png"
}'
Si la operación se completa con éxito, la app recibirá un objeto JSON con attachment_id
configurado en el identificador del archivo adjunto que se usará en los mensajes.
{"attachment_id": "Your-attachment-ID"}
Para enviar un mensaje con un recurso que subiste previamente, subido con message.attachment.payload.is_reusable
configurado en true
, envía una solicitud POST
al punto de conexión /
Your-page-id
/messages
con recipient.id
, y el objeto message.attachment
con type
y payload.attachment_id
.
El formato se modificó para facilitar la lectura. Reemplaza los valores en negrita y cursiva, como page_access_token, por tus valores.
curl -X POST "https://graph.facebook.com/v19.0
/Your-page-id/messages" \
-H "Content-Type: application/json" \
-d '{
"access_token":"Your_page_access_token",
"message":{
"attachment":{
"type":"image",
"payload":{
"attachment_id":"Your-attachment-ID"
}
}
}
}'
Si la operación se realiza con éxito, la app recibirá un objeto JSON con success
configurado para configurar en true
.
{"success": "true"}
En el caso de archivos adjuntos de una URL, proporciona las propiedades del proceso en el cuerpo de la solicitud como objeto JSON. En el caso de los archivos adjuntos de un archivo, envía las propiedades como datos.
message
Property | Type | Description |
---|---|---|
| Object | An object describing attachments to the message. |
message.attachment
Propiedad | Tipo | Descripción |
---|---|---|
| Cadena | El tipo de adjunto. Debe ser alguno de los siguientes:
|
| Objeto | El objeto |
message.attachment.payload
Propiedad | Tipo | Descripción |
---|---|---|
| Cadena | Opcional. URL del archivo que se debe cargar. El tamaño máximo de archivo es 8 MB en el caso de las imágenes, y de 25 MB, para todos los demás tipos de archivos (después de la codificación). Los videos tienen un tiempo de espera de 75 segundos; los demás tipos de archivos, de 10 segundos. |
| Booleano | Opcional. Configurado en |
Código de error | Subcódigo | Mensaje |
---|---|---|
100 | 2018074 | Posible identificador no válido o no posees el archivo adjunto. |
100 | 2018008 | Error al obtener el archivo de la URL. Verifica que la URL sea válida, cuente con un certificado SSL y un tamaño de archivo válidos, y que el servidor responde lo suficientemente rápido para evitar exceder los tiempos de espera. |
100 | 2018294 | La carga del video excedió el tiempo de espera o está corrupto. Ten en cuenta, si no se obtiene el video dentro de 75 segundos, se excederá el tiempo de espera. |
100 | 2018047 | Error en la carga del archivo adjunto. Una forma común de activar este error es que el tipo de contenido multimedia proporcionado no coincida con el tiempo de archivo que se proporcionó en la URL. |