FAQ per gli sviluppatori
Account Kit

Se ottieni un errore generico come "Siamo spiacenti, si è verificato un errore" che non ti aiuta a capirne la causa, puoi abilitare messaggi di errore più dettagliati che potrebbero contenere informazioni più utili. Puoi consultare il resto della documentazione sul flag di debug per il metodo init() dell'SDK all'indirizzo https://developers.facebook.com/docs/accountkit/webjs/reference.

La verifica istantanea di Account Kit elimina l'esigenza dei codici di verifica inviati tramite SMS quando i possessori di dispositivi Android inseriscono lo stesso numero di telefono indicato su Facebook.

Ciò è possibile solo se l'utente in questione usa l'app Facebook per Android. Se non riusciamo a confermare la corrispondenza, l'utente verrà reindirizzato al flusso normale e riceverà un codice di verifica tramite SMS.

Account Kit offre la localizzazione dell'interfaccia utente nelle lingue indicate in questa lista: https://developers.facebook.com/docs/accountkit/languages.

No, supportiamo il collegamento all'SDK JavaScript solo tramite https://sdk.accountkit.com/en_US/sdk.js. Lo script acquisisce il programma di caricamento dell'SDK, che carica la versione più recente di quest'ultimo da accountkit.com o dalla cache del browser.

Nel caso in cui desideri ospitare l'SDK tramite il tuo server, il periodo di tolleranza è di 24 ore, al termine del quale l'SDK inizia a comunicare avvisi, fino alla cessazione del funzionamento dopo 7 giorni.

Imposta il parametro enableSendToFacebook (su iOS) o setFacebookNotificationsEnabled (su Android) su true.

Gli utenti che effettuano l'accesso alla tua app riceveranno il messaggio di conferma tramite le notifiche Facebook se non è possibile inviare l'SMS e se il numero di telefono in uso è quello principale associato all'account Facebook.

Devi aggiungere l'autorizzazione INTERNET per le chiamate ai metodi dell'API. Inoltre, puoi aggiungere altre autorizzazioni per eliminare possibili problemi durante la procedura di accesso:

  • Per l'accesso tramite SMS, aggiungi le autorizzazioni RECEIVE_SMS e READ_PHONE_STATE.
  • Per le funzioni relative all'indirizzo e-mail, aggiungi l'autorizzazione GET_ACCOUNTS.

Scopri di più sull'integrazione di Account Kit nella tua app per Android qui.

SDK per Android

Quando l'utente apre la finestra di condivisione mobile o la finestra di dialogo delle Notizie mobile ma la chiude annullandola, l'app riceverà una notifica in merito tramite il metodo di callback onSuccess(). Puoi considerare la callback onSuccess() come un meccanismo per segnalare che la finestra di dialogo è stata chiusa correttamente in qualche modo, ma non puoi usarla per stabilire se qualcosa è stato effettivamente pubblicato. Se l'utente ha anche concesso all'app l'ambito di autorizzazione "publish_actions", il metodo callback oCancel() verrà richiamato al momento dell'annullamento.

Per i dettagli completi della classe FacebookCallback, consulta la documentazione di riferimento.

Il pulsante "Mi piace" nativo (LikeView) funziona in modo identico al pulsante "Mi piace" basato sul Web. La maggior parte degli URL basati su Facebook non può essere usata per questioni di privacy. Eccezioni includono le Pagine Facebook e l'home page di Facebook.

Puoi eseguire una verifica preliminare usando lo strumento per la visualizzazione delle anteprime del pulsante "Mi piace".

Si tratta di un comportamento intenzionale. Abbiamo ricevuto molte segnalazioni di spam e usi impropri di questa funzione, e per migliorare l'esperienza utente complessiva abbiamo deciso di applicare questa modifica.

Esistono modi migliori per condividere su Android, documentati qui.

Analisi dell'app

We’ve moved all Messenger permissions to the Permissions and Features page.

We've consolidated this into one Permissions and Features page for Business apps, where you can see what access levels you have for each permission and feature.

Yes, developers may opt out of the Business app type and return to the previous App Review process for their app by selecting “Change App Type” on the App Dashboard. However, developers may not opt back into the Business app type and will need to create a new app to do so.

Additionally, apps previously in Development Mode that opt out to the legacy experience that have been approved for Advanced Access via App Review in the new model will lose access to data beyond what their business or anyone with a role on their app owns until they turn their app to Live Mode.

We have replaced Development and Live Mode with Standard and Advanced Access. Standard Access is always active and allows you to access data that a developer’s business or anyone with a role on their app owns. You may submit for App Review for permissions and features to access data owned by other businesses or people. Refer to our Access Levels document to learn more.

Business apps designed to help businesses and organizations manage Pages, Groups, Events, Ads, and ad-related assets.

Di seguito sono riportati i motivi per cui l'app ha perso le autorizzazioni dopo l'approvazione iniziale:
  • L'app è stata spostata in un business non verificato. Tutte le autorizzazioni precedentemente approvate verranno bloccate.
    • Se l'app viene riportata nell'azienda verificata, le autorizzazioni verranno sbloccate.
  • L'app è contrassegnata come Fornire servizi ad altre aziende, ma viene poi spostata in un'altra azienda che non è stata verificata.

Yes, ALL apps that leverage permissions that require review (Pages API, Groups API, Events API, Business Manager API, Instagram Graph API, Messenger Platform, extended Facebook Login permissions, Marketing API and Lead Ads API) must submit for app review in adherence with the communicated deadlines.

Active apps that leverage permissions with an August 1st deadline (Pages API, Groups API, Events API, Business Manager API, Instagram Graph API, Messenger Platform, extended Facebook Login permissions) and have not yet proactively submitted for review will be auto-enrolled in the review process. You can accelerate the App Review process by submitting your app for review prior to auto-enrollment. This will give you more control over when your app is reviewed and what information is used for the review.

Per maggiori dettagli, visita questa pagina. Il processo ti darà l'opportunità di fornire dettagli su quali autorizzazioni sono necessarie e su come verranno utilizzate. Facebook esaminerà il caso d'uso e determinerà se è consentito dalle nostre normative. Dopo la revisione dell'autorizzazione, a seconda dell'API/dell'autorizzazione potremmo avere requisiti aggiuntivi, come la verifica dell'azienda e la firma del contratto.

La necessità di Analisi dell'app viene definita al livello di ID app. Ogni singola app che utilizza tali autorizzazioni o funzioni deve essere inviata per l'analisi.

Yes, if your apps have made calls to the Graph API in the last 28 days as of July 31, 2018 and require access to the reviewable permissions with an August 1st deadline, your app will be auto-enrolled in the app review process. We will notify you when we have a process available to send us the additional information needed to complete the review process.

As we announced earlier this year, all apps accessing the Pages API, Groups API, Events API, Business Manager API, Instagram Graph API, Messenger Platform, and Facebook Login were expected to submit for app review by August 1.

To help protect the integrity of our platform, we have removed API access for apps that require these permissions, have not gone through app review, and have not been active within the last 28 days as of July 31, 2018. If you still need access to our APIs, we encourage you to submit for review through your app's App Dashboard.

All active apps that require these permissions will be auto-enrolled in app review in the coming weeks. Developers will be notified if we require additional information to complete the app review submission. If responses are not received in the allocated timeframe, reviewable API access will be disabled.

Se per il tuo invio sono necessarie ulteriori informazioni, avrai 30 giorni dalla ricezione della richiesta per soddisfare i requisiti e inviare nuovamente per l'analisi. Durante questi 30 giorni, il team di analisi dell'app ti potrebbe chiedere di fornire ulteriori informazioni. La finestra di 30 giorni non si azzererà con eventuali nuovo invii eseguiti durante questo periodo.

Per testare una nuova funzione o autorizzazione, dopo che l'app è stata analizzata e pubblicata, usa la funzione Crea app testnella Dashboard gestione app per creare un clone della tua app in produzione. Nella dashboard della tua app in produzione, clicca sulla freccia giù accanto al nome dell'app nel riquadro di navigazione a sinistra e quindi su Crea app test. Il clone dell'app, creato con stato In sviluppo, consente a tutti i ruoli dell'app accesso a tutte le funzioni e autorizzazioni.

Se i clienti sono anche i "proprietari" dell'app, essi stessi si sottopongono al processo come sviluppatori diretti. Se i clienti hanno uno sviluppatore di terze parti come "proprietario" dell'app, sarà lo sviluppatore a sottoporsi al processo di analisi.

Dovrai richiedere le autorizzazioni leads_retrieval e pages_manage_ads.

Puoi fornire uno screencast della tua integrazione oppure, se la tua app non offre un'esperienza per l'utente finale, puoi fornire almeno 2 screenshot che mostrano la visualizzazione delle impostazioni della tua pagina, il tuo CRM o Business Manager, oltre a fornire un ID Pagina per una pagina che utilizzerai attraverso questi prodotti. Puoi trovare maggiori informazioni su questa opzione qui.

Il processo di Analisi dell'app si riferisce ad app che richiedono determinate autorizzazioni API. Puoi leggere le autorizzazioni necessarie per l'analisi qui. La configurazione dell'SDK non richiede l'analisi dell'app. Tuttavia, l'SDK consente alle app di effettuare chiamate alle API di Facebook e, se tali API richiedono l'analisi, l'app dovrà essere inviata per l'analisi dell'app.

Se disponi già di un account Business Manager, ti consigliamo di connettere l'app al Business Manager esistente.

Se ci sono più account Business Manager appartenenti all'azienda, è consigliabile determinare la motivazione alla base dell'esistenza di più account Business Manager e di allineare l'app con il Business Manager più appropriato. Se l'azienda ha una linea di credito configurata tramite il Business Manager, è consigliabile connettere l'app con quello che ha la linea di credito.

Offriamo agli sviluppatori la possibilità di fornire utenti test specifici, nel caso in cui siano presenti configurazioni aggiuntive, elementi da aggiungere alla whitelist o informazioni sul profilo di un utente test da usare. Se non viene fornito un utente test, ne useremo uno dei nostri. Questo campo deve essere contrassegnato come facoltativo, pertanto se viene lasciato vuoto non deve bloccare il processo.

L'Analisi dell'app deve essere eseguita per app. Ti consigliamo di consultare la dashboard gestione app per ottenere l'elenco specifico delle autorizzazioni che richiedono l'analisi.

La verifica dell'azienda deve essere eseguita una volta per ogni Business Manager. Se scegli di associare tutte le tue app allo stesso Business Manager, dovrai eseguire la verifica dell'zienda una sola volta.

L'app deve essere collegata al Business Manager dell'azienda che possiede l'app e ha accesso ai dati generati dall'app. Questa azienda deve essere sottoposta al processo di verifica dell'azienda.

Puoi sempre consultare lo stato della verifica aziendale, i contratti e i passaggi da eseguire nella tab della verifica aziendale che si trova nella tab di analisi dell'app della dashboard gestione app. Ti invieremo notifiche durante tutto il processo per comunicarti le azioni necessarie.

You need to initiate app review before August 1, 2018 for these APIs: Pages API, Groups API, Events API, Instagram Platform API, Messenger Platform, Business Manager API, and Facebook Login.

You need to initiate App Review before February 1, 2019 for these APIs and features: the Marketing API and the Lead Ads Retrieval feature.

Al momento dobbiamo gestire un aumento del volume. L'intero processo può richiedere fino a diverse settimane.

  • La revisione delle autorizzazioni può richiedere diverse settimane. È possibile consultare il nostro ultimo aggiornamento sulle tempistiche qui.
  • La verifica dell'azienda dovrebbe richiedere alcuni giorni, tuttavia dipenderà dalla qualità della documentazione fornita.
  • La firma del contratto può essere completata non appena il responsabile designato firma il contratto.

Nell'ambito del processo di analisi, è possibile che vengano richieste informazioni sull'azienda come ragione sociale dell'azienda, indirizzo e numero di telefono. Inoltre, è possibile che venga richiesto di fornire documentazione aziendale come bollette, licenze, certificati di costituzione o statuti.

Dal 1° agosto 2018, devi solo verificare il Business Manager a cui è connessa l'app.

Quando saranno disponibili nuove API, queste dovranno essere richieste tramite Analisi dell'app. La Verifica dell'azienda, invece, è richiesta una sola volta per entità Business Manager, quindi non sarà nuovamente richiesta se sono necessarie nuove autorizzazioni o API per un'app.

Sì, le app test erediteranno le autorizzazioni revisionabili dalle app principali.

Tutte le app esistenti che effettuano chiamate alle autorizzazioni avanzate di Facebook Login e alle 6 API (Pages, Messenger, Business Manager, Instagram, Groups ed Events) devono essere sottoposte al nuovo processo di analisi dell'app, che include la verifica del Business Manager e la firma di alcuni contratti. L'analisi dell'app deve essere solo inviata entro questa data, ma può essere completata anche in data successiva. Se l'invio non viene effettuato entro il 1° agosto 2018, l'accesso alle API sarà interrotto a partire dal 2 agosto 2018.

Tutte le app esistenti che effettuano chiamate all'API Marketing e all'API Lead Ads Retrieval devono essere sottoposte al nuovo processo di analisi dell'app, che include la verifica del Business Manager e la firma di alcuni contratti, entro il 1° febbraio 2019.

Per maggiori dettagli, visita questa pagina. Durante il processo, avrai la possibilità di fornire dettagli sulle autorizzazioni che ti servono e sul modo in cui verranno usate. Facebook analizzerà il caso d'uso e stabilirà se è ammissibile in base alla nostra Normativa. Dopo l'analisi delle autorizzazioni, a seconda dell'API o dell'autorizzazione, potremmo sottoporti ad altri requisiti, come una verifica del Business Manager e la firma di un contratto.

È necessario verificare un Business Manager una sola volta. I contratti devono essere firmati una sola volta al livello dell'azienda. Gli invii delle app successivi richiederanno l'analisi dell'app, ma non la verifica.

La necessità di effettuare l'analisi dell'app dipende dal livello dell'ID app. Ogni singola app che usa tali autorizzazioni o funzioni deve essere inviata per l'analisi.

Il 1° maggio 2018, abbiamo annunciato un nuovo processo di analisi dell'app, obbligatorio per Facebook Login (autorizzazioni avanzate) e per 6 API (Pages, Messenger, Business Manager, Instagram, Groups ed Events). L'invio per l'analisi dell'app per queste API o autorizzazioni deve essere effettuato entro il 1° agosto 2018 per mantenere l'accesso a tali API.

Il 2 luglio 2018, abbiamo annunciato ulteriori API che richiedono l'analisi dell'app: l'API Marketing e l'API Lead Ads Retrieval. L'invio per l'analisi dell'app per queste API deve essere effettuato entro il 1° febbraio 2019 per mantenere l'accesso. Puoi trovare maggiori informazioni sulle date di scadenza qui.

Non sono state apportate modifiche alle API di Business Manager nell'API Graph v3.0. Le app che richiedono l'accesso alle autorizzazioni Business_Management dovranno essere sottoposte ad analisi da parte di Facebook.

Non ci sono modifiche alla politica di Analisi dell'app di Facebook che influiscono sulle app che utilizzano l'API Marketing di Facebook. Per le modifiche apportate all'API, consulta il Registro modifiche dell'API Graph.

Sì. Senza l'Analisi dell'app, le app possono accedere solo al nome, all'indirizzo e-mail e all'immagine del profilo di un utente. Tutte le altre autorizzazioni richiedono la revisione da parte di Facebook.

L'API Instagram non è interessata dall'API Graph v3.0. Tuttavia, tutte le app che utilizzano l'API Instagram devono essere esaminate da Facebook.

Nell'API Graph v3.0, le app che accedono agli eventi devono utilizzare l'autorizzazione user_events. Le app che utilizzano tale autorizzazione devono essere esaminate da Facebook.

L'autorizzazione user_managed_groups è stata rimossa nell'API Graph v3.0. Le app possono utilizzare la nuova API Groups, unitamente alle autorizzazioni publish_groups e read_groups_user_data al suo posto. La nuova API e le autorizzazioni richiedono che le app vengano sottoposte ad analisi da parte di Facebook.

L'autorizzazione publish_actions è stata rimossa nell'API Graph v3.0. Le app possono comunque pubblicare storie tramite esperienze mediate come la finestra di dialogo Condividi di Facebook sul web o i fogli di condivisione per iOS e Android. Le app possono pubblicare sui gruppi tramite l'autorizzazione publish_groups, che prevede il completamento del processo di Analisi dell'app.

Sì. Nella v3.0, tutte le API della Piattaforma Messenger sono incluse sotto l'autorizzazione Pages_messaging e richiedono l'analisi.

Sì. Le app che accedono al contenuto delle Pagine pubbliche devono richiedere la funzione di accesso al contenuto pubblico della Pagina e richiedere l'analisi di Facebook.

Durante il processo di analisi, il nostro team di analisi segue le tue istruzioni per riprodurre il modo in cui la tua app usa le autorizzazioni. Se non siamo in grado di farlo, ad esempio poiché non riusciamo a seguire le tue istruzioni o ad accedere all'app, non potremo approvare l'invio.

Per evitare che ciò accada:

  • Fornisci una versione funzionante dell'app che usa l'autorizzazione.
  • Assicurati che le istruzioni nella sezione Aggiungi note siano chiare.
  • Accertati che le autorizzazioni di accesso richieste personalizzino l'esperienza utente e siano conformi ai nostri principi.

In particolare, per l'autorizzazione publish_actions, controlla che la funzionalità di pubblicazione dell'app sia configurata correttamente. Durante il processo di analisi dobbiamo essere in grado di pubblicare i contenuti dell'app su Facebook.

Il processo di analisi dell'app ne prevede il caricamento su tutte le piattaforme supportate, l'accesso con Facebook e l'uso delle integrazioni con Facebook per cui stai richiedendo l'analisi. Questo causa spesso quelli che denominiamo "problemi generali". Si tratta di errori o bug relativi al caricamento, all'accesso o al funzionamento generale della tua app, per cui non siamo stati in grado di testare le autorizzazioni richieste nell'invio.

Poiché questi problemi ci impediscono di analizzare la funzionalità di Facebook, non possiamo fornire commenti dettagliati sull'uso di tale funzionalità da parte dell'app che hai inviato per l'analisi. Per questo motivo, rifiutiamo per "Problemi generali" e offriamo un esito per ogni piattaforma.

Se hai ricevuto un rifiuto per "Problemi generali", leggi attentamente gli esiti. Ne invieremo uno per ogni piattaforma spiegando i problemi riscontrati in fase di l'analisi.

La risposta dell'analisi include una spiegazione chiara dei motivi per cui la tua app non è stata approvata e i passaggi da seguire. Desideriamo snellire il processo quanto più possibile, perciò leggi attentamente l'esito e, una volta apportate le modifiche necessarie, puoi effettuare nuovamente l'invio.

Se la tua app usa un'autorizzazione in modo non consentito, nell'esito verrà spiegato e non dovrai effettuare nuovamente l'invio per l'analisi.

Per essere approvata per l'App Center, la tua app deve essere conforme ai nostri requisiti di idoneità. Le app idonee per l'App Center di Facebook devono usare Facebook Login o avere un'app per Canvas di Facebook.

Possono essere elencate nell'App Center:

