L'API Offline Conversions non sarà più disponibile a partire da maggio 2025. In precedenza doveva essere dichiarata obsoleta nel terzo trimestre del 2024. A partire dall'API Graph v17.0, l'API Offline Conversions non supporta più gli eventi offline. L'API Graph v16.0 è l'ultima versione con il supporto degli eventi offline. L'API Offline Conversions non sarà più disponibile alla scadenza della v16.0 a maggio 2025. Da qui a maggio 2025, dichiareremo obsoleti gli endpoint dell'API Offline Conversions rimanenti sull'API Marketing v20.0. Consulta il registro modifiche per maggiori dettagli.
A febbraio 2023 abbiamo annunciato che l'API Conversions ora supporta pienamente gli eventi offline. Consigliamo agli inserzionisti di usare l'API Conversions per le nuove integrazioni. Consigliamo inoltre agli inserzionisti con integrazioni dell'API Offline Conversions esistenti di convertire queste integrazioni in integrazioni dell'API Conversions prima di maggio 2025 e di non aggiornare l'API Offline Conversions fino a conversione avvenuta. Ulteriori informazioni sull'API Conversions.
Usa l'API Offline Conversions per inviare eventi di conversione offline e scoprire quanti clienti hanno visualizzato le tue inserzioni di Meta o cliccato su di esse prima di una conversione.
Per usare questa API, hai bisogno di:
Se non hai ancora un account, creane uno.
Per l'accesso all'API Marketing. Per creare un'app di Meta:
Le regole relative all'analisi dell'app e alle autorizzazioni dipendono da come implementi l'API:
Tipo di implementazione | Analisi dell'app e autorizzazioni |
---|---|
Implementazione diretta | Sei un inserzionista che desidera utilizzare direttamente le conversioni offline. In questo caso:
|
Partner che implementano l'API come piattaforma | Sei un partner di terzi che offre funzionalità di conversioni offline agli inserzionisti che utilizzano i tuoi servizi. In questo caso:
|
Con l'accesso come utente di sistema, la tua app può inviare dati a Meta usando l'API. Per crearlo:
Un token d'accesso consente di accedere ai dati di Meta. Per creare token d'accesso dell'utente di sistema:
Per pubblicare campagne pubblicitarie su Meta, hai bisogno di un account pubblicitario. Per crearne uno, consulta la documentazione sull'API Marketing o l'articolo del Centro assistenza per le aziende "Informazioni sulle impostazioni business di Business Manager di Meta".
Concedi all'utente di sistema l'accesso al tuo account pubblicitario.
Si tratta di file caricati con i dati delle conversioni offline. Quando crei un'inserzione, imposta tracking_spec
sull'ID dell'insieme di eventi offline per un'attribuzione corretta degli eventi. Puoi quindi creare insiemi di eventi, visualizzare le statistiche per le tue importazioni ed eliminare e modificare questi dati in Business Manager.
Con le implementazioni precedenti, potevi eseguire operazioni CRUD sugli insiemi di eventi offline al livello di Business Manager per condividere insiemi di eventi con altri oggetti ed entità.
Devi specificare l'accesso per creare insiemi di eventi offline e caricare o visualizzare i dati per un insieme di eventi. Devi disporre dell'accesso anche per assegnare queste autorizzazioni a un account pubblicitario. Devi avere uno dei seguenti ruoli:
ad_account
associato all'insieme di eventi offlineConsulta il riferimento per l'insieme di eventi di conversione offline.
curl
-F 'access_token=<SYSTEM_USER_ACCESS_TOKEN>'
-F 'name=offline_event_set',
-F 'description=conversion data used for superbowl campaign',
https://graph.facebook.com/<API_VERSION>/<BUSINESS_MANAGER_ID>/offline_conversion_data_sets
Effettua una chiamata HTTP POST
:
POST /<BUSINESS_MANAGER_ID>/offline_conversion_data_sets HTTP/1.1
Host: graph.facebook.com
curl -X POST \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<BUSINESS_MANAGER_ID>/offline_conversion_data_sets
La risposta include un id
dell'insieme di eventi:
{ "id": <OFFLINE_EVENT_SET_ID> }
Parametro | Descrizione |
---|---|
tipo: stringa | Nome dell'insieme di eventi. Esempio: |
tipo: stringa | Descrizione dell'insieme di eventi. Esempio: |
Per assegnare autorizzazioni di monitoraggio e lettura a un account pubblicitario:
POST /<OFFLINE_EVENT_SET_ID>/adaccounts HTTP/1.1
Host: graph.facebook.com
curl -X POST \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<OFFLINE_EVENT_SET_ID>/adaccounts
Parametro | Descrizione |
---|---|
tipo: intero | Assegna un account pubblicitario a questo ID aziendale. |
tipo: intero | ID dell'account pubblicitario con monitoraggio offline abilitato. |
Quando aggiorni l'elemento tracking_spec
, noi lo sovrascriviamo. Assicurati innanzitutto di inviare una richiesta GET
, quindi allega l'elemento String
associato per l'insieme di eventi offline alla tracking_spec
esistente. Consulta Gestione delle inserzioni o usa Gestione inserzioni. Ad esempio, fornisci una specifica di monitoraggio appropriata:
curl \ -F 'tracking_spec=[{action.type:"offline_conversion", dataset:["123"]}]' \ -F 'access_token=<SYSTEM_USER_ACCESS_TOKEN>' \ https://graph.facebook.com/<API_VERSION>/<AD_ID>
Per aggiornare la specifica di monitoraggio dell'inserzione:
POST /<AD_ID>/?tracking_specs=[{"action.type":"offline_conversion","dataset": <OFFLINE_EVENT_SET_ID>}] HTTP/1.1
Host: graph.facebook.com
curl -X POST \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<AD_ID>/?tracking_specs=[{"action.type":"offline_conversion","dataset": <OFFLINE_EVENT_SET_ID>}]
Parametro | Descrizione |
---|---|
tipo: stringa | Monitora questa azione per il gruppo di inserzioni. Esempio: |
tipo: lista<id> | ID per l'insieme di eventi offline. Esempio: |
Devi caricare la transazione entro 62 giorni dalla conversione. Carica i dati di conversione:
curl \ -F 'access_token=SYSTEM_USER_ACCESS_TOKEN' \ -F 'upload_tag=store_data' \ -F 'data=[ \ { match_keys: {"phone": ["HASH1","HASH2"], "email": ["HASH3","HASH4"]}, currency: "USD", value: 16, event_name: "Purchase", event_time: 1456870902, contents: [ {id: "A", quantity: 1}, {id: "B", quantity: 2}, {id: "C", quantity: 1} ] custom_data: { }, }, { match_keys: {"lead_id": "12345"}, event_name: "Lead", event_time: 1446336000, contents: [ {id: "A", quantity: 1}, {id: "B", quantity: 2}, {id: "C", quantity: 1} ] custom_data: { event_source: "email", action_type: "sent_open_click", email_type: "email_type_code", email_provider: "gmail_yahoo_hotmail", } }, ]' https://graph.facebook.com/VERSION/OFFLINE_EVENT_SET_ID/events
Per inviare conversioni, effettua una chiamata HTTP POST
:
POST /<OFFLINE_EVENT_SET_ID>/events HTTP/1.1
Host: graph.facebook.com
curl -X POST \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<OFFLINE_EVENT_SET_ID>/events
Parametro | Descrizione |
---|---|
tipo: stringa | Obbligatorio. Monitora i caricamenti degli eventi. Esempio: |
tipo: | Obbligatorio. Include il numero di eventi caricati. Carica un evento di conversione per account del Centro gestione account fino a 2000 eventi per chiamata API. Esempio: vedi esempio in alto |
tipo: intero | Facoltativo. L'ambito usato per risolvere l'elemento Esempio: |
Usa lo stesso upload_tag
per tutte le chiamate API con caricamento degli eventi nello stesso batch per raggrupparle. In questo modo, puoi eseguire il debug dei caricamenti; devi usarlo per tutti i caricamenti degli eventi effettuati in più di una chiamata API.
I parametri contenuti in data
includono:
Parametro | Descrizione |
---|---|
tipo: dizionario JSON | Obbligatorio. Le informazioni di identificazione utilizzate per associare le persone su Meta. Esempio: |
tipo: intero | Obbligatorio. L'indicazione temporale UNIX dell'evento di conversione. Esempio: |
tipo: stringa | Obbligatorio. Tipo di evento. Esempio: |
tipo: stringa | Obbligatorio. Il codice valuta ISO di tre lettere per questo evento di conversione. Obbligatorio per gli eventi Esempio: |
tipo: doppio | Obbligatorio. Valore dell'evento di conversione. Obbligatorio per gli eventi Esempio: |
tipo: stringa | Facoltativo. Qualsiasi Esempio: |
tipo: array JSON | Facoltativo. Obbligatorio se integri le inserzioni con il catalogo. Obbligatorio: Consigliato: Obbligatorio: Consigliato: |
tipo: dizionario JSON | Facoltativo. Informazioni su questo evento di conversione. Esempio: |
tipo: stringa | Facoltativo. Identificativo unico per ogni transazione o ordine in un insieme di eventi offline. Ad esempio, per la vendita al dettaglio può essere un ID ricevuta. Esempio: |
tipo: stringa | Facoltativo. Identificativo unico per distinguere gli eventi all'interno dello stesso ordine o della stessa transazione. Esempio: |
Ad esempio, puoi caricare informazioni con il campo data
:
{ match_keys: MATCH_KEYS, event_time: EVENT_TIME, event_name: "Purchase", value: 400, currency: "USD", contents: [ { id: "A", quantity: 1, brand: "brand_of_A", category: "Apparel & Accessories | Clothing", price: 100, }, { id: "B", quantity: 2, brand: "brand_of_B", category: "Apparel & Accessories | Shoes", price: 50, }, { id: "C", quantity: 1, brand: "brand_of_C", category: "Apparel & Accessories | Jewelry | Watches", price: 200, } ], }
Usa lo stesso upload_tag
per tutte le chiamate all'API di caricamento degli eventi nello stesso batch per raggrupparle. In questo modo, puoi eseguire il debug dei caricamenti degli eventi; deve essere usato per tutti i caricamenti degli eventi in più di una chiamata API.
L'elemento match_keys
è un insieme di identificativi che permette di trovare le corrispondenze tra le persone per l'attribuzione. Consulta Pubblico personalizzato dai dati CRM per normalizzare e sottoporre a procedura di hashing i tuoi dati. Solo l'algoritmo SHA256 è supportato e non vengono accettati dati non sottoposti alla procedura di hashing.
per gli esempi di dati correttamente normalizzati e in formato hash per i seguenti parametri.
Parameter names | Parameter | Hashing required |
---|---|---|
Email Address(es) |
| YES |
Phone Number(s) |
| YES |
Gender |
| YES |
Date of Birth |
| YES |
Last Name |
| YES |
First Name |
| YES |
City |
| YES |
US States |
| YES |
Zip codes |
| YES |
Country |
| YES |
Mobile Advertiser ID |
| Do not hash The advertising ID from an Android device or the Advertising Identifier (IDFA) from an Apple device. |
Third-party user id |
| Highly recommended |
The lead id from Lead Ads |
| Do not hash |
Risposta:
Nome | Tipo | Descrizione |
---|---|---|
| intero | Numero delle voci elaborate. |
Negli errori, vedrai un'eccezione che include le voci non valide e il relativo motivo. Correggi gli errori o ignora le righe di dati con errori e riprova a eseguire la chiamata API.
L'amministratore di Business Manager o l'utente di sistema che ha creato l'insieme di eventi offline può recuperare le statistiche dei caricamenti. Anche gli amministratori dell'ad_account
collegato all'insieme di eventi offline possono leggere questi dati.
Per visualizzare le statistiche sugli insiemi di eventi offline come le voci valide e quelle per cui sono state trovate corrispondenze:
GET /<OFFLINE_EVENT_SET_ID>/uploads HTTP/1.1
Host: graph.facebook.com
curl -X GET -G \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<OFFLINE_EVENT_SET_ID>/uploads
Visualizza i dettagli giornalieri degli eventi offline su Offline Events Manager
in Business Manager. Per dettagli più precisi, effettua questa chiamata:
GET /<OFFLINE_EVENT_SET_ID>/stats HTTP/1.1
Host: graph.facebook.com
curl -X GET -G \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<OFFLINE_EVENT_SET_ID>/stats
Parametro | Descrizione |
---|---|
tipo: intero | Facoltativo. L'indicazione temporale UNIX. Interroga gli eventi che iniziano in questo intervallo. Esempio: |
tipo: intero | Facoltativo. Indicazione temporale UNIX. Esclude gli eventi che si verificano da questo momento in poi. Esempio: |
tipo: | Facoltativo. Lista di stringhe. Questo endpoint fornisce tutti i campi fino alla versione 3.0 e, per le versioni successive, fornisce |
tipo: booleano | Facoltativo. Restituisce il tempo medio di ritardo del caricamento in secondi quando il tempo di aggregazione è impostato su |
tipo: stringa | Facoltativo. Risultati aggregati basati su questo tempo impostato. Le opzioni sono |
Per le conversioni personalizzate offline al momento non viene eseguito il backfill. Non attribuiamo i dati da caricamenti degli eventi effettuati prima che tu abbia creato la conversione personalizzata. Non puoi usare i dati delle conversioni offline personalizzate per l'ottimizzazione della pubblicazione delle inserzioni. Consulta il riferimento per le conversioni personalizzate.
Per creare una conversione personalizzata usando i tuoi eventi offline, esegui una richiesta POST
:
POST /act_<ACCOUNT_ID>/customconversions HTTP/1.1
Host: graph.facebook.com
curl -X POST \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/act_<ACCOUNT_ID>/customconversions
Parametri:
Parametro | Descrizione |
---|---|
tipo: stringa | Il nome della nuova conversione personalizzata. Esempio: |
tipo: intero | L'ID dell'insieme di eventi offline da monitorare. Esempio: |
tipo: stringa | Uno dei nove eventi standard del pixel di Meta. Esempio: |
tipo: stringa con codifica JSON | Gli operatori e i dati della tua regola di conversione. Consulta il Riferimento per le conversioni personalizzate. Ad esempio, acquisti superiori a 100 USD. Esempio: |
La risposta in caso di azione eseguita correttamente:
{ "id": <CUSTOM_CONVERSION_ID> }
Puoi usare il campo custom_data
per creare regole che in seguito determineranno se una conversione viene o meno conteggiata. È simile al pubblico personalizzato offline. Il numero massimo di conversioni personalizzate che puoi usare per ogni account pubblicitario è pari a 40.
Ad esempio, includi la categoria dei prodotti nei caricamenti con custom_data
:
data=[ { match_keys: {"phone": ["<HASH>","<HASH>"], "email": ["<HASH>","<HASH>"]}, currency: "USD", value: 16, event_name: "Purchase", event_time: 1456870902, custom_data: { product_category: "ICECREAM", }, }, ]
Usa quindi custom_data.{YOUR_CUSTOM_PARAM}
per creare una regola per la conversione personalizzata:
curl \ -F 'name=Ice Cream Purchasers' \ -F 'custom_event_type=Purchase' \ -F 'event_source_id=<OFFLINE_EVENT_SET_ID>' \ -F 'rule={"and": [{"event_name":{"eq":"Purchase"}},{"custom_data.product_category":{"i_contains":"ICECREAM"}}]}' \ -F 'access_token=<ACCESS_TOKEN>' \ "https://graph.facebook.com/<API_VERSION>/act_<ACCOUNT_ID>/customconversions"
Per attribuire gli eventi di conversione offline all'inserzione del tuo cliente, segui questi passaggi. Le chiamate API per la maggior parte di questi passaggi sono le stesse di quando qualcuno gestisce il suo insieme di eventi offline e la sua campagna.
Questi passaggi variano in base a come vengono impostate le autorizzazioni per il tuo partner o la tua agenzia negli account pubblicitari del cliente:
Per configurare queste autorizzazioni, consulta Gestione delle risorse di Business Manager.
Condividi l'insieme di eventi con il Business Manager del tuo cliente, il quale può usarlo per il monitoraggio delle inserzioni.
GET /<OFFLINE_EVENT_SET_ID>/agencies HTTP/1.1
Host: graph.facebook.com
curl -X GET -G \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<OFFLINE_EVENT_SET_ID>/agencies
Parametro | Descrizione |
---|---|
tipo: intero | ID Business Manager del tuo cliente. |
Condivi gli insiemi di eventi offline creati da un partner con il cliente. Devi essere l'amministratore di Business Manager o l'utente di sistema amministratore che ha creato l'insieme di eventi offline per abilitare il monitoraggio delle inserzioni in un account pubblicitario. Puoi farlo anche se sei amministratore dell'account pubblicitario connesso all'insieme di eventi offline. Per effettuare questa chiamata API, il Business Manager nella chiamata deve avere accesso all'insieme di eventi offline.
Con questa chiamata, puoi assegnare il monitoraggio degli eventi offline e la visualizzazione delle autorizzazioni a un account pubblicitario:
POST /<OFFLINE_EVENT_SET_ID>/adaccounts HTTP/1.1
Host: graph.facebook.com
curl -X POST \
-F 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/<OFFLINE_EVENT_SET_ID>/adaccounts
Parametro | Descrizione |
---|---|
tipo: intero | Assegna un account pubblicitario a questo ID aziendale. |
tipo: intero | ID dell'account pubblicitario con monitoraggio offline abilitato. |
In alcuni casi, potresti dover usare il tuo ID esterno per rappresentare un cliente e trovare una corrispondenza con qualcuno. Per farlo, usa l'elemento extern_id
seguendo queste linee guida.
I partner dati sottoposti alla procedura di ricerca delle corrispondenze possono usare l'ID partner come ID spazio dei nomi e extern_id
come il tuo tpid
.
match_keys
Usiamo match_keys
per provare a determinare se i dati di conversione che hai condiviso possono essere abbinati a un utente di Meta. Se fornisci match_keys
, non puoi fornire anche un parametro namespace_id
.
match_keys
ed extern_id
Usiamo il parametro match_keys
per provare a trovare persone su Meta e trasmettere le mappature da {dataset_id, extern_id}
a {facebook_user_id}
. Se fornisci match_keys
e extern_id
, non puoi fornire anche namespace_id
.
extern_id
Se hai già inviato i dati con i parametri match_keys
e extern_id
, Meta usa {dataset_id, extern_id}
per recuperare un {facebook_user_id}
.
namespace_id
Il parametro namespace_id
si applica all'intera chiamata API. Puoi usarlo per fare riferimento a un altro insieme di eventi offline accessibile o controllato da un ID Business Manager o un ID del profilo partner. Se hai già inviato i dati con i parametri match_keys
e extern_id
, Meta usa {namespace_id, extern_id}
per recuperare un {facebook_user_id}
. Devi fornire solo un parametro extern_id
per ogni riga di dati.
Vedi gli eventi offline attribuiti a un'inserzione che qualcuno ha visualizzato o su cui ha cliccato. Attribuiamo le conversioni offline dopo più di un giorno. Ciò significa che devi impostare la tua finestra di attribuzione su 28d_view
o action_attribution_windows=['28d_view']'
, altrimenti non vedrai conversioni nei report. Consulta API Insights e la guida agli insight.
GET /act_<ADACCOUNT_ID>/insights HTTP/1.1
Host: graph.facebook.com
curl -X GET -G \
-d 'access_token=<ACCESS_TOKEN>' \
https://graph.facebook.com/act_<ADACCOUNT_ID>/insights
Parametro | Descrizione |
---|---|
tipo: stringa[] | I dettagli dei dati su impression, clic o conversioni. Sono raggruppati per tipo di evento: offline, online, ecc. Esempio: |
tipo: stringa[] | Le metriche di base delle inserzioni. Esempio: |
tipo: stringa | Aggregazione o deduplicazione dei dati a questo livello dei risultati dei report. Esempio: |
tipo: stringa | Intervalli di tempo relativi per le query delle metriche. Esempio: |
I risultati si presentano così:
{ "data": [ { "date_start": "2015-12-01", "date_stop": "2015-12-01", "actions": [ { "action_type": "offline_conversion.purchase", "value": 1 }, { "action_type": "offsite_conversion.lead", "value": 3 }, ], ... } ] }
Ad esempio, per visualizzare l'attribuzione:
curl -G \ -d 'access_token=<SYSTEM_USER_ACCESS_TOKEN>' \ -d 'fields=unique_actions,action_values' \ https://graph.facebook.com/<API_VERSION>/act_<AD_ACCOUNT_ID>/insights
Il risultato si presenta così:
{ "data": [ { "unique_actions": [ { "action_type": "link_click", "value": 94 }, { "action_type": "offline_conversion", "value": 1 }, { "action_type": "offline_conversion.purchase", "value": 1 }, { .... "value": 1 } ], "action_values": [ { "action_type": "offline_conversion.purchase", "value": 27.5 }, { "action_type": "offline_conversion", "value": 27.5 } ], "date_start": "2016-06-06", "date_stop": "2016-06-07" } ], "paging": { "cursors": { "before": "MAZDZD", "after": "MAZDZD" } } }
Per queste due API, implementa le opzioni di elaborazione dei dati aggiungendo data_processing_options
, data_processing_options_country
e data_processing_options_state
all'interno di ogni evento nel parametro dei dati dei tuoi eventi.
Nota: le API App Events e Offline Conversions non sono più consigliate per le nuove integrazioni. Al loro posto, ti consigliamo di usare l'API Conversions in quanto ora supporta gli eventi web, app e offline. Consulta API Conversions per App Events e API Conversions per Offline Events per maggiori informazioni.
Per indicare esplicitamente la non abilitazione dell'Utilizzo limitato dei dati (LDU), specifica un array vuoto per ogni evento o semplicemente rimuovi il campo nel payload:
{ "data": [ { "event_name": "Purchase", "event_time": <EVENT_TIME>, "user_data": { "em": "<EMAIL>" }, "custom_data": { "currency": "<CURRENCY>", "value": "<VALUE>" }, "data_processing_options": [] } ] }
Per abilitare la funzione di LDU e richiedere a Meta di individuare la posizione geografica:
{ "data": [ { "event_name": "Purchase", "event_time": <EVENT_TIME>, "user_data": { "em": "<EMAIL>", "client_ip_address": "256.256.256.256" }, "custom_data": { "currency": "<CURRENCY>", "value": "<VALUE>" }, "data_processing_options": ["LDU"], "data_processing_options_country": 0, "data_processing_options_state": 0 } ] }
Per abilitare la funzione di LDU e specificare manualmente la posizione, ad esempio per la California:
{ "data": [ { "event_name": "Purchase", "event_time": <EVENT_TIME>, "user_data": { "em": "<EMAIL>" }, "custom_data": { "currency": "<CURRENCY>", "value": "<VALUE>" }, "data_processing_options": ["LDU"], "data_processing_options_country": 1, "data_processing_options_state": 1000 } ] }
L'API Offline Conversions ti consente di caricare manualmente gli eventi da un file .csv
. In questo caso, aggiungi Opzioni trattamento dati, Paese trattamento dati e provincia/stato trattamento dati come colonne all'interno del file. Ulteriori informazioni sono disponibili nell'interfaccia utente per il caricamento manuale.
Scopri di più sulle opzioni per il trattamento dei dati.