Questo documento è stato aggiornato.
La traduzione in Italiano non è ancora completa.
Aggiornamento inglese: 11 set 2023

Riferimento per l'API Attachment Upload

L'API Attachment Upload consente di caricare risorse che possono essere inviate nei messaggi in un secondo momento, evitando così di dover caricare più volte file di uso comune. L'API supporta il salvataggio delle risorse da un URL e dal tuo file system locale.

Puoi inoltre utilizzare l'API Send per inviare contemporaneamente un messaggio con un allegato e salvare l'allegato per un uso successivo. Per maggiori informazioni, consulta il riferimento per l'API Send.

Caricamento di un allegato

Per caricare un allegato invia una richiesta POST all'endpoint /Your-page-id/message_attachment con message.attachment con type e payload. Per poter utilizzare la risorsa in più messaggi, imposta payload.is_reusable su true.

Esempio di richiesta di caricamento da un URL

Formattato per una maggiore leggibilità. Sostituisci i valori corsiviin grassetto come page_access_token con i tuoi valori.

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
               }
             }
           }
         }'

Esempio di richiesta di caricamento da un file

Formattato per una maggiore leggibilità. Sostituisci i valori corsiviin grassetto come page_access_token con i tuoi valori.

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"
         }'

In caso di azione eseguita correttamente, l'app riceverà un oggetto JSON con attachment_id impostato sull'ID del tuo allegato da utilizzare nei messaggi.

{"attachment_id": "Your-attachment-ID"}

Invio di un messaggio con una risorsa caricata

Per inviare un messaggio con una risorsa che hai caricato in precedenza con message.attachment.payload.is_reusable impostato su true, invia una richiesta POST all'endpoint /Your-page-id/messages con recipient.id e l'oggetto message.attachment con type e payload.attachment_id.

Esempio di richiesta di caricamento da un file

Formattato per una maggiore leggibilità. Sostituisci i valori corsiviin grassetto come page_access_token con i tuoi valori.

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"
               }
             }
           }
         }'

In caso di azione eseguita correttamente, l'app riceverà un oggetto JSON con success impostato su true.

{"success": "true"}

Proprietà

Per gli allegati da un URL, fornisci le seguenti proprietà nel corpo della richiesta come oggetto JSON. Per gli allegati da file, invia le proprietà come dati del modulo.

message

Description of the message to be sent.
Property Type Description

message.attachment

Object

An object describing attachments to the message.

message.attachment

Proprietà Tipo Descrizione

type

Stringa

Il tipo di allegato. Deve essere uno dei seguenti:

  • Immagine
  • Video
  • Audio
  • File

payload

Oggetto

Oggetto payload che descrive l'allegato.

message.attachment.payload

Proprietà Tipo Descrizione

url

Stringa

Facoltativo. URL del file da caricare. La dimensione massima del file è 8 MB per le immagini e 25 MB per tutti gli altri tipi di file (dopo la codifica). Un timeout è impostato a 75 secondi per i video e a 10 secondi per tutti gli altri tipi di file.

is_reusable

Booleano

Facoltativo. Impostala su true se desideri che la risorsa salvata possa essere inviata ad altri destinatari di messaggi. Valore predefinito: false.

Codici di errore

Codice di erroreSottocodiceMessaggio

100

2018074

Possibile ID non valido o non possiedi l'allegato.

100

2018008

Impossibile recuperare il file dall'URL. Verifica che l'URL sia valido, con un certificato SSL e una dimensione del file validi e che il server risponda abbastanza velocemente da evitare timeout.

100

2018294

Timeout del caricamento video oppure video danneggiato. Se il video non può essere recuperato entro 75 secondi, andrà in timeout.

100

2018047

Errore caricamento allegato. Questo errore viene generato comunemente quando il tipo di contenuto multimediale fornito non corrisponde al tipo di file fornito nell'URL.