Anche le risorse testuali e le immagini promozionali devono rispettare le nostre linee guida.

Se usi la finestra di condivisione o altri plug-in social per pubblicare contenuti su Facebook, non devi effettuare l'invio per l'analisi. Se hai ancora dubbi, puoi consultare ulteriori informazioni nella nostra documentazione generale relativa all'analisi.

Incentivare gli utenti a usare i plug-in social o a mettere "Mi piace" a una Pagina viola il punto 4.5 della Normativa della piattaforma, così come offrire riconoscimenti o limitare app o contenuti delle app a seconda che l'utente abbia messo o meno "Mi piace" a una Pagina. L'uso di user_likes non verrà approvato per questo scopo.

Per garantire connessioni di qualità e aiutare le aziende a raggiungere il pubblico desiderato, gli utenti devono mettere "Mi piace" alle Pagine poiché desiderano connettersi con l'azienda e rimanere aggiornati, non poiché incentivati a farlo. Crediamo che anche gli utenti e gli inserzionisti trarranno vantaggi da questa normativa.

Il nostro team di analisi può avere bisogno di ulteriori credenziali per accedere alla tua app e completare l'analisi.

Se l'app richiede un accesso secondario prima o dopo Facebook Login, assicurati di fornire i relativi nome utente e password. Le credenziali di accesso per un server demo o usato per i test, l'accesso secondario per la tua app e un flusso di registrazione e-mail sono degli esempi.

Le app ospitate su server di preparazione o sviluppo possono richiedere un ulteriore accesso per entrare nel server. Fornisci tutte le credenziali di accesso necessarie.

Se hai ancora dubbi sulle credenziali mancanti, puoi fornire un video che mostra l'opzione Facebook Login e tutte le integrazioni con Facebook pertinenti per cui stai effettuando l'invio.

Per approvare il tuo invio, il nostro team di analisi deve accedere alla tua app e controllare le integrazioni con Facebook.

Se chi ha effettuato l'analisi non è stato in grado di caricare o usare l'app, assicurati che:

  • l'URL dell'app sia accessibile pubblicamente e non configurato come localhost;
  • il nome utente e la password necessari per accedere al sito di sviluppo o preparazione siano stati forniti;
  • i certificati di sicurezza del sito siano aggiornati e non generino errori con i nuovi utenti;
  • tu sia in grado di accedere all'app e usarla come nuovo utente test;
  • gli elementi inviati per l'analisi siano completati e funzionanti.

Se ottieni un nuovo rifiuto per lo stesso motivo, aggiorna le istruzioni per l'analisi o la sezione Aggiungi note per chiedere spiegazioni o ulteriori informazioni a chi effettua l'analisi.

Uno screencast è un metodo ottimale per guidarci all'interno della tua app e mostrarci come usi le autorizzazioni richieste. Di seguito, trovi le best practice e le risorse di terzi per creare uno screencast.

Il video deve mostrare in che modo la tua app usa le autorizzazioni richieste. Se richiedi publish_actions, deve mostrare anche come vengono creati e condivisi su Facebook i contenuti della tua app.

L'ID app Facebook creato per il tuo gioco istantaneo non può essere usato per altre piattaforme. Puoi trovare maggiori informazioni nella nostra documentazione.

Il nostro team di analisi userà le istruzioni che fornisci per testare le integrazioni della tua app con Facebook.

Se pensi che la tua app sia stata rifiutata per motivi sbagliati, effettua nuovamente l'invio con istruzioni aggiornate che forniscano maggiori informazioni a chi esegue l'analisi.

Il processo di analisi è il miglior modo per comunicare con chi effettua l'analisi, aggiornando le tue note secondo le indicazioni ricevute nell'esito.

Il nostro team di analisi usa più utenti test e non sempre quelli forniti da te. Se il tuo invio deve essere analizzato con uno specifico utente test, comunicacelo nelle istruzioni.

Se fornisci un utente test, assicurati di averlo creato correttamente e di averlo allegato al tuo invio.

No. Quando hai ottenuto l'approvazione per un'autorizzazione, puoi usarla per qualsiasi versione della tua app e su qualsiasi piattaforma.

Se intendi ampliare e sviluppare la tua app su un'altra piattaforma, questa non dovrà essere inviata nuovamente per l'analisi. Dovrai inviarla nuovamente per l'analisi solo se desideri richiedere una nuova autorizzazione, ad esempio quando aggiungi una nuova funzione all'app. La modifica e l'invio dei dettagli dell'app o delle azioni Open Graph non interesserà le autorizzazioni per cui hai ottenuto l'approvazione.

Se la tua app è un gioco ed è presente su Canvas di Facebook

Puoi invitare nuovi giocatori al tuo gioco usando:

  • La finestra di dialogo delle richieste. Quando usi la finestra di dialogo delle richieste, puoi impostare "filters=app_non_users" come filtro per mostrare solo gli utenti che non usano la tua app. Se l'app è presente su Canvas, puoi usare la finestra delle richieste anche su iOS e Android.
  • L'API Invitable Friends. Se l'app è un gioco e vuoi creare uno strumento di multi-selezione amici, puoi usare l'API Invitable Friends, che restituisce una lista classificata degli amici che non usano l'app. Quando un utente ha selezionato gli amici da invitare, passa i token restituiti dall'API Invitable Friends al campo della finestra delle richieste, che successivamente permetterà all'utente di inviare un invito a tali amici.

Se la tua app non è presente su Canvas di Facebook

Puoi usare la finestra di messaggio su iOS e Android o la finestra di invio sul Web. Queste finestre permettono a un utente di inviare direttamente un messaggio contenente un link alla tua app ai suoi amici.

Questo tipo di messaggio è un ottimo canale per comunicare in modo diretto con una cerchia ristretta di utenti. La finestra di messaggio e quella di invio includono un'anteprima che permette all'utente di selezionare facilmente gli amici da invitare.

Attualmente, le app non richiedono l'Analisi dell'app se vengono utilizzate solo da utenti che hanno un ruolo nell'app e che pubblicano solo nei propri diari o nelle proprie Pagine. A partire dal 1° agosto 2018, tuttavia, le app non possono più pubblicare sui diari degli utenti e tutte le app che consentono agli utenti di pubblicare su gruppi o Pagine devono passare attraverso l'Analisi dell'app.

Il nostro team di analisi testa in che modo la tua app usa le autorizzazioni su tutte le piattaforme elencate nella sezione delle impostazioni dell'app. Chi effettua l'analisi garantisce che l'integrazione con Facebook Login funzioni correttamente e che le autorizzazioni richieste siano conformi ai nostri principi e alle linee guida per le utility fornendo un'esperienza utente migliorata.

Per maggiori informazioni, consulta i nostri principi e le linee guida per le utility.

Prima di approvare la tua richiesta per user_likes, chi effettua l'analisi dovrà confermare che la tua app fornisce un'esperienza unica agli utenti sulla base delle informazioni relative ai "Mi piace" che riceve da essi. Per farlo, il nostro team di analisi testerà la tua app con una serie di utenti test, ognuno con diversi interessi e "Mi piace".

Quando invii una richiesta per user_likes, devi scrivere istruzioni dettagliate che includano:

  • una spiegazione chiara sul perché richiedi l'autorizzazione user_likes e su come quest'ultima migliori l'esperienza di un utente nella tua app;
  • una lista di esempi di Pagine a cui chi effettua l'analisi può mettere "Mi piace" per verificare il tuo uso di user_likes. Offri link diretti alle Pagine a cui chi effettua l'analisi deve mettere "Mi piace" prima di testare la tua app.

Se usi user_likes come parte di un algoritmo, è importante che chi effettua l'analisi possa vedere il risultato di tale algoritmo e la sua influenza sui contenuti mostrati agli utenti.

In alcuni casi, potresti aver bisogno che chi effettua l'analisi riproduca determinati comportamenti o esperienze disponibili solo per uno specifico utente test, che puoi aggiungere al tuo invio nella pagina Analisi dell'app. Nella sezione Elementi in fase di analisi, visualizzerai una sezione Utente test (facoltativa) che ti permette di inserire il nome dell'utente che desideri venga usato per l'analisi.

Gli unici utenti test disponibili saranno quelli elencati come Utenti test nella sezione Ruoli della tua app. Non inserire le credenziali di accesso a Facebook per gli utenti nelle istruzioni per l'analisi.

Scopri di più su come creare un utente test.

No, non devi effettuare l'invio per l'analisi per pubblicare inserzioni sulle installazioni di app mobili. Hai bisogno solo di un'app presente nell'App Store di iTunes o nel Play Store di Google. Segui la nostra guida per creare inserzioni sulle installazioni di app mobili.

Dovrai spiegare esattamente come testare ogni autorizzazione o funzione della tua app, in questo modo ci assicureremo che funzionino e rispettino le nostre normative. Non possiamo approvare la tua app senza testarne completamente l'integrazione con Facebook. Fornendo istruzioni dettagliate, sarà meno probabile che tu debba effettuare nuovamente l'invio per l'analisi.

Per ogni autorizzazione richiesta, elenca le istruzioni di riproduzione in un formato dettagliato. Tutte le istruzioni devono essere in inglese.

Le istruzioni non devono:

  • fare riferimento a istruzioni di altri invii o altre documentazioni;
  • riassumere le funzioni della tua app anziché offrire indicazioni;
  • fornire dettagli tecnici su come funzionano le tue API.

Ecco un ottimo esempio di istruzioni dettagliate:

  1. Premi il pulsante Impostazioni nel menu a sinistra.
  2. Seleziona Accedi con Facebook.
  3. Completa il terzo passaggio.
  4. Completa il quarto passaggio.

Se non sei ancora sicuro di cosa includere, consulta altri esempi nella sezione degli esempi per l'Analisi dell'app.

A causa delle modifiche apportate al processo di analisi e all'elevato volume di richieste previsto, potrebbero essere necessarie diverse settimane prima che le app inviate completino il processo di analisi.

Fornisci quante più informazioni possibili per aiutare il revisore, inclusi screenshot chiari, istruzioni dettagliate e uno screencast della tua app e della sua integrazione con Facebook.

Le app che utilizzano prodotti di condivisione mediati come plug-in social, finestre di dialogo Condividi e fogli di condivisione o un sottoinsieme di Facebook Login non devono essere esaminate da Facebook. Per maggiori informazioni su ciò che deve essere sottoposto ad analisi, consulta la nostra documentazione sull'Analisi dell'app.

Tutte le app vengono analizzate per garantire il rispetto degli standard di qualità di Facebook. In generale, gli utenti devono essere consapevoli che accedono a Facebook e pubblicano post. Inoltre, devono essere in grado di controllare le informazioni che condividono con la tua app o con Facebook.

Nota: gli utenti elencati nella tab Ruoli dell'app avranno accesso ad autorizzazioni estese senza passare attraverso il processo di analisi (ad esempio, user_posts). Tuttavia, quando l'app viene pubblicata deve essere sottoposta all'Analisi dell'app per accedere alle informazioni anche per le persone con ruoli nell'app.

Tutte le funzionalità dell'app dovrebbero essere disponibili quando l'app è in modalità sviluppo, ma sarai in grado di accedere solo ai tuoi dati, ai dati dell'utente test o ai dati delle tue Pagine. Se desideri rendere pubblica la tua app, anche se sei l'unico utente, deve sottoporla alla procedura di Analisi dell'app.

Business Manager

Se richiedi una lista di Pagine di un Business Manager tramite /BUSINESS_ID/pages, non è possibile richiedere tutti i campi della Pagina e l'API potrebbe rispondere con un errore di questo tipo: (#100) Unknown fields: <FIELD_NAME>.

Ciò è causato dal fatto che l'endpoint non restituisce un oggetto della Pagina come altri endpoint simili e inoltre include altri elementi, ad esempio le richieste in sospeso non approvate. Di conseguenza, non è possibile usare l'espansione dei campi per restituire i campi della Pagina.

Puoi usare l'endpoint <BUSINESS_ID>/owned_pages o <BUSINESS_ID>/client_pages, dal momento che entrambi restituiscono gli oggetti della Pagina e supportano l'espansione dei campi.

Per inviare una richiesta a una Pagina verificata, un partner manager di Facebook deve configurare l'account Business Manager per consentire l'invio di richieste indirizzate all'organizzazione associata alla Pagina. I Business Manager senza un partner manager di Facebook non saranno in grado di effettuare queste richieste.

Controllo sull'uso dei dati

Ecco cosa deve fare un amministratore dell'app nell'ambito del Controllo sull'uso dei dati:
1. Controllare le autorizzazioni e funzioni approvate di un'app
2. Certificare che l'app è conforme all'utilizzo consentito
3. Certificare la conformità alle Condizioni della piattaforma e alle Normative per gli sviluppatori di Facebook insieme a tutte le altre condizioni e normative applicabili

Il Controllo sull'uso dei dati e l'analisi dell'app sono due misure per garantire l'integrità della piattaforma distinte ma correlate. L'analisi dell'app è un processo orientato al futuro che consente l'accesso a determinate autorizzazioni della Piattaforma Facebook, chiedendo agli sviluppatori di inviare una richiesta per giustificare l'accesso alla piattaforma, che viene quindi analizzata manualmente dal nostro team Developer Operations. Una volta ottenuto l'accesso alla piattaforma, il Controllo sull'uso dei dati è un processo annuale che richiede agli sviluppatori di certificare che il loro uso continuativo dei dati di Facebook è conforme alle Condizioni della piattaforma e alle Normative per gli sviluppatori.

Devi certificare la conformità per conto di ogni app gestita dalla tua azienda.

Gli sviluppatori che gestiscono molte app avranno la possibilità di completare il Controllo sull'uso dei dati per più app contemporaneamente. Puoi accedere a questo flusso dalla pagina "Le mie app" nella Dashboard gestione app. Da lì, visualizzerai tutte le app di cui sei amministratore, potrai filtrarle per un sottoinsieme (ad es. solo quelle che richiedono il Controllo sull'uso dei dati) e completare il Controllo sull'uso dei dati.

Dovrai completare il controllo per ogni app che gestisci (ogni app potrebbe avere più autorizzazioni). Puoi certificare le app individualmente e dare la priorità a quelle che desideri, purché completi il processo entro la scadenza fissata per ciascuna app.

Ti verrà chiesto di certificare la conformità per tutte le autorizzazioni a cui hai accesso. Tuttavia, se ti rendi conto che non hai più bisogno di accedere a determinate autorizzazioni, puoi rimuovere queste autorizzazioni e non sarà più necessario certificarle.

Live e sviluppo sono due modalità delle app che hanno diverse implicazioni sulla funzionalità dell'app e sul Controllo sull'uso dei dati. La modalità sviluppo di solito viene utilizzata per testare, esplorare prodotti/autorizzazioni dell'API e completare l'analisi dell'app. Le app in modalità sviluppo non possono chiamare dati al livello dell'utente. La modalità live viene utilizzata per gli scenari di produzione e non limita l'accesso ai dati/alle autorizzazioni per cui le app hanno ricevuto l'approvazione nell'analisi dell'app. Il Controllo sull'uso dei dati è necessario solo per le app in modalità live.

Se per qualche motivo non sei in grado di accedere a un'app e devi riottenere lo stato di amministratore, clicca qui.

In generale, abbiamo tentato di raggruppare le scadenze delle app se hanno lo stesso amministratore, quindi dovresti avere la stessa scadenza per tutte le tue app. Tuttavia, potrebbero esserci delle eccezioni che comportano la necessità per alcuni amministratori di completare il processo entro scadenze diverse: ad esempio, se hai creato un'app dopo che altre hanno già superato il Controllo sull'uso dei dati, questa avrà una scadenza annuale diversa.

Puoi vedere tutte le app che richiedono il Controllo sull'uso dei dati accedendo alla pagina "Le mie app" nella Dashboard gestione app. Lì puoi vedere tutte le app che gestisci e filtrarle per quelle che richiedono il Controllo sull'uso dei dati.

Il processo deve essere completato dall'amministratore dell'app. Per verificare chi è un amministratore nella tua app, accedi alla Dashboard gestione app e clicca su "Ruoli" a sinistra nella pagina. Gli amministratori dell'app dovrebbero detenere una posizione di autorità per agire per conto della tua organizzazione.

Qualsiasi amministratore dell'app può certificare la conformità dell'app. Se ci sono più amministratori per un'app, solo uno di loro deve completare la certificazione.

Avrai 60 giorni dall'inizio del processo (ovvero quando ricevi il primo avviso per gli sviluppatori) fino alla scadenza.

Dopo la scadenza, inizieremo a revocare l'accesso alla piattaforma attraverso il throttling delle chiamate API per tutto il mese successivo alla scadenza. Durante questo periodo, potrai accedere alla Dashboard gestione app e completare il Controllo sull'uso dei dati per riportare la tua app allo stato di conformità e ripristinare completamente l'accesso alla piattaforma. Tuttavia, una volta trascorso un mese dalla scadenza, revocheremo completamente l'accesso alla piattaforma.

Potresti ancora essere in grado di accedere alla Dashboard gestione app, completare il Controllo sull'uso dei dati e ripristinare l'accesso. Tuttavia, effettuiamo periodicamente una "raccolta delle autorizzazioni inattive" per le app inattive, il che significa che dopo un certo periodo di inattività le tue autorizzazioni potrebbero essere rimosse in modo permanente e dovrai inviare la tua app per l'analisi per ottenere nuovamente l'accesso. Ti consigliamo di completare il Controllo sull'uso dei dati prima della scadenza per evitare questo scenario.

Controllo sull'uso dei dati mostrerà tutte le autorizzazioni a cui la tua app ha accesso, a prescindere dal fatto che tu le stia usando attivamente. Ti consigliamo di cogliere questa opportunità per controllare la tua integrazione, comprendere meglio le funzionalità della tua app e rimuovere l'accesso a tutte le autorizzazioni che non ti servono.

In alcuni casi, le informazioni sull'uso dell'API verranno visualizzate direttamente nel flusso di Controllo sull'uso dei dati. Altrimenti, puoi visualizzare i livelli di uso per ciascuna autorizzazione nella sezione "Autorizzazioni e funzioni" della Dashboard gestione app. Una volta effettuato l'accesso, clicca su "Analisi dell'app" a sinistra nella pagina, quindi seleziona "Autorizzazioni e funzioni" dal menu a discesa. Visualizzerai una colonna per "Chiamate API", che avrà un segno di spunta verde se i nostri registri mostrano che stai usando attivamente l'autorizzazione. Ricorda che questa è solo una stima: dovresti consultare il tuo team di sviluppo per capire se una determinata autorizzazione è necessaria per la tua integrazione.

Chiediamo agli sviluppatori di certificare la conformità per queste autorizzazioni "di base" concesse in modo automatico perché sono ampiamente usate e danno accesso ai dati degli utenti. Tuttavia, se non hai usato questi dati, dovresti comunque sentirti a tuo agio nel completare questo processo, poiché la certificazione indica che qualsiasi uso dell'autorizzazione è conforme, il che include il mancato uso.

Devi innanzitutto rimuovere l'autorizzazione tramite la Dashboard gestione app (clicca su "Le mie autorizzazioni e funzioni" nel menu a discesa a sinistra in "Analisi dell'app"). Quindi puoi completare la certificazione per le autorizzazioni e le funzioni rimanenti che stai ancora usando.

