L'archiviazione locale dell'API Cloud consente di controllare dove memorizzare i dati dei tuoi messaggi a riposo. Se la tua azienda si muove in un settore regolamentato come finanza, governo o assistenza sanitaria, potresti preferire che i dati dei tuoi messaggi siano memorizzati in un determinato Paese, quando a riposo, in ragione di normative o politiche aziendali.
L'archiviazione locale dell'API Cloud offre questo tipo di livello extra di protezione dei dati implementando ulteriori controlli di gestione. La funzione Archiviazione locale presenta due vincoli aggiuntivi nell'ambiente runtime dell'API Cloud:
Quando l'archiviazione locale è abilitata per un numero di telefono aziendale, la funzione Archiviazione locale dell'API Cloud usa un archivio localizzato nel Paese specificato per i contenuti dei messaggi permanenti, anziché usare l'archivio predefinito negli Stati Uniti.
La funzione Archiviazione locale integra altri controlli di sicurezza e privacy dell'API Cloud e consente ai clienti di garantire un maggiore livello di conformità alle normative di protezione dei dati locali.
L'API Cloud implementa la localizzazione per i contenuti dei messaggi. La funzione Archiviazione locale si applica ai seguenti flussi di messaggi:
La funzione Archiviazione locale si applica ai seguenti tipi di messaggi:
Inoltre, nel set di dati localizzati è incluso un insieme limitato di attributi di metadati per associare correttamente il payload dei messaggi localizzati crittografati al messaggio originariamente elaborato e controllare la correttezza della localizzazione. I metadati memorizzati sono protetti con tokenizzazione e crittografia.
L'obiettivo della funzione Archiviazione locale dell'API Cloud è consentire alla tua azienda di controllare direttamente la posizione in cui i tuoi dati sensibili sono memorizzati, quando a riposo, tramite le impostazioni dell'API Cloud, dandoti allo stesso tempo flessibilità nella scelta dei luoghi di posizionamento dati a livello globale.
Le aree geografiche consentite dall'archiviazione locale dell'API Cloud sono riportate nelle Condizioni di hosting di Meta per l'API Cloud Le aree geografiche attualmente disponibili per l'archiviazione locale sono disponibili sotto il parametro data_localization_region
impostato durante la registrazione del numero di telefono.
L'archiviazione locale può essere abilitata o disabilitata solo sui numeri di telefono aziendali quando non sono registrati.
I file multimediali caricati da un numero di telefono con archiviazione locale abilitata sono accessibili solo a quel numero di telefono specifico e non possono essere condivisi con altri numeri di telefono associati all'azienda.
Segui i passaggi riportati sotto per abilitare l'archiviazione locale per un numero di telefono aziendale non registrato usando la versione dell'API 21.0 o successiva. Se stai usando una versione precedente dell'API, consulta Abilitazione dell'archiviazione locale (v20 e versioni precedenti).
Usa l'endpoint POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/settings per abilitare l'archiviazione locale sul numero di telefono aziendale non registrato:
POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/settings { "storage_configuration": { "status": "IN_COUNTRY_STORAGE_ENABLED", "data_localization_region": "<COUNTRY_CODE>" } }
Imposta <COUNTRY_CODE>
sul prefisso internazionale del Paese in cui devono essere archiviati i dati inattivi.
{ "success": <SUCCESS> }
In caso di azione eseguita correttamente, <SUCCESS>
sarà impostato su true
.
curl 'https://graph.facebook.com/v21.0
/106540352242922/settings' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
"storage_configuration": {
"status": "IN_COUNTRY_STORAGE_ENABLED",
"data_localization_region": "BR"
}
}'
{ "success": true }
Registra il numero di telefono aziendale usando l'endpoint POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/register.
POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/register { "messaging_product": "whatsapp", "pin": "<TWO_STEP_PIN>" }
Imposta <TWO_STEP_PIN>
sul PIN di verifica in due passaggi desiderato per il numero di telefono aziendale.
{ "success": <SUCCESS> }
In caso di azione eseguita correttamente, <SUCCESS>
sarà impostato su true
.
curl 'https://graph.facebook.com/v21.0/v21.0
/register' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
"messaging_product": "whatsapp",
"pin": "123456"
}'
{ "success": true }
Usa l'endoint GET /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/settings per ottenere le impostazioni di archiviazione locale su un numero di telefono WhatsApp Business. Ad esempio:
curl 'https://graph.facebook.com/v21.0
/179776755229976/settings' \
-H 'Authorization: Bearer EAAJB...'
Viene restituito un nodo che rappresenta le impostazioni di archiviazione locale sul numero di telefono aziendale. Ad esempio:
{ "storage_configuration": { "status": "IN_COUNTRY_STORAGE_ENABLED", "data_localization_region": "BR" } }
Usa l'endpoint POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/settings per disabilitare l'archiviazione locale su un numero di telefono aziendale non registrato usando la versione dell'API 21.0 o successiva. Se stai usando una versione precedente dell'API, consulta Disabilitazione dell'archiviazione locale (v20 e versioni precedenti).
POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID/>settings { "storage_configuration": { "status": "IN_COUNTRY_STORAGE_DISABLED" } }
Imposta <COUNTRY_CODE>
sul prefisso internazionale del Paese in cui devono essere archiviati i dati inattivi.
{ "success": <SUCCESS> }
In caso di azione eseguita correttamente, <SUCCESS>
sarà impostato su true
.
curl 'https://graph.facebook.com/v21.0
/106540352242922/settings' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
"storage_configuration": {
"status": "IN_COUNTRY_STORAGE_DISABLED"
}
}'
{ "success": true }
Per abilitare l'archiviazione locale per un numero di telefono aziendale non registrato usando la versione dell'API 20.0 o precedente:
Usa l'endpoint GET /<WHATSAPP_BUSINESS_PHONE_NUMBER> e richiedi il campo code_verification_status
. Se lo stato della verifica del codice è VERIFIED
, vai al passaggio 4. In caso contrario, vai al passaggio 2.
Usa l'endpoint POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/request_code per richiedere un codice di verifica. Se l'operazione viene eseguita correttamente, l'API risponderà con true
e un codice di verifica verrà inviato al numero di telefono aziendale tramite il metodo specificato nel parametro code_method
.
Ad esempio, questa query richiede l'invio di un codice di verifica tramite SMS in lingua inglese (impostazioni internazionali USA).
curl -X POST 'https://graph.facebook.com/v21.0
/110200345501442/request_code?code_method=SMS&language=en_US' \
-H 'Authorization: Bearer EAAJB...'
Usa il codice nel messaggio consegnato nel passaggio successivo.
Usa l'endpoint POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/verify_code per verificare il numero di telefono aziendale utilizzando il codice di verifica incluso nel messaggio che hai ricevuto al passaggio precedente.
Ad esempio:
curl -X POST 'https://graph.facebook.com/v21.0
/110200345501442/verify_code?code=123830' \
-H 'Authorization: Bearer EAAJB...'
Registra il numero di telefono aziendale usando l'endpoint POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/register. Indica il Paese in cui i dati a riposo dovrebbero essere memorizzati utilizzando il parametro data_localization_region
.
Ad esempio, questa richiesta consente l'archiviazione locale su un numero di telefono aziendale e imposta il Paese in cui i dati dovrebbero essere memorizzati in India:
curl 'https://graph.facebook.com/v21.0
/110200345501442/register' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer EAAJB...' \
-d '
{
"messaging_product": "whatsapp",
"pin": "123456",
"data_localization_region": "IN"
}'
Usa l'endpoint POST /<WHATSAPP_BUSINESS_PHONE_NUMBER_ID>/deregister per disabilitare l'archiviazione locale su un numero di telefono aziendale usando la versione dell'API 20.0 o precedente.
Ad esempio:
curl -X POST 'https://graph.facebook.com/v21.0
/110200345501442/deregister' \
-H 'Authorization: Bearer EAAJB...'
Tieni presente che quest'operazione annulla la registrazione del numero di telefono aziendale, che quindi non può essere usato con l'API Cloud di WhatsApp. Se vuoi continuare a usarlo con l'API Cloud ma senza l'archiviazione locale abilitata, devi registrarlo nuovamente senza includere il parametro data_localization_region
.
D. Quali sono i percorsi di migrazione per spostare un numero di telefono nella versione API Cloud con Archiviazione locale?
Supportiamo tutti i percorsi di migrazione alla versione API Cloud con Archiviazione locale, tra cui:
In tutti questi scenari dovresti inviare una richiesta POST all'endpoint /register per il numero di telefono selezionato, specificando il Paese di destinazione per cui i dati devono essere localizzati in un nuovo parametro data_localization_region
.
D. Ci sono rischi correlati alla migrazione? Tempi di inattività?
Nessun rischio di migrazione, questo è un processo simile a quello della migrazione dall'API On-Premise all'API Cloud. Consulta la nostra documentazione per sviluppatori qui. Il tempo di inattività è solitamente inferiore a 5 minuti e non è necessario ripetere la verifica del numero di telefono aziendale.