Tuttavia, ci sono alcune autorizzazioni concesse automaticamente che non possono essere rimosse e per cui potresti dover completare la certificazione. Se non hai usato questi dati, dovresti comunque sentirti a tuo agio nel completare questo processo, poiché la certificazione indica che qualsiasi uso dell'autorizzazione è conforme, il che include il mancato uso.

No. Dopo aver rimosso l'autorizzazione nella Dashboard gestione app, puoi aggiornare la pagina del Controllo sull'uso dei dati e l'autorizzazione rimossa non dovrebbe essere più visibile.

Dovrai completare il Controllo sull'uso dei dati per tutte le autorizzazioni a cui la tua app ha accesso.

Il Controllo sull'uso dei dati verrà implementato in modo graduale, perciò, anche se devi aspettarti di completare il processo nei prossimi mesi, la tua scadenza specifica potrebbe variare. Assicurati che le tue informazioni di contatto siano aggiornate nella Dashboard gestione app e controlla i tuoi avvisi per gli sviluppatori per la tua scadenza specifica.

Account e servizi per sviluppatori

In order to comply with certain legal obligations, Meta’s developer services may not be available in all locations, including countries and regions currently subject to U.S. sanctions prohibitions.

Registration reviews may take longer and you may be unable to access our service during that time. Please try again in a few days. For more information, please refer to Meta’s Terms of Service.

We are currently reviewing your registration details. This takes 24 to 48 hours. Once completed and approved, you may be able to login and complete your registration.

Strumenti per sviluppatori

Non puoi eliminare le immagini di screenshot o banner già approvati per l'App Center. Per sostituire queste immagini con quelle nuove, clicca su "Modifica" sullo screenshot o sul banner desiderato e scegli un'immagine sostitutiva.

Verifica se visualizzi il messaggio di errore senza effettuare una richiesta per user_photos. Ecco cosa fare se il messaggio di errore iniziale è ancora visibile: Effettua la richiesta API me/photos e torna indietro per verificare se il messaggio di errore è ancora visibile. Conferma che il messaggio non è più visibile. Quando effettui la chiamata di prova me/photos, assicurati di usare l'app desiderata e ottenere il token d'accesso corretto, che richiede l'autorizzazione user_photos. In questo modo, non dovresti riscontrare errori.

Lo scopo di questa verifica è assicurarsi che gli sviluppatori abbiano testato meticolosamente la funzione nella propria app prima di richiederci la stessa autorizzazione. Il test nell'app test non garantisce un comportamento stabile della stessa funzione all'interno dell'app principale. Devi effettuare la richiesta di test dall'app principale per assicurarti di vederla funzionare come previsto prima di attivarla per il pubblico. Segui i passaggi forniti su come effettuare una richiesta in modo manuale e verificare di non visualizzare più questo avviso nella dashboard.

La migrazione "Protezione URL post stream" impedisce alla tua app Facebook di pubblicare URL che non rimandano a un dominio dell'app. Non usare questa opzione se la tua app pubblicherà link ad altri siti.

La funzione della dashboard è stata rimossa. Dovrai usare l'endpoint "/{app-id}/accounts/test-users/" per associare l'utente test a un'app. Puoi trovare maggiori informazioni in merito qui.

Si tratta di un comportamento intenzionale, documentato qui: https://developers.facebook.com/docs/apps/test-users#rules. Gli utenti test non possono diventare fan di una Pagina Facebook pubblica o crearvi contenuti, ad esempio scrivendo sul diario di una Pagina. Tuttavia, un utente test può visualizzare tutte le tab dell'app sulla Pagina associata all'app usata per crearle e interagire con esse.

Si tratta di un comportamento intenzionale. Non consentiamo l'uso di più domini arbitrari per motivi di sicurezza.

Facebook Login

Si tratta di un comportamento intenzionale. La finestra di dialogo Accedi ha una larghezza fissa e non si ridimensiona per adattarsi agli schermi di dimensioni superiori.

Si tratta di un comportamento intenzionale. È responsabilità dello sviluppatore impostare il "redirect_uri" appropriato in base al dispositivo dell'utente, perciò, se l'utente accede da un dispositivo mobile, il "redirect_uri" dovrebbe essere l'URL del sito mobile.

Si tratta di un comportamento intenzionale, perché previene una potenziale vulnerabilità della sicurezza. Alcuni browser aggiungono il frammento hash di un URL alla fine di un nuovo URL a cui sono stati reindirizzati (se questo nuovo URL non dispone di un frammento hash).

Ad esempio, se esempio1.com restituisce un reindirizzamento a esempio2.com, un browser che accede a esempio1.com#abc accederà a esempio2.com#abc e i contenuti del frammento hash di esempio1.com sarebbero accessibili da uno script su esempio2.com.

Dato che è possibile fare in modo che un flusso di autenticazione reindirizzi a un altro, potrebbe essere possibile rendere i dati di autenticazione sensibili di un'app accessibili a un'altra. Questo scenario viene attenuato aggiungendo un nuovo frammento hash all'URL di reindirizzamento per impedire questo comportamento del browser. Se hai dubbi in merito all'estetica o al comportamento dal lato client dell'URL finale, è possibile usare window.location.hash (o perfino un tuo rendirizzamento lato server) per rimuovere i caratteri conflittuali.

API Graph

Test apps created from Business apps will have Standard Access for all permissions and features.

No. For a given permission, Business apps have either None, Standard, or Advanced Access.

Yes. For Business apps, the Advanced Access level includes access to all data within the Standard Access level.

Per condividere un URL, le dimensioni dell'immagine associata devono essere di almeno 200 x 200 pixel. In caso contrario, riceverai un errore simile a "Provided og:image is not big enough. Please use an image that's at least 200x200 px." (Le dimensioni dell'og:image fornito non sono sufficienti. Usa un'immagine di almeno 200 x 200 pixel).

Per scegliere un'immagine per un URL guardiamo prima il tag "og:image", verifichiamo se esiste e se le sue dimensioni superano il requisito di 200 x 200 pixel. Se il tag "og:image" non esiste, scegliamo la prima immagine che incontriamo nella pagina Web.

Se ricevi l'errore ma ritieni che le dimensioni dell'immagine del tuo sito siano maggiori di 200 x 200 pixel, devi verificare di aver impostato correttamente il tag "og:image", dato che la causa più probabile è che stiamo recuperando un'immagine errata dal tuo sito.

Abbiamo modificato il comportamento del plug-in di condivisione affinché sia coerente con altri plug-in e funzioni nella nostra piattaforma.

Il plug-in di condivisione non accetterà più parametri personalizzati e Facebook estrarrà le informazioni che vengono visualizzate nell'anteprima nello stesso modo in cui verrebbero visualizzate su Facebook come un post, dai metatag Open Graph.

No, non è possibile sovrascrivere il campo "caption" di un URL condiviso, ma solo quelli "title" e "description".

Un'app non può caricare contenuti su album creati da altre app.

In alcuni casi, esistono album che non sono associati ad alcuna app (album Foto bacheca). Ti consigliamo di controllare il campo can_upload. Se il campo can_upload restituisce il valore "false", significa che gli utenti non possono posizionare foto direttamente in questo album tramite la visualizzazione Album sul proprio profilo.

La call to action verrà mostrata sotto l'icona per la riproduzione al termine del video.

Per essere riproducibili su Facebook, le GIF devono avere una dimensione inferiore a 8 MB.

La creazione di commenti in post non pubblicati tramite l'API non è attualmente supportata.

I post con video creati in linea non vengono visualizzati nell'endpoint promotable_posts perché sono già promossi. Un post con video creato in linea è un post che è stato creato durante la procedura di creazione delle inserzioni, pertanto non può essere promosso separatamente.

È quindi previsto che i post creati in linea non vengano visualizzati nell'endpoint /promotable_posts.

Questo può succedere se usi un token d'accesso della Pagina in cui l'utente associato al token è elencato come analista nei ruoli in Impostazioni della Pagina.

Quando viene effettuata una richiesta per i dati usando l'API Graph, si applicano diverse regole sulla privacy che impediscono ad alcuni dati di essere restituiti nonostante siano visibili sul sito Web. Questo può dipendere da diversi fattori, come le impostazioni sulla privacy dell'utente, le autorizzazioni al livello dell'app e così via. Ciò significa che i dati restituiti dall'API non includono necessariamente tutti i dati visibili sul sito Web.

Se il post è stato creato usando "object_story_spec" dell'API Ads, questi post sono categorizzati come in linea. Per visualizzare tali post, dovrai usare il segmento /{page-id}/promotable_posts e il modificatore "is_inline" nella versione 2.3 e precedenti oppure "include_inline" nella versione 2.4 e successive. Puoi scoprire di più qui.

Il campo "shares" verrà restituito quando il post sarà stato condiviso per più di 10 volte. Se un post è stato condiviso meno di 10 volte, potremmo omettere il campo o tentare di restituire un numero.

Puoi scoprire di più su questo endpoint qui: https://developers.facebook.com/docs/graph-api/reference/v2.4/post.

Si tratta di un valore obsoleto usato nella nostra infrastruttura precedente che abbiamo mantenuto per motivi di retrocompatibilità quando siamo passati a quella nuova.

Questo scenario si verificherà solo con i post precedenti e non con quelli recenti.

Sta funzionando tutto correttamente. Non c'è alcuna connessione tra il post e le foto contenute in un post. Restituiamo solamente la prima immagine che è stata caricata all'interno del post.

Il campo "application" non verrà restituito se il post è attribuito al sito Web o all'app mobile di Facebook. Questo è in linea con il sito, che non mostra l'attribuzione per questi tipi di post.

Il campo "privacy" di un post includerà le informazioni relative alla visibilità di tale post su Facebook. Tuttavia, quando un post della Pagina include la targetizzazione o è limitato per essere visibile solo a un pubblico specifico, le informazioni nel campo "privacy" non mostrano tutte le opzioni di targetizzazione selezionate.

Per vedere i dettagli completi della targetizzazione o della limitazione del post, controlla il campo "targeting" (per la limitazione) e il campo "feed_targeting" (per la targetizzazione della sezione Notizie). Consulta la documentazione relativa ai post per ulteriori informazioni sui campi disponibili.

Il valore comment_count restituito per un post potrebbe includere commenti che sono stati nascosti o eliminati. Il numero di commenti visibili in un post non sarà mai superiore rispetto al valore comment_count.

Non è possibile sovrascrivere il campo "caption" di un URL condiviso. Puoi sovrascrivere solamente i campi "title" e "description" di tale URL.

Per maggiori informazioni e per scoprire i campi che puoi pubblicare mediante l'API Graph, consulta la documentazione relativa a /feed qui: https://developers.facebook.com/docs/graph-api/reference/v2.3/page/feed#publish.

Si tratta di una scelta a livello di progettazione. È in linea con il modo in cui i contenuti generati dall'app Facebook (mobile o web) vengono visualizzati (senza attribuzione a Facebook stesso).

Abbiamo apportato degli aggiornamenti per quanto riguarda il modo in cui i dati dei post e di flusso vengono recuperati e presentati tramite l'API.

Se stai riscontrando problemi con il recupero di post mediante l'API e ritieni che non stia funzionando come documentato, ecco come procedere:

  • Verifica che il token d'accesso che stai usando disponga delle autorizzazioni appropriate per accedere ai post che ti interessano.
  • Assicurati che le chiamate API effettuate per recuperare i post stiano utilizzando il valore "id" restituito in una chiamata precedente e che tu non stia creando manualmente gli ID in base alla pagina, all'utente o ad altri ID.

Le foto caricate tramite Instragram vengono pubblicate come azioni Open Graph e richiedono le autorizzazioni Open Graph appropriate per essere lette dall'API Graph.

Nel caso delle foto di Instagram, l'autorizzazione necessaria è "user_actions:instapp", in quanto "instapp" è lo spazio dei nomi dell'app per Instagram.

Le azioni Open Graph non vengono visualizzate nella connessione /feed ma, quando una foto viene caricata come azione Open Graph, può essere accessibile con le autorizzazioni appropriate tramite la connessione degli album dell'utente o la connessione /photos, a seconda dei casi.

Maggiori informazioni sulle autorizzazioni Open Graph sono disponibili qui.

È un comportamento intenzionale. Il nostro sistema restituisce il messaggio di errore citato per gli oggetti che sono stati eliminati o sono invisibili ai controlli di privacy/autorizzazione.

Questo comportamento è previsto e questa forma di paginazione non è supportata per i commenti.

Il campo total_count del parametro summary dell'endpoint /{user-id}/accounts potrebbe restituire un numero più elevato del previsto. Ciò avviene a causa del fatto che total_count include anche eventuali Pagine eliminate in cui l'utente rivestiva il ruolo di amministratore.

I dati restituiti dall'endpoint stesso, tuttavia, includeranno solo le Pagine non eliminate.

L'endpoint /user/likes ora adotta una paginazione basata sul cursore (che usa i parametri "before" e "after") invece della paginazione basata sul tempo (che usa "since" e "until" come parametri) .

Puoi scoprire di più sulle relative differenze qui: https://developers.facebook.com/docs/graph-api/using-graph-api/v2.3#paging.

Con l'introduzione degli ID utente per singola app, abbiamo apportato delle modifiche al modo in cui l'endpoint restituisce i dati.

Dato che la versione 1.0 è diventata obsoleta, ci concentreremo sulla versione 2.x. /v2.0/{id} potrebbe restituire https://www.facebook.com/{id} oppure https://www.facebook.com/app_scoped_user_id/{id}.

Si tratta di un comportamento intenzionale. Questo errore indica che il token d'accesso che stai tentando di estendere non è in grado di accedere all'ID app che sta tentando di estendere tale token.

Molto probabilmente questo accade se la tua app ha dei filtri demografici applicati e rileviamo che l'utente il cui token stai tentando di estendere non rientra in tali filtri (o non rientra più in tali filtri, può aver modificato il proprio luogo o è possibile che ora abbiamo rilevato un luogo più preciso per lui).

L'altro motivo più probabile è che non possiamo confermare che l'utente soddisfa i requisiti (ad es. non sappiamo in che luogo si trovi) e i filtri della tua app non consentono a questi utenti di accedere all'app.

A partire da luglio 2013, non è più possibile usare l'endpoint di ricerca con un'e-mail nel tipo di ricerca dell'utente.

Inoltre, con l'introduzione della versione 2.0, sono stati apportati molti cambiamenti all'API Graph. Le ricerche nei post pubblici e le ricerche di parole chiave non sono disponibili nella versione 2.0.

Per maggiori dettagli, consulta il registro modifiche.

Qualsiasi app creata dopo il 30 aprile 2014 usa la versione 2 e quelle successive dell'API, che restituiranno gli amici dell'app solo con l'endpoint /me/friends, come hai affermato. Inoltre, tutti gli ID utente ora sono ID per singola app, che sono univoci e permanenti per l'app specifica.

Puoi scoprire di più su tutte le nuove funzioni e modifiche implementate con la versione 2.0.

La documentazione per il campo email dell'oggetto User chiarisce il comportamento previsto in questo caso, cioè: "questo campo non verrà restituito se non è disponibile un indirizzo e-mail valido".

Ci sono una serie di circostanze in cui potresti pensare che un utente dovrebbe restituire un indirizzo e-mail, ma non accadrà. Per motivi di privacy e di sicurezza, non è possibile approfondire la ragione precisa per cui l'indirizzo e-mail di un utente specifico qualsiasi non verrà restituito.

Ecco alcuni motivi possibili:

  • Nessun indirizzo e-mail indicato nell'account
  • Nessun indirizzo e-mail confermato nell'account
  • Nessun indirizzo e-mail verificato nell'account
  • L'utente ha inserito un checkpoint di sicurezza che gli ha richiesto di confermare nuovamente il proprio indirizzo e-mail e non lo ha ancora fatto
  • L'indirizzo e-mail dell'utente non è raggiungibile
Inoltre, hai bisogno dell'autorizzazione "email" avanzata, anche per gli utenti che hanno registrato un indirizzo e-mail valido, confermato e raggiungibile.

Questi post non possono essere recuperati tramite l'API perché in tali post i contenuti di un utente vengono ricondivisi in una Pagina e l'utente non ha autorizzato l'app a vedere i propri contenuti.

I post dell'utente condivisi sul diario di una Pagina non saranno disponibili tramite l'API se l'utente ha disattivato l'autorizzazione di base per il tipo di contenuto del post.

Come soluzione per visualizzare i post con foto mancanti dei fan, potresti riuscire a recuperare gli album della Pagina usando il token d'accesso della Pagina. Le foto dovrebbero trovarsi nell'album Foto del diario.

Anche se un post è pubblico e menziona la Pagina che viene richiesta, la tua app non può vedere tali post senza l'autorizzazione read_stream da parte del proprietario dei post. Ciò significa che l'endpoint {page_id}/tagged non restituisce tutti i post.

Puoi trovare maggiori informazioni in merito nella documentazione relativa ai feed delle Pagine.

Ci sono casi in cui un'app specifica (o qualsiasi app) non sarà in grado di ottenere informazioni su un utente Facebook a causa delle impostazioni sulla privacy di tale utente. Questo include l'accesso ai post creati da tale utente in un contesto in cui la tua app si aspetta di essere in grado di vedere il post (ad es. nella gestione della Pagina).

Questo scenario si verifica ad esempio quando un utente ha bloccato l'app o ha disabilitato l'accesso alle proprie informazioni per tutte le app della piattaforma mediante l'API.

Con il lancio della versione 2.1 dell'API Graph, questa funzionalità è stata rimossa. Per le app create prima del 7 agosto 2014, questo campo non è più presente in signed_request.

Per le app create prima di questa data, la proprietà liked restituirà sempre true, che l'utente abbia messo "Mi piace" alla Pagina o no.

Usa direttamente i link paging.next e paging.previous restituiti nella risposta per ottenere le altre pagine dei risultati. L'uso dei link forniti garantirà che l'app continui a funzionare correttamente se il formato dei link di paginazione cambiasse in futuro.

Come la maggior parte degli elementi nell'API, questi dati non rappresentano una mappatura con corrispondenza esatta delle funzioni e delle funzionalità del sito principale di Facebook. Quella che l'interfaccia utente di Insights della Pagina definisce copertura organica è molto diversa e viene calcolata in modo differente rispetto alla copertura organica tramite l'API.

Ad esempio, il valore "organic" nell'interfaccia utente di Insights della Pagina corrisponde al valore "unpaid" nella metrica page_impressions_by_paid_non_paid_unique disponibile nell'API Graph.

Stiamo lavorando per allineare queste statistiche, ma potrebbe essere necessario un po' di tempo.

Questo errore indica che l'utente associato al token d'accesso non è in grado di visualizzare questa Pagina per ragioni di privacy. Ad esempio, la Pagina potrebbe non essere pubblicata e inoltre l'utente potrebbe non essere un amministratore valido della Pagina.

Questo errore in genere si verifica quando stai cercando di recuperare i dati statistici di una Pagina molto attiva. Questi dati possono essere tracciati se riduci l'intervallo di tempo per cui stai richiedendo i dati statistici usando i campi "since" e "until".

Si tratta di un comportamento previsto per le app test e le app in modalità sviluppo. Una volta pubblicata l'app, funzioneranno come previsto.

Il bug correlato a questo vincolo di progettazione può essere visualizzato qui.

Solo un amministratore, un editor o un moderatore può leggere e inviare messaggi della Pagina. Le persone con ruoli diversi, come un inserzionista o un analista, non possono leggere le conversazioni della Pagina.

Visita questa pagina del Centro assistenza per scoprire di più sui diversi ruoli nella Pagina: https://www.facebook.com/help/289207354498410.

Il numero totale di "page_fans" e quello di "page_fans_country" non è sempre uguale. Ci sono molti fattori che possono influire sul valore "page_fans_country". Ad esempio, alcuni fan della Pagina potrebbero non aver impostato il proprio Paese nell'account oppure altri ancora potrebbero avere un'impostazione sulla privacy che nasconde il Paese di appartenenza.

Per scoprire di più sulle impostazioni sulla privacy di Facebook, visita questa pagina del Centro assistenza: https://www.facebook.com/help/445588775451827.

Alcuni post della Pagina pubblici sono ricondivisioni di contenuti degli utenti. Se l'utente che ha creato il post non ha concesso le autorizzazioni necessarie all'app, questa non può accedere ai suoi post tramite l'API Graph, pertanto non può commentare tali post.

I post che vengono creati in linea come parte della creazione delle creatività dell'inserzione non possono essere messi in evidenza separatamente. Di conseguenza, tali post non verranno nemmeno visualizzati in una chiamata all'endpoint /promotable_posts di una Pagina.

Purtroppo attualmente non supportiamo la creazione, l'aggiornamento o l'eliminazione delle immagini di copertina tramite l'API.

Per scoprire di più sull'API in relazione alle immagini di copertina, visita https://developers.facebook.com/docs/graph-api/reference/cover-photo/#Creating.

Questo è il comportamento attuale. Gli amministratori della Pagina non possono pubblicare sulle Pagine a nome proprio tramite l'API Graph. Questa funzionalità è disponibile solamente su http://www.facebook.com/ e nelle nostre app mobili.

No, non c'è alcun modo per ottenere l'intera lista delle persone che hanno messo "Mi piace" a una Pagina. Si tratta di una scelta a livello di progettazione.

Quando esegui azioni per conto di una Pagina, assicurati di usare un token d'accesso della Pagina. Il messaggio di errore indica che stai usando un token d'accesso dell'utente invece di un token d'accesso della Pagina.

Puoi scoprire di più sui diversi tipi di token d'accesso qui: https://developers.facebook.com/docs/facebook-login/access-tokens.

Non è possibile, puoi fissare i post in alto e leggere i post fissati in alto solo attraverso i prodotti Facebook nativi.

Se hai attivato Comment Mirroring per l'URL esterno, le reazioni ai post in cui i commenti sono soggetti a mirroring verranno registrati rispetto all'URL stesso e verranno restituiti in caso di chiamata a {URL-id}/reactions>.

Al momento, l'estrazione di dati per più di 1000 valori dei dettagli dell'endpoint /app_insights/app_event non è supportata. Ti consigliamo di usare l'interfaccia utente di Facebook Analytics per suddividere i punti di rilevamento specifici, ad esempio determinati Paesi, se ti interessa visualizzarne i dettagli in base a categorie specifiche.

Probabilmente, stai chiamando l'endpoint troppo presto rispetto alla trasmissione dei dati ai nostri server.

Effettua le chiamate API dopo 1 o 2 secondi, in modo che le informazioni possano raggiungere tutti i nostri server.

Di solito, la metrica "page_fans_country" rappresenta un sottoinsieme del numero indicato da page_fans. Questa metrica consente di visualizzare i dettagli dei fan della Pagina in base al Paese, a condizione che sia possibile stabilire con precisione il Paese di provenienza dell'utente.

Inoltre, la metrica include solo i Paesi principali (per numero di fan) relativamente ai fan della Pagina e non tutti quelli in cui sono presenti fan. Per le Pagine che hanno fan provenienti da molti Paesi, i Paesi meno popolosi verranno esclusi dalla metrica in questione.

L'API non supporta l'uso della paginazione basata sull'offset.

Devi usare i link "paging" restituiti al termine di ciascuna risposta dell'API Graph o la paginazione basata sul cursore, che è l'opzione preferibile.

Maggiori informazioni sulla paginazione corretta tramite API Graph sono disponibili qui: https://developers.facebook.com/docs/graph-api/using-graph-api/v2.3#paging.

Esistono token d'accesso di breve e lunga durata. Il token d'accesso di breve durata è concepito per sessioni brevi e in genere scade dopo alcune ore.

Puoi sostituire un token di breve durata con uno di lunga durata, che ha una validità di circa 60 giorni.

Puoi trovare maggiori informazioni in merito nella documentazione relativa ai token d'accesso.

Si tratta di un comportamento intenzionale. L'API Search rispetta la privacy su Facebook, è personalizzata in base all'utente di cui stai usando il token d'accesso, non supporta la ricerca di hashtag e non è progettata per essere uguale alla stessa ricerca eseguita nell'anteprima di ricerca su Facebook.com.

Non promuoviamo né ci poniamo come obiettivo che l'API Search restituisca lo stesso volume di risultati o risultati specifici delle ricerche su Facebook.com. Inoltre, in generale i post che vengono restituiti tramite l'API sono soggetti a controlli di privacy e di sicurezza più restrittivi rispetto agli stessi post su Facebook stesso.

Il nostro sistema impone il rate limiting sulle chiamate API effettuate dalle app. Per scoprire di più sui diversi limiti e impedire che la tua app venga sottoposta a throttling, visita https://developers.facebook.com/docs/marketing-api/api-rate-limiting.

Instant Articles

Puoi aggiungere immagini GIF animate all'articolo tramite un elemento <figure> che racchiude un elemento <img> riferito all'URL dell'immagine GIF. Come per le altre immagini, puoi aggiungere didascalie e attribuzioni alle immagini GIF.

Per maggiori dettagli ed esempi, consulta la documentazione qui.

Puoi usare nuovamente l'URL di un feed su diverse Pagine, ma tieni presente che vengono caricati solo gli articoli i cui URL canonici corrispondono ai domini reclamati dalla Pagina.

La procedura consigliata è usare feed RSS separati per ogni Pagina contenente solo gli articoli che devono essere caricati da quest'ultima.

Puoi aggiungere gli elementi social incorporati supportati, compresi i video, tramite gli elementi social incorporati. Per altri strumenti di riproduzione dei video di terzi, puoi aggiungerli all'articolo in forma di elemento interattivo incorporato.

Puoi incorporare elementi grafici e contenuti interattivi negli articoli tramite un elemento <figure> con la classe op-interactive. Figure deve contenere un elemento <iframe>, che a sua volta include il contenuto da incorporare.

Puoi trovare maggiori dettagli e consultare esempi qui.

Puoi specificare una didascalia usando l'elemento <figcaption>. All'interno della didascalia, puoi aggiungere un'attribuzione tramite l'elemento <cite>.

Puoi trovare maggiori dettagli ed esempi nella documentazione disponibile qui.

Quando gli articoli sono in modalità Bozza, sono visibili come articoli interattivi solo agli amministratori della Pagina. Una volta che l'articolo viene pubblicato e presenta il relativo stato di pubblicazione, può essere condiviso su Facebook e visualizzato come articolo interattivo da chiunque.

Verifica di aver concesso l'autorizzazione pages_manage_instant_articles all'app. Tale autorizzazione è obbligatoria per chiamare i metodi API e per aggiornare gli articoli interattivi della Pagina.

Puoi trovare maggiori informazioni sull'uso dell'API qui.

Se stai usando l'attributo dir="rtl" per visualizzare una lingua con lettura da destra a sinistra nell'articolo, potresti visualizzare l'articolo in un'app che non supporta tali lingue negli articoli interattivi.

Verifica di usare la versione più recente dell'app. La versione minima di ogni app che supporta le lingue con lettura da destra a sinistra è indicata di seguito:

  • Facebook per iOS: 52.0
  • Facebook per Android: 69.0
  • Gestore delle Pagine per iOS: 44.0
Tieni presente che al momento non supportiamo le lingue con lettura da destra a sinistra in Gestore delle Pagine per Android.

Controlla se l'attributo dir="rtl" risulta impostato nel tag <body> dell'articolo. Se l'articolo non usa una lingua con lettura da destra a sinistra, non devi impostare questo attributo nell'articolo.

Verifica di aver impostato l'attributo dir nel tag body dell'articolo. Per le lingue con lettura da destra a sinistra, devi impostare l'attributo dir su "rtl".

L'anteprima per la sezione Notizie di un articolo usa l'immagine specificata nel metatag og:image della versione Web dell'articolo. Puoi anche decidere di sostituire l'immagine con un video, aggiungendo la classe "fb-feed-cover" per qualsiasi video nell'articolo. Puoi leggere maggiori informazioni sulle anteprime per la sezione Notizie qui.

Quando l'URL di un articolo viene condiviso prima della pubblicazione dell'articolo interattivo, reindirizza alla versione Web mobile dell'articolo. Una volta pubblicato l'articolo interattivo, tutte le condivisioni del link, inclusi i post precedenti alla pubblicazione dell'articolo, visualizzano automaticamente l'articolo interattivo su mobile.

Al momento, la metrica "views" include solo gli utenti iOS. Le visualizzazioni su Android vengono conteggiate separatamente nella metrica "android_views".

Puoi trovare maggiori informazioni in merito qui.

Dobbiamo ancora lanciare il supporto del feed di sviluppo in Gestore delle Pagine per Android. Come soluzione alternativa per visualizzare gli articoli su Android, per il momento puoi provare ad aggiungere gli articoli al feed di produzione come bozze.

Per modificare gli articoli interattivi, puoi usare l'interfaccia della Pagina. A tale scopo, accedi alla Pagina nel browser e vai a Strumenti di pubblicazione > Articoli interattivi. Qui puoi visualizzare e modificare i tuoi articoli. Puoi trovare maggiori informazioni in merito qui: https://developers.facebook.com/docs/instant-articles/publishing.

Attualmente, il timeout per il download del feed è di 30 secondi.

No. Il link condiviso deve corrispondere all'URL canonico dell'articolo. Se l'URL viene modificato, ad esempio aggiungendo parametri, verrà considerato come un altro URL.

Qualsiasi errore o avviso individuato durante il caricamento del feed RSS viene mostrato nella tab Articoli interattivi della pagina Impostazioni. Puoi anche visualizzare avvisi ed errori per singoli articoli cliccando sull'articolo nella tab Articoli interattivi della pagina Strumenti di pubblicazione.

Verifica che il feed RSS segua il formato documentato qui.

Inoltre, l'URL canonico degli articoli deve usare il dominio configurato per la Pagina o un suo sottodominio. Se i nuovi articoli vengono caricati, ma non visualizzi gli aggiornamenti a quelli esistenti, verifica di aver portato avanti data e ora di "op-modified".

Puoi trovare maggiori informazioni in merito qui.

Un motivo comune per cui gli articoli non vengono aggiornati dal feed RSS è che data e ora di op-modified dell'articolo nel feed corrispondono a quelle dell'ultima versione che abbiamo recuperato. Aggiorniamo gli articoli solo quando data e ora sono successive all'ultima versione.

Inoltre, devi anche confermare che lo stesso URL canonico sia stato usato nella versione aggiornata dell'articolo.

Puoi consultare la documentazione per maggiori informazioni sul modo in cui recuperiamo gli articoli dal feed RSS qui.

Proviamo a caricare completamente e analizzare il tuo feed RSS entro 10 secondi. Questo errore indica che l'operazione non ha avuto esito positivo.

Un modo per risolvere questo problema è includere un numero minore di elementi nel feed RSS, ad esempio inserendo solo articoli nuovi o modificati entro gli ultimi 10 minuti circa. Poiché il feed viene recuperato ogni 3 minuti, non è necessario includere gli articoli non modificati.

Purtroppo non disponiamo di un elenco di indirizzi IP statici per il crawler. Tuttavia, puoi usare lo user agent del nostro crawler: facebookexternalhit/1.1

Se un aggiornamento a un articolo interattivo esistente ha più di 24 ore, in base all'ora di op-modified, verrà escluso dall'estrazione. Di conseguenza, l'ora modificata deve ricadere all'interno delle 24 ore relative alla modifica dell'articolo esistente e non dell'ora corrente. Quando l'aggiornamento viene ignorato, puoi modificare gli articoli manualmente tramite l'editor degli articoli interattivi basato sul Web.

Puoi trovare maggiori informazioni in merito qui.

Controlla se gli articoli duplicati usano URL canonici diversi. Usiamo l'URL canonico di un articolo come identificatore univoco, pertanto gli articoli con URL canonici diversi vengono considerati come articoli separati.

Un problema comune è dato dal fatto che il CMS potrebbe pubblicare aggiornamenti agli articoli con un URL diverso, determinando il caricamento di tali aggiornamenti come nuovi articoli.

Sì, ogni Pagina viene mappata in modo univoco in un nome del dominio e si tratta di una mappatura a corrispondenza esatta. Richiediamo che gli articoli interattivi appartenenti a una data Pagina abbiano URL canonici appartenenti al dominio specificato o a un sottodominio dello stesso.

Tuttavia, il dominio dell'URL del feed RSS non deve corrispondere a quello mappato nella Pagina. Questa limitazione è valida solo per gli URL canonici degli articoli nel feed.

Per pubblicare gli articoli in Pagine diverse in base alla lingua, devi configurare feed RSS diversi per ogni lingua e configurare ogni Pagina affinché usi il feed RSS corretto.

No. Una volta che l'articolo è stato caricato dal feed RSS, resta memorizzato come articolo interattivo finché non viene eliminato dagli strumenti di pubblicazione della Pagina. A quel punto, puoi rimuoverlo in sicurezza dal feed RSS per velocizzare il recupero successivo.

Al momento non è possibile pubblicare o eliminare articoli tramite API, sebbene stiamo lavorando per renderlo possibile.

Il pulsante "Mi piace" usa il risalto del colore configurato nelle impostazioni sullo stile. Verifica di aver configurato un colore visibile rispetto all'intestazione.

Inoltre, il pulsante "Mi piace" viene mostrato solo se l'utente che visualizza l'articolo non ha già messo "Mi piace" alla Pagina, pertanto non è visibile dagli amministratori della Pagina che vi hanno già messo "Mi piace".

Verifica di non usare più tag <br> di seguito. Per suddividere il testo dell'articolo in più paragrafi, ti consigliamo di usare i tag di paragrafo (<p>) piuttosto che le interruzioni di riga.

Assicurati di aver aggiunto la classe "op-tracker" al tag <figure> che racchiude il pixel di monitoraggio. Senza questo tag, viene considerato come un elemento immagine incorporato.

Verifica di aver usato un formato supportato per il file video. Puoi trovare un elenco di tutti i formati video supportati qui.

Devi anche assicurarti di includere correttamente l'elemento video incorporato in un tag <figure> e di non includerlo in un paragrafo (tag <p>).

Di solito, questo avviso viene mostrato se hai inserito contenuto non testuale, ad esempio immagini o elementi interattivi incorporati, all'interno dei paragrafi (tag <p>). I paragrafi devono contenere solo il corpo del testo, mentre gli altri contenuti devono essere aggiunti all'interno del tag <figure> o di altri elementi del contenitore appropriati.

No. L'elemento Caption (<figcaption>) supporta solo i tag <h1>, <h2> e <cite>. Il tag di paragrafo (<p>) non è supportato.

Al momento, l'attributo "muted" non è supportato negli elementi <video>.

Le inserzioni negli articoli vengono definite usando l'elemento HTML5 <figure> standard che include un elemento <iframe> contenente il markup dell'inserzione. Puoi applicare la classe op-ad a un elemento <figure> per specificare un'inserzione in un articolo. Puoi specificare le inserzioni in due modi: indicando l'URL dell'inserzione in modo diretto tramite l'attributo "src" nell'iframe o incorporando l'insieme senza escape di codice HTML e script nell'iframe.

Puoi trovare maggiori informazioni sulle inserzioni qui: https://developers.facebook.com/docs/instant-articles/reference/ad.

L'elemento image standard non supporta l'uso delle immagini SVG. Invece, puoi usare un elemento incorporato interattivo ("op-interactive") e aggiungere un elemento <img> nell'iframe, con l'attributo "src" impostato sull'URL dell'immagine SVG.

Puoi usare l'elemento Map documentato qui: https://developers.facebook.com/docs/instant-articles/reference/map. Si tratta del modo consigliato per aggiungere le mappe agli articoli interattivi.

Se aggiungi all'articolo un elemento incorporato di Google Maps come elemento incorporato interattivo, si verifica un problema noto relativo al funzionamento dell'elemento incorporato che potrebbe impedire la visualizzazione della mappa. Come soluzione alternativa al problema, devi racchiudere l'iframe che carica il contenuto della mappa ("https://www.google.com/maps/embed?...") all'interno di un altro iframe.

Puoi incorporare i moduli interattivi tramite un elemento figure di op-interactive. Puoi trovare maggiori dettagli ed esempi di codice qui: https://developers.facebook.com/docs/instant-articles/reference/interactive.

Per definire l'altezza, aggiungi l'attributo "height" all'elemento <iframe> che racchiude il contenuto incorporato. Il valore dell'attributo deve essere intero e deve indicare l'altezza in pixel. Puoi impostare l'altezza fino a un massimo di 960 pixel.

Puoi aggiungere una copertina inserendo un tag <figure> nell'intestazione. Puoi usare un'immagine o un video come copertina, aggiungendo un tag <img> o <video> in figure.

Puoi trovare maggiori informazioni sulle copertine qui.

Per aggiungere spazi tra le immagini, puoi aggiungere paragrafi vuoti tra di esse, ad esempio <p>&nbsp;</p>.

Per aggiungere un'attribuzione, usa un elemento <cite> all'interno di <figcaption>.

Nelle immagini di copertina, puoi specificare che l'attribuzione sia sempre visibile, indicando in modo esplicito uno degli attributi Vertical Alignment nell'elemento <cite>. Altrimenti, la tua citazione verrà mostrata nell'immagine solo dopo averla espansa.

Puoi aggiungere elementi social incorporati aggiungendo un elemento figure con la classe "op-social" e aggiungendo un iframe con il contenuto da incorporare.

Per maggiori dettagli ed esempi di codice, consulta questo documento.

Per aggiungere una copertina, devi usare un link diretto a un file video (ad esempio un file .mp4). Poiché i video ospitati su Facebook non forniscono link diretti, devi ospitare il video altrove per usarlo come copertina.

Puoi usare alcuni tag HTML nelle voci dell'elenco, ad esempio per il testo in grassetto o per aggiungere link. Per personalizzare il colore o lo stile del carattere, puoi usare lo Style Editor nell'interfaccia della Pagina Facebook (Impostazioni->Articoli interattivi).

Se stai incorporando un video tramite l'elemento HTML <video>, tale operazione non è possibile poiché non supportiamo la riproduzione di più video in sequenza.

Se stai incorporando uno strumento di riproduzione dei video come elemento social incorporato in un iframe, tale operazione dovrebbe essere possibile, a condizione che lo strumento di riproduzione incorporato la supporti.

Le citazioni non sono supportate e devono essere posizionate all'esterno dei tag di paragrafo.

Se il titolo dell'articolo è abbastanza lungo da essere visualizzato su due righe, nella sezione Notizie verrà mostrato solo il titolo. Se il titolo si adatta a una sola riga, l'anteprima per la sezione Notizie mostra anche la parte iniziale del testo dell'articolo.

Verifica di non aver aggiunto l'attributo "data-fb-disable-autoplay" per i video.

Se i video non vengono riprodotti automaticamente per un dato utente, verifica che la riproduzione automatica dei video non sia stata disabilitata nelle impostazioni dell'app Facebook. Puoi trovare istruzioni per verificare questa situazione qui.

Puoi visualizzare un video nell'anteprima per la sezione Notizie di un articolo aggiungendo la classe "fb-feed-cover" per qualsiasi video nell'articolo. Puoi leggere maggiori informazioni sulle anteprime per la sezione Notizie qui.

Includere un elemento <time> nel markup HTML di ogni articolo, tramite la classe op-published, per specificare la data e l'ora di pubblicazione originali dell'articolo, costituisce un requisito obbligatorio.

La classe op-modified no. Devi includere un elemento <time> in questa classe solo se stai aggiornando il contenuto dell'articolo e desideri che la versione dell'articolo che abbiamo memorizzato venga aggiornata.

Verifica di aver racchiuso il testo in paragrafi (tag <p>). Puoi trovare maggiori informazioni sulla creazione del markup dell'articolo qui.

Verifica che l'elemento <figure> non sia racchiuso in paragrafi (tag <p>). Le immagini devono essere contenute in tag figure nidificate direttamente nel tag article.

Purtroppo non è possibile aggiungere didascalie a singole immagini all'interno degli slideshow. Puoi aggiungere solo una singola didascalia per l'intero slideshow.

Per maggiori dettagli, consulta la documentazione sugli slideshow.

Puoi aggiungere la possibilità di mettere "Mi piace" a un'immagine o commentarla specificando l'attributo "data-feedback" nel tag <figure> che contiene l'immagine. Ad esempio, aggiungendo l'attributo data-feedback="fb:likes,fb:comments" vengono visualizzati sia i "Mi piace" che i commenti relativi all'immagine.

Per maggiori informazioni, consulta la documentazione sull'attributo feedback.

Quando indichi una larghezza per gli elementi come quelli interattivi incorporati, usa un valore intero per specificare la larghezza in pixel. Per impostazione predefinita, gli elementi vengono visualizzati alla larghezza intera.

Per visualizzare un elemento incorporato interattivo senza margini, puoi aggiungere la classe "no-margin" all'iframe che include il contenuto.

Se abbiamo già approvato il feed RSS della tua Pagina, non devi inviarlo di nuovo per l'approvazione se modifichi l'URL del feed.

Mappiamo ogni Pagina in un nome del dominio univoco. L'URL del feed RSS stesso non corrisponde a tale nome del dominio. Tuttavia, l'URL canonico dei singoli articoli nel feed deve appartenere allo stesso dominio o a un suo sottodominio. Se stai modificando solo l'URL del feed RSS, non si determineranno problemi.

Se aggiorni anche gli URL canonici degli articoli affinché indirizzino a un nuovo dominio, dovrai richiedere l'aggiornamento di tale dominio tramite il tuo partner manager, che dovrebbe essere in grado di guidarti lungo il processo.

SDK per iOS

Assicurati che la tua app Facebook disponga di un Store ID iPhone reale, un Store ID iPad impostato (a scopo di test non è necessario che si tratti del tuo ID reale, puoi usare quello di un'app qualsiasi disponibile nell'App Store di Apple) e abbia iOS e iPad abilitati nelle piattaforme elencate nell'App Center.

Si tratta di una scelta a livello di progettazione. La finestra di dialogo delle Notizie pubblica i contenuti con un allegato, quindi non è possibile personalizzare ulteriori allegati.

SDK JavaScript

Consulta il documento disponibile qui per scoprire le best practice relative all'ottimizzazione delle immagini, per creare anteprime ottimali.

I dati di risposta sono disponibili solo se l'utente ha effettuato l'accesso alla tua app tramite Facebook e se ha concesso l'autorizzazione publish_actions. Questo caso è documentato anche qui.

Si tratta di una modifica intenzionale. Abbiamo abbreviato la lista di amici nel tentativo di rendere le richieste dei giochi più pertinenti per il giocatore appropriato. Tieni presente che i giocatori possono ancora selezionare tutti gli amici che desiderano usando il campo di ricerca.

La buona notizia è che con questo cambiamento abbiamo registrato un aumento dei clic e un notevole aumento del CTR complessivo. Continueremo a ottimizzare questo canale e a trovare nuovi modi per garantire che i giochi giusti vengano proposti alle persone giuste.

Condivisione di link

Il crawler cerca un record AAAA e restituisce un codice di risposta 0 se non lo trova. Assicurati che il record AAAA venga aggiornato correttamente quando modifichi l'URL o il server.

Per maggiori informazioni, consulta Aggiornamento degli URL.

Le modifiche ai tag og:title, og:image e così via si applicano solo alle condivisioni successive del link.

Una volta che una persona o una Pagina condivide un link e ci sono più di 50 interazioni con il post (commenti, "Mi piace", condivisioni, ecc.), il titolo non può essere modificato. Questo serve a evitare che un sito modifichi i dettagli di un link dopo che gli utenti hanno interagito con esso, dando l'impressione che abbiano interagito con qualcosa di diverso. Tutte le altre proprietà possono essere modificate in qualsiasi momento.

Se hai condiviso un link e aggiornato l'immagine, la condivisione originale continuerà a mostrare l'immagine precedente, a meno che tu non la aggiorni nel post.

Per aggiornare l'immagine del link in un post:
  1. Trova il post nella tua sezione Notizie.
  2. Clicca sui tre puntini in alto a destra nel post.
  3. Seleziona Aggiorna l'allegato della condivisione.

Blocchiamo i titoli dopo un determinato numero di azioni intraprese su tale oggetto (la descrizione si trova qui: Aggiornamento degli URL).

Diversi fattori incidono sulla modalità di ritaglio di un'immagine. Ad esempio, cerchiamo di centrare l'immagine attorno ai volti che riusciamo a rilevare.

Per le immagini di grandi dimensioni, mantieni il rapporto larghezza/altezza simile a 1,91:1 in modo che possano essere mostrate nel feed intere, evitando che siano ritagliate.

I post della Pagina utilizzano sempre un'immagine orizzontale di grandi dimensioni per le condivisioni di link. La stessa immagine viene usata nel feed su computer e mobile. Mantieni il rapporto larghezza/altezza il più vicino possibile a 1,91:1 per mostrare immagini intere nel feed, evitando che vengano ritagliate.

Il link potrebbe essere stato segnalato dal nostro sistema del filtro contenuti. Se ritieni che si tratta di un errore, invia un report al nostro sito dell'assistenza, includendo l'URL pertinente.

Le immagini vengono memorizzate nella cache in modo asincrono, pertanto è possibile che l'immagine non sia visualizzata alla prima condivisione dei contenuti. Per evitare che questo accada:

Tutte le condivisioni e i "Mi piace" sono legati a un URL specifico (che chiamiamo URL canonico). Cambiare la struttura del sito per usare nuovi URL determina l'attribuzione di "Mi piace" e condivisioni ai nuovi URL.

Per maggiori informazioni, consulta Aggiornamento degli URL.

Tutte le condivisioni e i "Mi piace" sono legati a un URL specifico (che chiamiamo URL canonico). Cambiare la struttura del sito per usare nuovi URL determina l'attribuzione di "Mi piace" e condivisioni ai nuovi URL.

Per maggiori informazioni, consulta Aggiornamento degli URL.

Le immagini inferiori a 600 x 315 pixel ma superiori a 200 x 200 pixel verranno visualizzate con un'immagine quadrata di piccole dimensioni.

Consideriamo tutti gli URL delle immagini come immutabili, poiché vengono usati per memorizzare nella cache le risorse a livelli diversi, pertanto se devi sostituire un'immagine, devi usare anche un nuovo URL. Al crescere della memoria cache, recuperiamo la nuova immagine e il problema viene risolto automaticamente.

Se stai usando un altro URL ma continui a visualizzare l'immagine precedente, puoi anche accedere all'analizzatore di condivisione e ripetere l'estrazione dell'URL:

Tutti gli URL devono essere assoluti, dal momento che rappresentano la posizione canonica di una risorsa (pagina/immagine), in questo modo possiamo attribuire condivisioni e "Mi piace" all'URL corretto e memorizzare correttamente le immagini nella cache.

L'immagine originale non è più disponibile, è troppo grande o non è stato possibile recuperarla a causa di problema temporaneo. Assicurati che il nostro crawler riesca ad accedere all'URL dell'immagine, che le dimensioni di quest'ultima non siano superiori a 8 MB e che l'immagine venga mostrata con pochissimi secondi di latenza.

Quando modifichi il tag og:image per una Pagina, assicurati di non rimuovere dal sito l'immagine precedente, altrimenti le condivisioni esistenti mostreranno l'area bianca.

API Marketing

Ciò avviene a causa del ritardo determinato dalla replica nei nostri data center. Il completamento della procedura richiede alcuni secondi, pertanto l'ID oggetto non sarà immediatamente accessibile tramite l'API.

Se provi a leggere i dettagli di un'inserzione prima del termine del salvataggio, potresti ricevere un errore GraphMethodException con un messaggio simile a questo: Unsupported get request. Object with ID 'XXXXXXXXXXXXXXXXXX' does not exist, cannot be loaded due to missing permissions, or does not support this operation..

Per risolvere il problema, attendi qualche istante prima di richiedere i dettagli dell'inserzione tramite istruzione GET.

A volte potresti riscontrare un errore di convalida quando cerchi di usare determinate creatività all'interno di una particolare campagna. Ciò può accadere quando la campagna ha un obiettivo incompatibile con le creatività che stai usando. Un esempio di questo scenario potrebbe essere rappresentato da creatività che rimandano a un gioco Canvas, mentre l'obiettivo della campagna è "MOBILE_APP_INSTALLS".

Per risolvere eventuali errori di convalida che potresti riscontrare, puoi seguire le best practice per la convalida dell'API Marketing.

Verifica che le sessioni di caricamento che non contenevano gli articoli in questione non includessero errori.

Quando "deletion_enabled" è impostato su "true", verranno eliminati solo gli articoli che non esistono più nel feed di una sessione di caricamento corretta.

Se riscontri questo errore, verifica lo stato dell'account pubblicitario specificato. Spesso questo errore viene restituito quando l'account pubblicitario presenta importi insoluti.

Questo comportamento è previsto, poiché i dati nel back-end di Insights della Pagina vengono archiviati solo per due anni. Di conseguenza, è previsto che la chiamata restituisca valori pari a zero. Gli unici elementi che non saranno pari a zero sono i "Mi piace"/i commenti/le condivisioni in linea in un post i cui dati vengono conservati dal post stesso.

Quando crei un'inserzione con determinati obiettivi, vengono impostate le specifiche di conversione predefinite. Se apporti modifiche alle specifiche di conversione, le specifiche esistenti verranno sovrascritte.

Tieni presente che alcuni obiettivi non dispongono di specifiche di conversione predefinite e devono essere indicate esplicitamente.

Ciò potrebbe accadere perché il pubblico di work_positions per il Paese a cui ti stai rivolgendo è così ristretto che non influisce sulla stima della copertura. Stiamo continuando a raccogliere dati che possibilmente miglioreranno il numero delle persone aggiunte all'esclusione work_positions, influendo sulla stima della copertura.

Questo si verifica perché la tua app ha la migrazione Protezione URL post stream attivata.

Se la tua app ha questa impostazione attivata, il sistema non consentirà la creazione di inserzioni con link a un post di qualsiasi tipo, a meno che non rimandino all'URL Canvas a cui fanno riferimento le impostazioni dell'app. Non dovrebbe essere necessario attivare questa impostazione a meno che la tua app non sia un'app per Canvas e pubblichi solo notizie che rimandano al dominio dell'app per Canvas.

L'utente è probabilmente associato all'account tramite un'associazione Business Manager, che non verrà visualizzata come un'associazione di API Graph esplicita.

Verifica di aver specificato le categorie partner nel campo di targetizzazione appropriato. Le categorie partner recuperate dall'endpoint "/partnercategories" contengono un campo denominato "targeting_type", che specifica il campo di targetizzazione che devi usare quando specifichi un tipo di targetizzazione.

Ad esempio, se la tua categoria partner restituisce il "targeting_type" di "behaviors", dovresti usare tale categoria partner nel campo "behavior" delle specifiche di targetizzazione.

Maggiori informazioni sui tipi di targetizzazione e sulle categorie partner sono disponibili qui: https://developers.facebook.com/docs/marketing-api/partnercategories/v2.3#targeting_types.

Questo errore può essere causato da un pubblico personalizzato senza alcuna inclusone/esclusione impostata. Il modo migliore per risolvere questo problema è creare un nuovo pubblico personalizzato e assicurarsi di aver impostato alcune inclusioni/esclusioni.

Maggiori informazioni sul pubblico personalizzato sono disponibili qui: https://developers.facebook.com/docs/marketing-api/custom-audience-targeting/v2.3.

Un gruppo di inserzioni può avere sia un valore daily_budget sia un valore lifetime_budget. Il valore daily_budget definito nella valuta del tuo account deve essere di almeno 100 centesimi e la durata deve essere superiore a 24 ore. Se esegui una query per uno di questi campi, vengono restituiti entrambi. Quando un campo non viene usato, viene restituito un valore pari a 0.

Per scoprire di più, visita: https://developers.facebook.com/docs/reference/ads-api/adset.

L'endpoint adcampaign_groups usa la paginazione basata sul cursore, perciò non restituisce i campi relativi a numero, limite e offset. Ti consigliamo di usare la paginazione basata sul cursore per tutti gli endpoint, in modo da ottenere risultati coerenti.

Per maggiori informazioni su come usare la paginazione basata sul cursore, visita: https://developers.facebook.com/docs/graph-api/using-graph-api/v2.0#paging.

Potrebbe dipendere dal fatto che alcuni post sono stati creati in linea. Per recuperare questi post in linea, consulta la nota sul campo "is_inline" di /promotable_posts in fondo alla sezione di questo documento: https://developers.facebook.com/docs/reference/ads-api/adcreative/v2.2#object_story_spec.

Piattaforma Messenger

Finché l'utente risponde alla prima domanda, la finestra per i messaggi rimane aperta. Se la risposta fornita squalifica l'utente o se l'utente non risponde, l'esperienza pubblicitaria termina e l'inserzione trasferisce il controllo della serie di post all'app di destinazione fornendo il metadato "messenger_lead_gen_incomplete"; le aziende potranno così avere un'alternativa per convertire le persone che non fanno parte dei contatti in clienti. Per maggiori informazioni, consulta l'articolo sul webhook HOP successivo all'inserzione per acquisizione contatti

L'opzione Invia riepilogo è attivata per impostazione predefinita solo quando viene selezionata un'app nella finestra di dialogo Crea un modello all'interno dell'inserzione. Tieni presente che è possibile disabilitare il riepilogo sull'inserzione dopo aver selezionato l'app connessa. Anche in assenza di un'app selezionata, l'inserzione per la generazione di contatti trasferirà il controllo della serie di post al destinatario principale del protocollo di consegna, se impostato, o semplicemente rilascerà il controllo della serie di post. Qualsiasi messaggio di follow-up successivo all'invio del contatto sarà inviato alle app iscritte. Le app possono sottoporre una query all'API Conversation per recuperare la cronologia dei messaggi e ottenere le informazioni condivise al momento della generazione di contatti.

Mentre è in corso un'inserzione per la generazione di contatti, l'API Send e Webhooks sono bloccati per impostazione predefinita. ID dell'app: 413038776280800 per l'app Generazione di contatti di Messenger avrà il controllo della serie di post. Questo comportamento può essere disabilitato cliccando sul pulsante Blocca l'API Send nella finestra di dialogo Crea un modello all'interno dell'inserzione.

Al termine dell'invio del contatto, le app riceveranno i webhook sui messaggi degli utenti e potranno rispondere. Se un'app è stata selezionata come parte dell'app, solo l'app selezionata potrà rispondere e riceverà i webhook sul canale per i messaggi. La finestra dei messaggi è aperta e l'app può rispondere con l'API Send.

L'installazione di un'app si effettua dal sito web dell'app usando Facebook Login e concedendo l'autorizzazione pages_messaging a una Pagina specifica. Le app autorizzate sono visibili nelle Impostazioni della Pagina sotto Messaggi avanzati.

Saranno visibili solo le app autorizzate per la Pagina. Puoi vedere le app autorizzate nelle Impostazioni della Pagina in Messaggi avanzati. Le app sono installate dal sito web dell'app tramite Facebook Login e concedono l'autorizzazione pages_messaging a una Pagina specifica.

Le esperienze di chat automatica (ad esempio, i "bot") devono rivelare agli utenti che stanno interagendo con un servizio automatizzato:

  • all'inizio di qualsiasi conversazione o thread di messaggi;
  • dopo un periodo di tempo significativo;
  • quando una chat si sposta dall'interazione umana all'esperienza automatizzata.

Per maggiori informazioni su questa normativa, leggi qui.

Quando richiesto dalla legge applicabile, le esperienze di chat automatica (ad esempio, i "bot") devono indicare all'utente che sta interagendo con un servizio automatizzato. Questa è una buona pratica anche quando non è richiesta dalla legge applicabile, poiché evita che gli utenti rimangano sorpresi nel corso dell'interazione. Per maggiori dettagli su questa normativa, leggi qui.

Sì, una singola app di Facebook può ricevere gli aggiornamenti di più Pagine. Una volta eseguita l'analisi dell'app, come l'autorizzazione pages_messaging, l'app può richiedere di ricevere Webhooks su più di una Pagina. Starà a te ottenere il contesto di ogni Webhook in base al payload.

Sì, è possibile sottoscrivere più di un'app a una Pagina. Quando più applicazioni gestiscono la stessa conversazione, consigliamo di usare il protocollo di consegna per stabilire a quale bot appartiene la serie di post in un determinato momento.

Questo errore può verificarsi se l'utente ha eliminato la conversazione. Di conseguenza, il bot non è in grado di mandare altri messaggi all'utente. Il bot potrà riprendere le comunicazioni con l'utente non appena questo invierà nuovamente un messaggio.

Ecco una soluzione alternativa per usare un utente test della piattaforma per la tua integrazione con la Piattaforma Messenger:

  1. Nella pagina Ruoli della tua app, crea un nuovo utente test cliccando sul pulsante Aggiungi.
  2. Attiva l'opzione Vuoi autorizzare gli utenti test per questa app? e concedere le autorizzazioni "manage_pages" e "page_messaging".
  3. Usa il pulsante Modifica e ottieni un token d'accesso per l'utente (tramite la versione 2.6). Conservalo per un uso successivo.
  4. Usa il pulsante Modifica per effettuare l'accesso come utente test.
  5. Dopo l'accesso, crea una Pagina come utente test.
  6. Usa il token d'accesso per l'utente test per acquisire il token d'accesso per la Pagina di tale utente. A tale scopo, effettua la chiamata seguente:
    https://graph.facebook.com/v2.6/me/accounts?access_token=[TEST_USER_ACCESS_TOKEN]
    (Documentazione)
  7. Usa il token d'accesso per la Pagina per collegare l'app Facebook alla tua Pagina:
    https://graph.facebook.com/v2.6/me/subscribed_apps?method=POST&access_token=[TEST_USER_PAGE_ACCESS_TOKEN]
            
    (Documentazione)
  8. Topo aver seguito i passaggi, riceverai gli aggiornamenti in tempo reale nella Pagina test e potrai inviare messaggi al tuo utente test da tale Pagina. Oltre a quanto indicato in precedenza, puoi sostituire il token d'accesso con uno di lunga durata nel caso in cui il primo scada troppo velocemente rispetto ai test. Attieniti alla documentazione disponibile qui:
    GET /oauth/access_token?  
        grant_type=fb_exchange_token&           
        client_id={app-id}&
        client_secret={app-secret}&
        fb_exchange_token={short-lived-token} 
            

Questa situazione può verificarsi per diversi motivi:

  • Stai usando un ID di Facebook Login. Gli ID di Facebook Login non sono compatibili con l'API Send/Receive. Solo gli ID utente ottenuti tramite autenticazione con la Piattaforma Messenger sono compatibili con tale piattaforma.
  • Stai usando un ID con il token d'accesso per la Pagina errato. Gli ID utente per la Piattaforma Messenger sono assegnati a una singola Pagina e, di conseguenza, sono specifici per quest'ultima. Se usi un ID utente valido ma con un token d'accesso per la Pagina assegnato a un'altra Pagina, la chiamata non funziona. Assicurati di usare l'ID utente e il token d'accesso per la Pagina assegnati alla stessa Pagina.
  • Stai inviando un messaggio a un numero di telefono non verificato di recente. Quando usi l'API Send con un numero di telefono, invieremo i messaggi solo se tale numero è stato verificato di recente. L'invio potrebbe non avere esito positivo anche se il numero di telefono risulta verificato, ma tale verifica non è avvenuta di recente. Verifica nuovamente il numero di telefono, attendi 24 ore e riprova.

Quando usi il plug-in "Invia a Messenger", puoi usare il parametro data-ref come parametro pass-through per l'invio delle informazioni sul contesto del clic.

Gli utenti possono scoprire la tua Pagina anche attraverso la ricerca su Messenger. In questi casi, non avrai un parametro pass-through. Puoi usare la funzione di collegamento degli account per associare una conversazione a un account utente sul tuo sito.

Dalla Dashboard gestione app, nelle Impostazioni di Messenger, puoi utilizzare il pulsante "Mostra errori recenti", che mostra se i webhook stanno ricevendo la risposta 200 o sono in errore.

Esiste uno strumento che mostra gli errori recenti del webhook. Se i webhook non vengono consegnati, i server di Facebook annulleranno la sottoscrizione del tuo URL. Per individuare lo strumento, accedi alla Dashboard gestione app > Messenger, Impostazioni, nella scheda Webhooks troverai il pulsante Mostra errori recenti

Assicurati che il webhook risponda con un codice di stato 200. Tale codice ci comunica che il webhook è stato ricevuto correttamente. Se non restituisci un codice 200, riproveremo a effettuare la chiamata finché non ha esito positivo. Inoltre, se un webhook non restituisce un codice 200 per un periodo prolungato, invieremo gli avvisi per gli sviluppatori.

Tieni presente anche che i codici di stato relativi a un'azione eseguita correttamente devono essere restituiti in modo tempestivo. Una chiamata al webhook va in timeout dopo 20 secondi. Assicurati di strutturare il codice affinché i webhooks vengano elaborati in modo asincrono, in questo modo è possibile restituire immediatamente un codice di stato relativo a un'azione eseguita correttamente, che viene elaborata a parte.

Le chiamate al webhook contengono un campo nell'intestazione denominato X-Hub-Signature, che puoi usare per convalidare la provenienza della chiamata da Facebook.

Per ricevere le callback, devi seguire 2 passaggi. In primo luogo, verifica la corretta configurazione del webhook (https://developers.facebook.com/docs/messenger-platform/webhook-reference#setup). Un indicatore ti comunica la corretta configurazione dei webhooks.

In secondo luogo, effettua l'iscrizione a ogni Pagina. La lista includerà tutte le Pagine a cui hai effettuato l'iscrizione.

Se le chiamate al tuo webhook hanno esito negativo per un periodo prolungato, l'iscrizione dell'app viene annullata e dovrai aggiungere nuovamente il webhook e ripetere l'iscrizione alla Pagina.

Open Graph

Molto probabilmente il contenuto deve essere estratto nuovamente, il che avverrà in automatico col tempo; in alternativa, puoi attivare la procedura in modo manuale tramite lo strumento per la risoluzione dei problemi.

Quando condividi la tua notizia Open Graph, non puoi controllare come un post verrà visualizzato nella sezione Notizie o nel diario, a parte fornire i tag OG per la tua Pagina. Facebook ottimizza i post automaticamente per assicurare il massimo in termini di interazione con i tuoi contenuti.

Sì, la funzione Link di azione è diventata obsoleta. Il supporto per i link di azione è stato rimosso dal sito di Facebook, quindi la funzione è diventata obsoleta anche nella piattaforma. Questa funzione potrebbe essere rivisitata in futuro, ma non è previsto nella roadmap attuale.

Se la tua pagina Web sta usando i metatag Open Graph e include una voce og:image, recupereremo tale immagine e la mostreremo nell'anteprima. Inoltre, se il tuo sito fornisce le voci og:image, og:image:width e og:image:height, tale immagine verrà usata anche per la prima condivisione creata.

Senza indicare questi dettagli, dovrai prima aspettare che i nostri crawler recuperino le immagini e le analizzino. Consulta http://ogp.me/#structured per un esempio di come puoi effettuare questa operazione.

API Rest

Si tratta di una scelta a livello di progettazione. L'API REST è diventata obsoleta da molto tempo e non è previsto che continui a funzionare. C'è un limite: i token d'accesso della Pagina non possono essere usati con l'API REST.

Plug-in social

Puoi impostare una lingua per il pulsante "Mi piace" usando il parametro "locale" nell'SDK JavaScript. Questa impostazione funzionerà per gli utenti che non hanno effettuato l'accesso. Se un utente ha effetto l'accesso, verrà presa in considerazione anche la sua preferenza relativa alla lingua. Se ha impostato una lingua specifica, il pulsante "Mi piace" verrà visualizzato in quella lingua.

Puoi testare questo comportamento visitando il tuo sito Web senza aver effettuato l'accesso su Facebook (oppure usando una sessione privata del browser).

La precompilazione dell'area di testo al momento della condivisione su Facebook è vietata dalla normativa di Facebook. L'utente della tua app dovrà compilare il testo che desidera condividere autonomamente.

La precompilazione dell'area di testo per la condivisione viola il punto 2.3 della Normativa della Piattaforma ( https://developers.facebook.com/policy/#control). Applichiamo questa normativa per assicurarci che gli utenti condividano esattamente ciò che vogliono condividere su Facebook, senza condividere per errore testi con cui non sono d'accordo.

Può trattarsi di un comportamento previsto, se modifichi l'URL della pagina Web. Ciascun URL che ospita il plug-in dei commenti viene trattato come un oggetto Open Graph separato e i commenti sono associati a tale oggetto. Di conseguenza, se modifichi l'URL, viene creato un nuovo oggetto e i commenti esistenti potrebbero non essere visualizzati sulla Pagina.

No, non ti è consentito pubblicare commenti in un plug-in dei commenti tramite l'API.

Il plug-in di condivisione non ti permetterà di inserire parametri personalizzati e invece estrarrà direttamente i metadati dai metatag Open Graph della pagina.

Per scoprire di più sulle best practice per la condivisione dei contenuti, consulta questa documentazione: https://developers.facebook.com/docs/sharing/best-practices.

API di WhatsApp Business

Yes, Whatsapp Flows can be sent with On-Premises API. You can learn more about Whatsapp Flows here, or learn how to get started with Whatsapp Flows and On-Premises API here.

No this is not possible. Numbers that are registered under WABAs (WhatsApp Business Accounts) can only message regular WhatsApp accounts.

We will provide a seven day grace period post sending the warning. This will allow time for businesses to adjust their behavior. If businesses continue to exceed our internally set threshold of calls to the Contacts API vs. number of messages sent, we will permanently disable the phone number.

Interactive messages can be reopened by the user in order to resend an option. This is in case of mistyping the desired option or wanting to choose a new option.

Through user testing we’ve identified 10 as the optimal number of rows to provide a good user experience. If you have a list of more than 10 options, and cannot condense into one list message, we recommend creating an additional step in the flow and using two list messages. During testing businesses had higher response rates and conversions with this approach than using text-based lists.

Through user testing we’ve identified 3 as the optimal number of buttons to provide a good user experience. If you have a list of more than 3 options, and cannot condense it into one button message, we recommend using list messages. During testing, businesses had higher response rates and conversions with list messages than using text-based lists.

There may be a very small number of users for whom their app version does not support this feature, the business will receive a webhook notification throwing an error that describes why the message was unable to be received. It is up to the business to determine how to handle this error elegantly. Best practice would convert the interactive message to a text-based list to allow the user to complete the workflow.

If there is a delay in a subset of numbers, then it is likely not an issue affecting the customers integration but rather an issue on the recipients end, these delays in delivery can happen for a number of reasons. See Send Message Performance, Delays for more information.

No, attualmente non supportiamo la modifica del percorso predefinito per l'archiviazione di contenuto multimediale (/usr/local/wamedia/). Tutto lo spazio di archiviazione del contenuto multimediale deve trovarsi in questa posizione predefinita per funzionare correttamente.

No, al momento dobbiamo utilizzare AWS EFS per condividere il volume multimediale tra Coreapp e Webapp.

Coreapp controllerà le directory /usr/local/waent/data e /usr/local/waent/log all'interno del contenitore Coreapp, assicurandosi che ci siano almeno 10 MB di spazio di archiviazione, altrimenti restituirà questo errore critico.

Controlla i log e la directory dei dati per assicurarti di avere spazio sufficiente.

No. Al momento non è possibile usare più numeri nella stessa configurazione del client API di WhatsApp Business. Stiamo lavorando a una soluzione adeguata che lo consentirà in futuro.

Usa l'endpoint API services della database garbage collection per eliminare i messaggi e le ricevute corrispondenti dalle tabelle messageStore.messages e messageStore.messages_receipt_log.

Controlla l'impostazione dell'applicazione pass_through. Non riceverai callback dello stato di lettura se hai abilitato pass_through con il client v2.29.1 o versione successiva dell'API di WhatsApp Business.

Se desideri ricevere la callback dello stato di lettura, disabilita l'impostazione dell'applicazione pass_through. Disabilitando pass_through, lo spazio di archiviazione del database potrebbe aumentare rapidamente. Consulta la documentazione sulla Gestione del database per maggiori informazioni sulla gestione del database.

La database garbage collection ripulisce periodicamente le tabelle messages e messages_reciept_log per facilitare la gestione del database.

Il garbage collector conserva alcuni messaggi per consentire la corretta consegna/elaborazione. Ad esempio, conservare il messaggio in arrivo per un certo periodo di tempo per consentire alle integrazioni aziendali di contrassegnare il messaggio come letto.

Coreapp esegue la garbage collection a intervalli casuali (ovvero, a intervalli di alcune ore). Ciò serve a prevenire il potenziale degrado delle prestazioni negli stack ad alta disponibilità a causa di conflitti di database.

La garbage collection è indipendente dalla coda di callback. Ad esempio, se il server Webhook non è disponibile per 4 giorni, i callback verranno archiviati per essere consegnati quando verrà ripristinata la connettività del server Webhook.

Un link sarà reso cliccabile solo se il destinatario ha già salvato il tuo numero aziendale come contatto o se disponi di un account business ufficiale.

Prima della v2.29.x, era possibile che la dimensione della coda dei messaggi in uscita aumentasse nel tempo a causa di un bug. L'aggiornamento alla v2.29.3 consente di risolvere questo problema.

I dati statistici non sono disponibili per i codici QR e i link diretti poiché limitiamo la quantità di dati registrati per proteggere la privacy degli utenti.

Sarai responsabile dell'utilizzo del codice QR appropriato in base alla posizione prevista e alla lingua degli utenti.

Ora i codici QR possono essere generati e gestiti direttamente all'interno dell'API WhatsApp Business Management e gli utenti possono scansionarli con le loro fotocamere WhatsApp, iOS o Android.

Inoltre, con i codici QR di WhatsApp:

  • i messaggi precompilati sono completamente personalizzabili e possono essere modificati o eliminati in qualsiasi momento;
  • gli utenti accederanno sempre direttamente all'app senza alcuna pagina interstitial e
  • l'esperienza nell'app per un codice scaduto invia all'utente un messaggio chiaro.

Se un utente tenta di accedere a un codice QR o a un link diretto che è stato eliminato, vedrà un messaggio di errore che indica che il codice QR/il link diretto è scaduto.

Se l'utente ha installato il client WhatsApp Desktop, verrà iniziata una conversazione con la tua azienda. In caso contrario, all'utente verrà chiesto di installare il client WhatsApp Desktop.

I nuovi link diretti consentono di modificare o eliminare in qualsiasi momento i messaggi precompilati associati a un link. Inoltre, riducono la sintassi dell'URL a un codice casuale, eliminando la necessità di incorporare messaggi nell'URL e mascherando il numero di telefono.

Per ottenere la qualità migliore nei materiali stampati, consigliamo il formato di file .svg.

Un unico numero di telefono del WABA non può essere associato a più di 2000 codici QR e link diretti.

Puoi visualizzare, creare, modificare ed eliminare i codici QR e i link diretti nell'API WhatsApp Business Management o nell'interfaccia utente di Business Manager.

We are announcing the deprecation of Groups through the WhatsApp Business API. Starting July 8, 2020, only API phone numbers in a group created prior to July 8th can continue to use/manage Groups through the WhatsApp Business API. All other API phone numbers won’t be able to create/manage Groups through the Whatsapp Business API. On October 8, 2020, we will deprecate this feature for all API phone numbers (i.e., API phone numbers will be removed from their groups and no longer be able to send messages to their group).

v2.25.x migliora le prestazioni in uscita e in entrata rispetto alle versioni precedenti. Questa ottimizzazione si basa sulla creazione di ulteriori connessioni al database. Per alcune distribuzioni, ciò può far aumentare il numero di connessioni al database in modo tale da raggiungere i limiti configurati. Per mantenere le prestazioni migliori, è possibile aumentare il numero massimo di connessioni che il server di database può accettare. Se ciò non è possibile, puoi modificare il parametro axolotl_context_striping_disabled per disabilitare questo comportamento. Consulta la documentazione Impostazioni dell'applicazione per maggiori informazioni su come apportare questa modifica.

No. Attualmente i limiti dei messaggi si applicano solo ai messaggi avviati dall'azienda (notifiche).

Quando invii un'immagine come album dall'API WhatsApp Business, dovrai inviare almeno 4 immagini in successione. Se la visualizzazione della conversazione dell'utente è attualmente attiva alla ricezione delle immagini, la visualizzazione dell'album non è disponibile fino alla visita successiva.

Non verrà creato un album se si verifica una delle seguenti condizioni:

  1. Immagini con didascalie
  2. Divisore non letto: l'utente vede alcune immagini, ma non il resto
  3. Intestazione data: il giorno cambia tra una consegna e l'altra

No. Attualmente, il client API WhatsApp Business non funziona su Docker per Windows. Per esigenze di sviluppo, l'utilizzo di una macchina virtuale Linux e l'esecuzione di Docker al suo interno è la soluzione consigliata. Per i carichi di lavoro di produzione, è consigliabile utilizzare un server Linux per evitare problemi di compatibilità e prestazioni.

Per il client API WhatsApp Business con la versione 2.21.6, quando il client viene disconnesso dal server potrebbe rimanere disconnesso per alcuni minuti (fino a 4 minuti) e quindi riprovare la connessione. L'aggiornamento alla versione 2.23.4 consentirà un tempo di inattività inferiore del client durante il tentativo di connessione al server.

Il codice di errore 471 si riferisce a rate limit basati sulla qualità. Per maggiori informazioni, consulta la documentazione sui rate limit basati sulla qualità.

Tutte le aziende iniziano dal livello più basso e passano automaticamente a livelli più alti man mano che inviano più messaggi di alta qualità.

Sì, quando invii un modello di messaggio, se non è stato possibile visualizzarlo dal lato ricevente, riceverai un callback di stato "non riuscito" con "struttura non disponibile" nell'oggetto dell'errore che indica che non è stato possibile visualizzare il messaggio. A seconda del destinatario, potresti anche ricevere un callback di stato "recapitato" che indica semplicemente che il messaggio è stato recapitato al destinatario, dopodiché il destinatario non è riuscito a visualizzare il messaggio.

Di seguito sono riportati gli errori di convalida lato invio dei modelli di messaggio e il motivo per cui potresti visualizzarli:

  • "Non esistono modelli di messaggio nella lingua tua-lingua" oppure "Non esistono modelli di messaggio nella lingua tua-lingua e nelle impostazioni locali tue-impostazioni-locali": il language pack specifico non esiste. Controlla il tuo account Business Manager.
  • "Il modello nome-modello non esiste nella lingua tua-lingua" o "Il modello nome-modello non esiste nella lingua tua-lingua e nelle impostazioni locali tue-impostazioni-locali": stai tentando di utilizzare un modello che non esiste (non è stato creato o non è stato ancora approvato). Anche se tenti di inviare un messaggio con un modello che è stato eliminato, verrà visualizzato questo errore.
  • "Il numero di localizable_params num1 non corrisponde al numero previsto di params num2": stai tentando di inviare un modello di messaggio con parametri che non corrispondono al numero di parametri previsti. Verifica la correttezza dell'invocazione dell'API.
  • "note-tuo-modello è un modello avanzato e richiede l'utilizzo dell'API template message": stai tentando di inviare un modello di messaggio multimediale come un normale modello di messaggio. Assicurati che il tipo di messaggio sia template. Consulta il documento Modelli di messaggio multimediale per maggiori informazioni.
  • Una volta che i modelli sono stati approvati in Business Manager (o eliminati), possono essere necessari fino a 20 minuti affinché il client API WhatsApp Business riceva i modelli aggiornati. Se stai tentando di inviare un messaggio con un modello appena approvato e viene visualizzato un errore che indica che il modello non esiste, puoi riprovare a inviare il messaggio dopo aver atteso il tempo sopra specificato.

A un Webhook WhatsApp possono essere inviati messaggi duplicati poiché l'unica garanzia fornita è che i messaggi saranno ricevuti almeno una volta (e non "esattamente" una volta). Se ciò influisce sul modo in cui i messaggi vengono elaborati, è consigliabile deduplicare i messaggi Webhook in base all'ID del messaggio.

Se il numero di telefono non è stato utilizzato sull'API WhatsApp Business, puoi utilizzarlo. Segui i passaggi di migrazione descritti qui per riutilizzare il numero di telefono.

A partire dalla versione 2.18.26, l'endpoint App Stats consente di esportare le metriche interne nel formato di testo Prometheus. Consulta la documentazione sul monitoraggio delle istanze per maggiori informazioni.

Verrà restituito un oggetto profile vuoto se il profilo aziendale è solo parzialmente popolato. Effettua l'aggiornamento a v2.21.4 per risolvere questo problema.

Consulta la documentazione relativa alle impostazioni del profilo aziendale per ulteriori informazioni sul completamento del profilo aziendale.

Se viene visualizato un errore simile al seguente durante l'impostazione della distribuzione AWS, prova a passare a un nome di stack che utilizza al massimo 8 caratteri.

Country Name (2 letter code) [AU]:State or Province Name (full name) [Some-State]:Locality Name (eg, city) []:Organization Name (eg, company) [Internet Widgits Pty Ltd]:Organizational Unit Name (eg, section) []:Common Name (e.g. server FQDN or YOUR name) []:string is too long, it needs to be less than 64 bytes long Common Name (e.g. server FQDN or YOUR name) []:Email Address []:error, no objects specified in config file problems making Certificate Request Created device key for internal-wa-inc-name-LB-123456789.ap-southeast-1.elb.amazonaws.com

Non esiste un limite al numero di parametri consentiti in un modello di messaggio.

Il numero massimo consentito è 250 modelli di messaggio per account WhatsApp Business.

Se un evento Webhook non viene recapitato per qualsiasi motivo (ad esempio, il client è offline) o se la richiesta Webhook restituisce un codice di stato HTTP diverso da 200, ritenteremo la consegna del Webhook. Continueremo a riprovare la consegna con ritardi crescenti fino a un determinato timeout (in genere 24 ore, sebbene ciò possa variare) o fino a quando la consegna non avrà esito positivo.

In alcuni casi potrebbe essere necessario più tempo per gestire una richiesta del cliente e si potrebbe essere in grado di fornire una risposta solo dopo 24 ore. È consigliabile creare modelli di messaggio per:

  • inviare il risultato all'utente o
  • chiedere all'utente di rispondere per attivare la finestra dell'assistenza clienti.

In entrambi i casi, assicurati di fornire il maggior contesto possibile al modello di messaggio. Ad esempio:

  • "Ciao {{1}}, in relazione al problema che ci hai segnalato, ci dispiace informarti che {{2}}. Ci scusiamo per gli eventuali disagi causati."
  • Abbiamo aggiornamenti riguardanti il tuo ticket. Rispondi se desideri continuare con l'intervento di assistenza."

WhatsApp esegue esperimenti per misurare e comprendere l'impatto delle notifiche API WhatsApp Business sull'esperienza utente e sul prodotto in generale. Se l'utente a cui stai inviando messaggi sta partecipando a uno di questi esperimenti, potrebbe non ricevere notifiche da te anche se ha accettato di riceverle.

Se esegui il backup della configurazione corrente e la ripristini sul nuovo dispositivo, le informazioni di registrazione dovrebbero essere trasferite con il resto dell'implementazione. Consulta la documentazione su backup e ripristino delle impostazioni per ulteriori informazioni.

Sì, la rotazione dei registri per i container Webapp e Coreapp ha comportamenti leggermente diversi:

  • Webapp: verranno conservati gli ultimi 30 file di registro. Il file di registro viene ruotato solo se ha una dimensione superiore a 20 MB.
  • Coreapp: verranno conservati gli ultimi 30 file di registro. Il file di registro viene ruotato solo se ha una dimensione superiore a 15 MB. I file ruotati vengono compressi.

Contatta l'assistenza fornendo tutte le informazioni in tuo possesso. Indagheremo e bloccheremo tutti i numeri falsi.

Tutte le build del client API WhatsApp Business hanno una scadenza di 6 mesi dalla data di rilascio. Se viene visualizzato questo errore, esegui l'aggiornamento all'ultima versione rilasciata il prima possibile.

Devi prima verificare se il contatto esiste prima di inviare un messaggio. Per ulteriori informazioni su come eseguire questa operazione, consulta la documentazione sui contatti.

Questo errore è dovuto al fatto che Coreapp non è ancora inizializzato. Significa che la registrazione potrebbe non essere stata eseguita correttamente. Prova a eseguire la registrazione prima di effettuare una chiamata a un altro endpoint. Il primo passaggio dopo l'installazione dell'API WhatsApp Business è l'accesso. Il secondo passaggio è la registrazione. Questi due passaggi sono necessari prima di effettuare richieste a qualsiasi altro endpoint.

Nota: il criterio del linguaggio fallback è stato dichiarato obsoleto a partire dalla v2.27.8 e il criterio predefinito è ora quello deterministic.

Se crei una traduzione in una nuova lingua, devi tradurre tutti gli elementi che usi in quella lingua. Altrimenti, potresti ricevere errori di "struttura non disponibile" poiché il telefono del destinatario non riesce a individuare un elemento che si aspetta di trovare per la lingua in cui si trova. Questi errori di struttura non disponibile vengono visualizzati quando si inviano messaggi modello utilizzando la policy di fallback.

Se al momento non prevedi di creare traduzioni, puoi usare la policy deterministica per evitare questi errori.

Un payload di messaggi inviato da un utente può essere un file di testo o multimediale.

Nel caso del testo, si ritiene che non vi sia alcun pericolo.

Per i file multimediali:

  • Normalmente, si prevede che le aziende dispongano di un software di protezione (ad esempio, antivirus, antimalware, ecc.) per analizzare eventuali minacce.
  • WhatsApp non è in grado di identificare o controllare il contenuto di un file che viene trasferito poiché è crittografato end-to-end (lo stesso vale anche per contenuti di solo testo).
  • Esiste un'opzione per impedire il download automatico dei file multimediali nel client API WhatsApp Business. Se l'azienda non desidera ricevere alcun file dagli utenti, può impostare il campo auto_download con un array vuoto.

No, non è possibile utilizzare l'API WhatsApp Business per rilevare più dispositivi che utilizzano lo stesso numero.

Gli errori di struttura non disponibile si verificano quando il telefono non è in grado di leggere il modello di messaggio.

I modelli sono memorizzati sul server. Quando si invia un modello di messaggio usando il nodo messages ,vengono inviati al telefono solo lo spazio dei nomi, la lingua, il nome dell'elemento e i parametri localizzati, non l'intero messaggio. Una volta consegnati questi valori al telefono, il dispositivo prova a visualizzare il messaggio.

Se si verifica un errore durante la visualizzazione, viene inviato un errore di structure unavailable all'URL di callback contenente l'ID del destinatario e del messaggio. Questi errori possono essere relativi a spazio dei nomi errato, mancata corrispondenza dei parametri localizzati, nome elemento errato ecc.

Accedi a WhatsApp Manager nel tuo Business Manager do Facebook per visualizzare il numero corretto di parametri. Controlla che lo spazio dei nomi sia corretto e che esista il nome dell'elemento.

Una fonte comune di errori è la mancata creazione di traduzioni per tutti i modelli in uso. Ad esempio, se hai 2 modelli che invii spesso e aggiungi una nuova traduzione per un modello, assicurati di aggiungere la nuova traduzione anche per l'altro modello. Se prevedi di supportare più di una lingua, devi fornire traduzioni per tutti i modelli in tutte le lingue supportate.

La buona notizia è che gli errori di structure unavailable sono solitamente dovuti a errori nella chiamata API messages e possono essere risolti modificando il payload di invio.

Puoi registrare nuovi numeri di telefono ed eliminare quello vecchio nel tuo account WhatsApp in Facebook Business Manager.

  1. Nell'Account WhatsApp, vai a Impostazioni.
  2. Clicca su WhatsApp Manager.
  3. Seleziona la scheda Numeri di telefono. Qui puoi gestire tutti i numeri di telefono di questo account.

Per le immagini, la didascalia sarà aggiunta come descrizione. Il testo della didascalia viene visualizzato a lunghezza intera per le immagini su Android e iPhone.

Per i documenti, la didascalia sostituisce il nome del file. Non è pensato per essere visualizzata sul dispositivo dell'utente come testo di descrizione, ma per mostrare il nome del file. Gli iPhone mostrano il testo completo, mentre gli Android troncano il nome del file; questa è una limitazione tecnica dell'attuale implementazione di WhatsApp su entrambi i dispositivi.

Se la registrazione non va a buon fine con "sms" a causa di un numero eccessivo di tentativi e viene visualizzato il messaggio "accesso negato", prova a registrarti con la "chiamata vocale"

Attualmente è di 7 giorni. Se una cache non è stata aggiornata per più di 7 giorni, estrarrà l'ultimo language pack dal server indipendentemente dal fatto che l'elemento sia già presente o meno nel pacchetto.

Il dispositivo eseguirà prima il caricamento dalla cache e, se esiste un elemento, decomprimerà il messaggio utilizzando quel modello di messaggio. Quindi, invece di modificare i modelli di messaggio, è più sicuro aggiungere semplicemente uno nuovo modello con un nome di elemento diverso. Ciò garantirà che il language pack venga scaricato nuovamente quando non riesce a trovare quell'elemento. I costi di archiviazione dei modelli di messaggio sono trascurabili, quindi non è necessario eliminare i modelli.

Consulta Invio di modelli di messaggio - Lingua per maggiori informazioni.

Al fine di garantire un'esperienza di alta qualità per aziende e utenti, è disponibile un'anteprima pubblica limitata. Se desideri lavorare con noi, invia ulteriori informazioni sulla tua attività affinché possiamo valutarle mentre continuiamo a espandere la disponibilità oppure contatta il tuo rappresentante Facebook se ne hai già uno.

La disconnessione di un utente tramite l'endpoint users invaliderà tutti i token di autenticazione assegnati a quell'account. L'eliminazione di un utente avrà lo stesso effetto, sebbene sia molto più drastico. Ricorda che l'accesso di un utente tramite l'endpoint users restituirà un nuovo token di autenticazione, ma non invaliderà i token di autenticazione già in circolazione per quell'utente. Chiunque sia in possesso di un token fornito precedentemente potrà continuare a utilizzarlo fino alla scadenza o all'annullamento tramite uno dei metodi precedentemente menzionati.

Se viene visualizzato questo errore ma il parametro obbligatorio mancante a cui fa riferimento è impostato nel corpo del json, potrebbe essere un errore di analisi del json. Questo errore può verificarsi quando l'intero payload json non è analizzabile a causa di errori di formattazione del json. Controlla i valori di quei parametri per escludere la presenza di caratteri json non validi, come un ritorno a capo alla fine. A volte i parametri possono essere copiati con spazi bianchi aggiuntivi che potrebbero contenere caratteri che invalidano il json.

Ci possono essere molte ragioni per questo errore. Il Coreapp potrebbe essere inattivo o il database non è stato configurato correttamente. Se non è questo il motivo, dai un'occhiata ai registri Coreapp (o ai registri Coreapp master se stai eseguendo multiconnect). Se vedi errori di connessione al database, è probabile che il database stia esaurendo le connessioni. Consulta la documentazione MySQL o la documentazione PostgreSQL relativa a questo errore.

È consigliabile aumentare il numero di connessioni al database. 1 000 connessioni al database dovrebbero essere un numero sicuro, ma devi prendere una decisione informata in merito al numero di connessioni. Se l'errore persiste, invia un ticket di supporto.

Un modello di messaggio potrebbe essere rifiutato perché:

  • Contiene contenuti potenzialmente offensivi come linguaggio offensivo o contenuti simili a spam
  • Contiene contenuti promozionali
  • Non corrisponde al tipo di tag selezionato
  • È formattato in modo errato

L'errore "Connessione rifiutata" probabilmente significa che Coreapp non è in esecuzione. Usa docker ps per vedere se Coreapp è attivo. Se non lo è, dai un'occhiata ai registri Docker. Coreapp potrebbe non essere in grado di connettersi al database. Assicurati che il database sia configurato correttamente.

Questo succede se il bridge Docker è danneggiato. Il miglior rimedio è arrestare il servizio Docker e riavviarlo. Puoi anche provare docker restart sui tuoi container.

WhatsApp verifica se un numero fornito appartiene effettivamente a un telefono. Il fatto che un utente abbia un account WhatsApp è la prova che ha confermato il numero e che nessun altro ha usato quel numero per registrarsi successivamente su WhatsApp. Tuttavia, non è una garanzia della posizione fisica della scheda SIM.

D'altra parte, se il telefono di un utente viene perso o rubato, l'utente può disattivare il proprio account WhatsApp. Per ulteriori informazioni su come gli utenti possono disattivare il proprio account, consulta le Domande frequenti su telefoni smarriti e rubati .

Se il numero di telefono di un cliente diventa inattivo, ma il cliente utilizza ancora WhatsApp, continuerà ad avere accesso a WhatsApp fino a quando/se il numero di telefono viene riassegnato o registrato nuovamente.

WhatsApp strongly verifies whether number provided actually belongs phone. The fact that a user has a WhatsApp account is proof that they confirmed the number and no one else has used that number to register on WhatsApp subsequently. However, It is not a guarantee of the physical location of the sim.

On the other hand, if users phone is lost or stolen, they can deactivate their WhatsApp account. You may read to know more about how users can deactivate their account here.

Questo errore si verifica quando il database non è stato configurato correttamente.

  • Assicurati di utilizzare MySQL 5.7 o successivo o PostgreSQL 9.5.x, 9.6.x, 10.x.
  • La password del database non deve contenere nessuno di questi caratteri: ?{}&~!()^.
  • Se stai utilizzando AWS, assicurati che il tuo stack abbia un nome breve. Consulta la documentazione sull'installazione per maggiori informazioni.

Sì, è necessaria la connessione TCP. Se la tua azienda non è in grado di aprire porte aggiuntive, puoi utilizzare la connessione SSL terminata.

Consulta la documentazione sui Requisiti di rete per maggiori informazioni.

Questo è un problema noto. A volte l'aggiornamento del client API WhatsApp Business tramite gli script CloudFormation determina anche la necessità di un aggiornamento dello stack DB RDS. Il nuovo stack RDS non avrà lo stesso nome host dello stack originale e i container Docker non sono in grado di connettersi al database. La soluzione è entrare in SSH nell'istanza EC2 creata da CloudFormation e aggiornare il file whatsapp.conf con il nuovo nome host, quindi riavviare i container Docker in modo che acquisiscano le nuove impostazioni.

Sì, invia una chiamata API al nodo contacts prima di inviare un messaggio. Le informazioni dalla verifica dei contacts vengono memorizzate nella cache del container e la mancata esecuzione di questa operazione potrebbe generare un errore Unkown Contact. Consulta la documentazione per la Verifica dei contatti per maggiori informazioni.

Use the mcdockerreset script and tear down the webapps then use the mcdockersetup script to bring up a new webapp.


Reason: When the webapp first connects to the DB, it creates the database.yml file. it will never try to create it again. The coreapps will just not start up on a bad DB config; however, the webapp will, so you see the master and slave nodes in your DB because they were setup correctly once you got around all the DB and script issues but the webapps were started by the script in a bad state to begin with.

Se un Webhook non riesce a inviare un callback, il callback viene inserito in una coda. Eventuali callback inviati dopo l'errore iniziale non verranno ricevuti. Solo dopo l'invio del callback iniziale non riuscito, verranno inviati anche gli altri.

Il client API WhatsApp Business ti invia i callback Webhook tramite il container Coreapp. Pertanto, l'endpoint Webhook deve essere configurato per accettare richieste in entrata dal Coreapp.

Devi registrare un secondo numero di telefono e lanciare un secondo stack CloudFormation o un'istanza Docker per il test. Se hai due client dell'API di WhatsApp Business attivi che usano lo stesso numero di telefono, il server ti butterà fuori perché le chiavi di crittografia saranno in conflitto. È consigliabile disporre di un secondo ambiente da poter utilizzare per testare l'istanza non in produzione prima di eseguire qualsiasi tipo di migrazione sul client in produzione.

Le versioni richieste sono MySQL 5.7.x, PostgreSQL 9.5.x, 9.6.x, 10.x. L'uso di una versione precedente genererà l'errore Unable to initialize config store.

Quando si invia un messaggio, non appena si ottiene un ID messaggio la richiesta del messaggio è stata memorizzata nel database. Il client API WhatsApp Business continuerà a tentare di inviare il messaggio fino a quando non verrà confermato dal server WhatsApp. Questo processo non ha una linea temporale stabilita. Il server WhatsApp tenterà quindi di consegnare il messaggio al telefono dell'utente. Se il telefono dell'utente non è online, il messaggio verrà archiviato per 30 giorni prima di essere eliminato dal server WhatsApp.

Le tabelle del database memorizzano le informazioni relative alle impostazioni dell'app, ai thread della chat, ai messaggi, ai contenuti multimediali, ecc., tutte necessarie affinché l'app funzioni correttamente.

La tua azienda non viene informata quando un cliente modifica il proprio numero di telefono di WhatsApp. Quando utilizzi il nodo contacts, lo stato del numero sarà invalid.

No, puoi eseguire un singolo account per istanza. Se hai bisogno di un secondo account di test, assicurati di utilizzare un numero diverso per la seconda istanza.

La verifica dell'integrità è gratuito e può essere eseguita tutte le volte necessarie.

Leggi la documentazione sulle statistiche per maggiori informazioni sulle statistiche dell'app e del database che puoi interrogare. Le statistiche dell'app sono archiviate in memoria e possono essere interrogate con un impiego minimo delle risorse. Le statistiche del database richiedono più risorse e devono essere interrogate solo quando necessario.

Quando utilizzi il nodo messages, devi impostare l'intestazione Content-Type su application/json affinché il client API WhatsApp Business analizzi correttamente il corpo del messaggio. C'è anche l'intestazione Authorization, che deve essere impostata e deve contenere un token di accesso non scaduto. Consulta la documentazione su accesso e autenticazione per informazioni su come ottenere il token e sulla sua scadenza.

Il sistema potrebbe iniziare a rallentare all'aumentare dello spazio riempito. Ciò può essere causato dalla presenza di molti file multimediali, messaggi e file di registro di grandi dimensioni. I file di registro vengono ruotati automaticamente, ma se iniziano a diventare grandi, eliminarli è più sicuro.

I messaggi sono archiviati nel database. Puoi eliminare i messaggi se necessario. Inoltre, se pass_through è impostato su false nelle impostazioni dell'app, tutti i messaggi vengono salvati nel database fino a quando non vengono eliminati esplicitamente.

I file multimediali che gli utenti ti inviano vengono scaricati nei volumi dei contenuti multimediali. Spetta all'azienda decidere quali file multimediali eliminare, ma è generalmente sicuro eliminare qualsiasi file multimediale. Puoi usare docker inspect your-container-id per verificare dove si trova la cartella del volume dei contenuti multimediali.

Configura MySQL localmente usando Docker seguendo la guida MySQL Docker.

Configura PostgreSQL localmente usando Docker seguendo la guida PostgreSQL Docker.

Nella maggior parte dei casi devi eseguire il database su un server fisico separato dai container coreapp e webapp. Tra il server di database e le macchine di calcolo dovrebbero intercorrere solo pochi millisecondi di latenza.

Sta a te decidere quando eliminare contenuti multimediali.

Dopo aver caricato i contenuti multimediali, riceverai un ID relativo, che puoi utilizzare per inviare un messaggio che include l'elemento multimediale caricato. Dopo aver inviato il messaggio multimediale, l'API di WhatsApp Business crittograferà e caricherà il contenuto multimediale sui server WhatsApp, dove rimarrà per un periodo di 14 giorni. Dopodiché, puoi decidere di eliminare il contenuto multimediale fornendo l'ID oppure di conservarlo per un uso successivo. Sebbene consigliamo di conservare il contenuto multimediale per 30 giorni, spetta a te decidere la politica di mantenimento in base alla politica o al caso d'uso della tua azienda.

Sì, il database può essere utilizzato in altri modi senza toccare le tabelle relative a WhatsApp.

Per prima cosa controlla i callback per verificare la presenza di errori critici e diagnosticare il problema.

Se vedi "Conflitto: rilevate più istanze che condividono lo stesso numero ", devi controllare i tuoi container. La causa più probabile è la presenza di più container Docker che provano a connettersi ai server WhatsApp utilizzando lo stesso account WhatsApp. Assicurati di avere un solo container attivo e funzionante. Se hai vecchi container, spegnili e l'errore scomparirà.

Se desideri testare la nostra soluzione di high availability più complessa, consulta la documentazione sull'High Availability.

Una lista di elementi consentiti può essere creata con nomi host o indirizzi IP.

Consulta la sezione Nomi host della documentazione Requisiti di rete per ulteriori informazioni.

Sì. WhatsApp ti consente di formattare testo selezionato all'interno dei messaggi con grassetto, corsivo, barrato o spazio fisso.

Sì, i modelli di messaggio supportano tutti i caratteri e la formattazione dei messaggi di WhatsApp inclusi emoji, grassetto, corsivo, ecc. Per gli emoji, dovrai utilizzare il carattere emoji (copia/incolla) anziché il suo equivalente unicode.

I numeri verdi sono consentiti purché sia incluso il prefisso internazionale. Questo perché i numeri verdi senza prefisso internazionale non possono essere identificati in modo univoco: lo stesso numero può essere valido in due Paesi diversi.

Nota inoltre che sono state aggiunte delle complessità relativamente ai numeri verdi. In genere, se chiami un numero verde con il prefisso internazionale quando ti trovi all'interno del Paese, la chiamata non andrà a buone fine. Ciò significa che esiste la possibilità che i clienti che si trovano nel tuo Paese provino a comporre il numero riportato nei contatti aziendali (incluso il prefisso internazionale) e non siano in grado di raggiungerti. Se questo per te rappresenta un problema, dovrai comunicarlo esplicitamente.

Puoi consultare maggiori informazioni sui numeri verdi qui.

NO! In qualsiasi momento, puoi avere solo un'istanza del client API WhatsApp Business in esecuzione per un singolo numero di telefono. Non appena registri una seconda istanza, la prima istanza verrà disconnessa e non andrà a buon fine. Stiamo lavorando a una soluzione adeguata che ti permetta di raggiungere questo obiettivo. Ti terremo informato di eventuali aggiornamenti.

WhatsApp considera le comunicazioni con gli utenti dell'API Business che gestiscono l'endpoint API sui server che controllano come crittografate end-to-end poiché non vi è accesso di terze parti al contenuto tra gli endpoint.

Alcune organizzazioni possono scegliere di delegare la gestione del proprio endpoint API di WhatsApp Business a un fornitore di soluzioni aziendali di terze parti. In questi casi, la comunicazione utilizza ancora la stessa crittografia del protocollo Signal. Tuttavia, poiché l'utente dell'API di WhatsApp Business ha scelto una terza parte per gestire il proprio endpoint, WhatsApp non considera questi messaggi crittografati end-to-end. In futuro, nel 2021, ciò si applicherà anche alle aziende che scelgono di sfruttare la versione basata su cloud dell'API ospitata da Facebook.

Inoltre, se utilizzi HTTPS quando effettui chiamate al client API di WhatsApp Business, tali dati sono sottoposti a crittografia SSL (dal client backend al client API di WhatsApp Business).

Consulta il nostro whitepaper tecnico Panoramica sulla crittografia di WhatsApp per maggiori informazioni.

È causato da un bug in una vecchia versione del client iOS. Prevediamo che gli errori si ridurranno man mano che gran parte degli utenti effettueranno l'aggiornamento.

No, non è garantito che l'ordine in cui arrivano i messaggi sia lo stesso in cui sono stati inviati. Se l'ordine è fondamentale per il tuo caso d'uso, l'approccio suggerito è mettersi in ascolto del callback recapitato del primo messaggio prima di lanciare il secondo messaggio.

Esiste uno script che può essere attivato esternamente per ripulire i vecchi registri di un container:

docker exec CONTAINER_NAME /opt/whatsapp/bin/cleanup.sh

Lo script funziona con i container Webapp e Coreapp. Eseguendo lo script, i vecchi file di registro vengono rimossi e rimangono solo 30 file di registro del container.

Nota: non inviare più volte lo stesso messaggio allo stesso destinatario utilizzando l'API WhatsApp Business.

I motivi per cui le percentuali di consegna non sono del 100% possono essere molteplici. Alcuni casi comuni includono utenti con accesso sporadico alla rete o inattivi per un certo periodo di tempo, oppure uno stimolo a creare un' esperienza utente di più alta qualità.

I messaggi che possono essere consegnati con WhatsApp avranno una percentuale di consegna molto elevata. Tuttavia, ci sono molte ragioni per cui un messaggio potrebbe non essere recapitato. Avrai accesso allo stato esatto di un messaggio monitorando le tue callback. Questo non vale nel caso di invio di messaggi con SMS, ad esempio, dove non hai accesso allo stato finale consegnato e reinviare il messaggio potrebbe in effetti produrre un risultato diverso.

I messaggi potrebbero non essere recapitati perché il telefono di un utente è fuori servizio, scarico oppure è stato smarrito e, in attesa di prenderne uno nuovo, ha disabilitato la scheda SIM. È possibile che ci siano errori nella capacità del client aziendale di connettersi alla rete. È anche possibile che le callback (webhook) non vengano consegnate. Puoi monitorare queste situazioni utilizzando il nodo health. Puoi attivare le callback di ricezione del server per avere conferma che il messaggio sia arrivato nel cloud del server WhatsApp.

Se e quando un utente si riconnette alla rete, tutti i messaggi inviati verranno recapitati. La ricezione di più messaggi con lo stesso contenuto non sarebbe apprezzato dall'utente. Potrebbe bloccarti o inviare un reclamo. Avrai maggiori probabilità di essere bannato.

Se invii un messaggio e ricevi un ID messaggio dall'API, hai fatto tutto il necessario per l'invio. Non inviare di nuovo lo stesso contenuto allo stesso destinatario.

Se riscontri basse percentuali di consegna per un periodo di tempo prolungato, invia un ticket di supporto all' Assistenza diretta.

Il client dell'API On-Premises di WhatsApp Business ha bisogno di un database in cui archiviare le chiavi per decrittografare i messaggi scambiati tra un'azienda e i clienti. Tutti i messaggi su WhatsApp sono crittografati con le chiavi del mittente e del destinatario. Le chiavi dei clienti sono memorizzate sul loro dispositivo mobile, quelle dell'azienda nel database dell'azienda. Scopri di più sulla Sicurezza di WhatsApp.

L'API Cloud di WhatsApp Business è un'alternativa in cui Meta ospita un database aziendale. L'API Cloud consente di implementare le API di WhatsApp Business senza il costo dell'hosting di server propri. Scopri di più.

No. Il client API WhatsApp Business apre una connessione TCP in uscita alla porta 5222 o 443 sui server WhatsApp. Il traffico TCP viene trasmesso su questa connessione di lunga durata. Normalmente nei firewall viene classificata come "autorizzazione al traffico in uscita e al traffico stabilito". Naturalmente, i pacchetti andranno avanti e indietro una volta stabilita la connessione, ma l'inizio della connessione proviene dal client API WhatsApp Business, quindi non è necessaria una regola che consenta connessioni in entrata.

Sono supportati MySQL e PostgreSQL. Se esegui Docker autonomamente, devi fornire un database MySQL/PostgreSQL per i container a cui connettersi. L'uso del modello AWS configura un database MySQL per impostazione predefinita.

I requisiti dipendono dal saldo dati e dalla situazione. La soluzione verrà eseguita su qualsiasi computer connesso a Internet che esegua Docker. Ad esempio, è possibile eseguire semplici test su un computer portatile.

Per la configurazione del server in produzione a istanza singola, si raccomanda almeno un SSD da 250 GB, 16 GB di RAM e CPU a 4 core. Non è consigliato l'uso dell'HDD in quanto le velocità di I/O subiscono un rallentamento sotto carico.

Per la configurazione del server di produzione Multiconnect, è raccomandato almeno un SSD da 50 GB, 4 GB di RAM e CPU 2 core per ogni container Coreapp/Master/Webapp.

Nella maggior parte dei casi devi eseguire il database su un server fisico separato dai container coreapp e webapp. Tra il server di database e le macchine di calcolo dovrebbero intercorrere solo pochi millisecondi di latenza.

Questa configurazione supporta l'invio di circa 20 messaggi al secondo.

Certamente! Contatta il tuo rappresentante WhatsApp e presenta questa richiesta.

Attualmente, non c'è modo di farlo. Se non sei in grado di gestire le risposte in entrata dei tuoi utenti su WhatsApp, ti consigliamo di inviare un messaggio di risposta automatica reindirizzandoli ai canali di supporto appropriati.

Nel normale scenario consumer, ciò avviene automaticamente quando il mittente non è presente nella tua rubrica e in passato non hai inviato altri messaggi a questo mittente. Nello scenario enterprise, un'azienda dovrebbe utilizzare i modelli di messaggio quando interagisce per la prima volta con un utente per stabilire una relazione di "fiducia"; in tal caso, il client API WhatsApp Business potrà renderizzare il link e renderlo cliccabile.

Nel normale scenario consumer, ciò avviene automaticamente quando il mittente non è presente nella tua rubrica e in passato non hai inviato altri messaggi a questo mittente. Nello scenario enterprise, un'azienda dovrebbe utilizzare i modelli di messaggio quando interagisce per la prima volta con un utente per stabilire una relazione di "fiducia"; in tal caso, il client API WhatsApp Business si atterrà all'impostazione di download automatico nell'app.

Sfortunatamente, dovrai scegliere un numero di telefono diverso in grado di ricevere SMS o chiamate vocali per consentirci di inviare il codice di registrazione. In passato, erano consentiti codici di registrazione manuale, ma questo non è più supportato. I numeri di telefono che in precedenza utilizzavano codici di registrazione manuale continueranno a essere supportati come richiesto. Per eventuali nuovi numeri di telefono, forniremo i codici di registrazione solo tramite SMS o chiamata vocale.

Se desideri usare un numero 1800 o un numero verde, leggi questa guida.

Al momento, non è possibile vedere quanti o quali utenti hanno bloccato la tua azienda. L'indicatore migliore sarebbe mettersi in ascolto dei callback di stato e, se non ricevi lo stato delivered, allora l'utente ha bloccato la tua azienda o non ha una connessione di rete. Consulta la documentazione sui Webhooks per maggiori dettagli.

Se un utente ha bloccato la tua azienda, l'API Contacts continuerà a restituire il numero di telefono come utente WhatsApp valido. Tuttavia, quando invii il messaggio, questo non verrà mai recapitato. Se si tratta di un messaggio a pagamento, non ti verrà addebitato alcun importo.

Sì, possiamo impostare un nuovo numero di telefono o modificare il nome verificato quando sei pronto per la pubblicazione.

La dimensione massima di caricamento del file è 64 MB, il che significa che questo limite si applica anche a qualsiasi immagine, documento o video inviato con un messaggio.

No. Per la soluzione API WhatsApp Business è necessario un numero che non sia già stato utilizzato.

Per trovare il mountpoint del volume del contenuto multimediale, puoi eseguire un comando docker.

Richiesta

docker volume inspect whatsappMedia

Risposta

[
    {
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/whatsappMedia/_data",
        "Name": "whatsappMedia",
        "Options": {},
        "Scope": "local"
    }
]

Quindi, per vedere tutti i file multimediali in arrivo puoi eseguire il comando ls con il percorso file Mountpoint ricevuto:

ls /var/lib/docker/volumes/whatsappMedia/_data/

Per AWS setup, il volume del contenuto multimediale è montato sul percorso /mnt/wa/media sull'host.

Non esiste alcun meccanismo di pulizia per i contenuti multimediali in uscita e in entrata. Puoi eliminare manualmente i file multimediali individuandoli sul file system.

Puoi riavviare i container Docker eseguendo il codice seguente:

Container Docker Coreapp

docker restart wacore<Current_WABA_Version>

Container Docker Webapp

docker restart webapp<Current_WABA_Version>

Puoi verificare quale versione stai utilizzando con

docker ps

Sì. per impostazione predefinita, il client API di WhatsApp Business tenta di comunicare utilizzando chatd sulla porta 5222. Per garantire un'esperienza ottimale, apri la porta 5222 per tutto il traffico in uscita. Ciò non costituisce un problema di sicurezza poiché il traffico è solo in uscita dal tuo data center.

Se non riesci ad aprire la porta 5222, il client API di WhatsApp Business tenta di utilizzare la porta 443. Se il tuo firewall o proxy continua a interrompere le connessioni, contatta il team di WhatsApp inviando una domanda tramite l'Assistenza diretta per ricevere supporto per il debug.

Funziona come previsto
Utilizzare in sostituzione il debugger di condivisione: https://developers.facebook.com/tools/debug/sharing/. Il debugger OG non viene più aggiornato.
The behavior is by design. All newly created accounts go through a classification process which may last up to 45 minutes. During that time, these accounts won't be able to login to any app.
Le immagini carosello non restituiscono "media_url" al nodo oggetti multimediali carosello, poiché un carosello è una raccolta di immagini. Gli utenti devono interrogare gli elementi secondari{media_url} per vedere il "media_url" dei nodi secondari.
Nella versione 2.9 e successive, abbiamo iniziato a filtrare tutti i post non idonei a causa del metodo di pagamento che richiede un aggiornamento per gli account pubblicitari. Verifica che il tuo account pubblicitario abbia un metodo di pagamento valido.
Questo campo non sarà più supportato tramite l'API. Tutte le informazioni fornite da questo campo sono disponibili in questo strumento: https://developers.facebook.com/tools/app-ads-helper/.
La mancata inclusione di Thread_key nell'evento del webhook è voluta.
Quando il parametro "estimate_DAU" è 0, restituiamo automaticamente l'offerta suggerita predefinita che è pari a 0 per tutte le voci Il motivo è che non mostriamo le dimensioni del pubblico per le campagne che usano il pubblico personalizzato.
Per il pubblico personalizzato dal sito web, restituiremo 0 come ID pixel e giorni di mantenimento se ha più sezioni dato che non possiamo identificare univocamente il mantenimento sulla base di più di una sezione. Per recuperare la regola, devi specificare la regola rule_v2 anziché: GET audience_id?fields=rule_v2
At this time, "Force Web OAuth Reauthentication" feature is unsupported for Device Login. To enable device login feature, please turn off "Force Web OAuth Reauthentication" under Facebook Login settings.
Notifications on canvas games are not guaranteed. We have systems in place which will determine if a notification is of low or high signal automatically and filter users' jewel notifications accordingly. This means that not all notifications will appear within the users jewel notification.
We have privacy policies in place to prevent content generated from an Application that is not visible, to be distributed to the public. Also in effect is the app is in dev mode.
You should be able to add pages to your app that meet a few conditions:
  • The Page must be categorized as "App Page"
  • You should have access to the page via a role
  • The App Page should not already be linked to an existing app
  • The Page must have the same name (or a subset of the name) of the app
/page/* — User information will not be included in GET responses for any objects owned by (on) a Page unless the request is made with a Page access token. This affects all nodes and edges that return data for objects owned by a Page.
The business management permission is a granular permission, which means that it can be granted to some businesses and not granted to others. The access token debugging tool will show the access token has the permission even if it was granted for only some apps.
We maintain a specific cache on Android which can take some time to refresh. However, in iOS, you should see the updates almost instantly when you refresh the article.
The app must be subscribed to 'messaging_account_linking' Webhook event for Account Linking to work. You can subscribe to the event by going to the Messenger tab of your Application Settings.
In order to access the Leadgen information received from a Webhook you needed to be:
  • An admin of the campaigns
  • A full admin of the page
This message is usually shown if the user has an old Facebook for Android app installed on their device. If the user removes the old app and install the latest one, this message should disappear. If not, then please report a bug.
1. The message shown on screen does not mean the user has read it. In order to trigger a read receipt, there need to be some movements on the user side. (The user closing the input box is definitely a movement) An indicator of a message being read is the message text turns from the bold state into a normal state in the preview;
2. There won't necessarily be a read receipt for each message. The read receipt means that ALL messages before this watermark timestamp have been read by the user.
Unique fields are not supported with hourly breakdowns. Unique fields are those prepended with `unique_*` or `reach`.
Esiste una differenza tra le richieste dei giochi inviate da app a utente e quelle inviate da utente a utente:
  • Le richieste dei giochi da app a utente vengono inviate tramite l'endpoint /apprequests dell'API. La richiesta viene generata nella sezione delle attività relative ai giochi, ma non viene generata una notifica sul sito Web. https://developers.facebook.com/docs/graph-api/reference/app-request#Creating
  • Le richieste dei giochi da utente a utente vengono inviate tramite la finestra di dialogo della richiesta. La richiesta viene generata nella sezione delle attività relative ai giochi e viene generata una notifica sul sito Web. https://developers.facebook.com/docs/games/services/gamerequests
  • Inoltre, esistono anche notifiche da app a utente inviate tramite l'endpoint /notifications dell'API. Viene generata una notifica, ma non viene generata una richiesta nella sezione delle attività relative ai giochi. https://developers.facebook.com/docs/games/services/appnotifications
Il post può essere rivolto o all'area geografica o al Paese. Ad esempio, se il post è rivolto a "US o CA", l'utente rispetta la regola se risiede negli Stati Uniti (US) o in California (CA). Per limitare la targetizzazione a un'area geografica all'interno di un Paese, devi specificare solo tale area.
La struttura delle Pagine globali determina una riduzione dei "Mi piace" sulla Pagina. Dopo aver configurato una struttura delle Pagine globali, i fan saranno sottoposti a migrazione verso Pagine diverse all'interno della struttura, in base alla targetizzazione di ognuna di esse. Di conseguenza, una variazione in page_fans non corrisponderà alla differenza tra page_fan_adds e page_fan_removes.
A volte, è possibile che il pubblico personalizzato appena creato non venga recuperato tramite l'API. Ciò avviene a causa del ritardo determinato dal mantenimento e dalla replica nei vari data center.
Non è possibile ottenere gli ID post per gli URL interni di Facebook tramite l'endpoint ?ids=. Come è stato documentato (https://developers.facebook.com/docs/graph-api/reference/v2.8/url), questo segmento è rivolto agli URL esterni.