Method: accounts.sendVerificationCode

Invia un codice di verifica via SMS per l'accesso con numero di telefono.

Per localizzare il testo dell'SMS inviato all'utente, imposta l'intestazione HTTP X-Firebase-Locale sul codice lingua corrispondente alle impostazioni internazionali dell'utente.

Per identificare il progetto Google Cloud, nella richiesta è obbligatoria una chiave API.

Richiesta HTTP

POST https://identitytoolkit.googleapis.com/v1/accounts:sendVerificationCode

L'URL utilizza la sintassi di transcodifica gRPC.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "phoneNumber": string,
  "iosReceipt": string,
  "iosSecret": string,
  "recaptchaToken": string,
  "tenantId": string,
  "autoRetrievalInfo": {
    object (AutoRetrievalInfo)
  },
  "safetyNetToken": string,
  "playIntegrityToken": string,
  "captchaResponse": string,
  "clientType": enum (ClientType),
  "recaptchaVersion": enum (RecaptchaVersion)
}
Campi
phoneNumber

string

Il numero di telefono a cui inviare il codice di verifica in formato E.164.

iosReceipt

string

Ricezione della convalida del token dell'app per iOS. Se non viene utilizzato "captchaResponse" (reCAPTCHA Enterprise non è abilitato), è necessario specificare almeno uno dei valori (iosReceipt e iosSecret), recaptchaToken o safetyNetToken per verificare che il codice di verifica venga inviato per conto di un'app reale e non di un emulatore. Deve provenire dalla risposta di verifyIosClient. Se presente, l'autore della chiamata deve fornire anche iosSecret, nonché un ID bundle nell'intestazione x-ios-bundle-identifier, che deve corrispondere all'ID bundle della richiesta verifyIosClient.

iosSecret

string

Il secret viene inviato all'app per iOS sotto forma di notifica push. Deve essere passato con un iosReceipt e l'intestazione x-ios-bundle-identifier.

recaptchaToken

string

Token reCAPTCHA per la verifica dell'app. Se non viene utilizzato "captchaResponse" (reCAPTCHA Enterprise non è abilitato), è necessario specificare almeno uno dei valori (iosReceipt e iosSecret), recaptchaToken o safetyNetToken per verificare che il codice di verifica venga inviato per conto di un'app reale e non di un emulatore. Il reCAPTCHA deve essere generato chiamando getRecaptchaParams e il token reCAPTCHA verrà generato al completamento della verifica reCAPTCHA da parte dell'utente.

tenantId

string

ID del tenant di Identity Platform a cui l'utente sta accedendo.

autoRetrievalInfo

object (AutoRetrievalInfo)

Solo su Android. Utilizzato da Google Play Services per identificare l'app per il recupero automatico.

safetyNetToken

string

Solo su Android. Utilizzato per affermare l'identità dell'applicazione al posto di un token recaptcha. Se non viene utilizzato "captchaResponse" (reCAPTCHA Enterprise non è abilitato), è necessario specificare almeno uno dei valori (iosReceipt e iosSecret), recaptchaToken o safetyNetToken per verificare che il codice di verifica venga inviato per conto di un'app reale e non di un emulatore. Un token SafetyNet può essere generato tramite l'API SafetyNet Android Attestation, con la codifica Base64 del campo phoneNumber come nonce.

playIntegrityToken

string

Solo su Android. Utilizzato per affermare l'identità dell'applicazione al posto di un token recaptcha (e safetyNetToken). Se non viene utilizzato "captchaResponse" (reCAPTCHA Enterprise non è abilitato), è necessario specificare almeno uno dei valori (iosReceipt e iosSecret), recaptchaToken o playIntegrityToken per verificare che il codice di verifica venga inviato per conto di un'app reale e non di un emulatore. Un token Play Integrity può essere generato tramite l'API PlayIntegrity applicando SHA256 al campo phoneNumber come nonce.

captchaResponse

string

Facoltativo. Il token reCAPTCHA Enterprise fornito dall'integrazione lato client di reCAPTCHA. Obbligatorio se reCAPTCHA Enterprise è attivato.

clientType

enum (ClientType)

Facoltativo. Il tipo di client, web, android o ios. Obbligatorio quando reCAPTCHA Enterprise è attivato.

recaptchaVersion

enum (RecaptchaVersion)

Facoltativo. La versione reCAPTCHA del token reCAPTCHA in captchaResponse. Obbligatorio quando reCAPTCHA Enterprise è attivato.

Corpo della risposta

Messaggio di risposta per accounts.sendVerificationCode.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "sessionInfo": string
}
Campi
sessionInfo

string

Informazioni sulla sessione criptate. Questo può essere utilizzato in signInWithPhoneNumber per autenticare il numero di telefono.

Ambiti di autorizzazione

Richiede uno dei seguenti ambiti OAuth:

  • https://www.googleapis.com/auth/identitytoolkit
  • https://www.googleapis.com/auth/cloud-platform

Per ulteriori informazioni, consulta la sezione Authentication Overview.

AutoRetrievalInfo

Le informazioni necessarie per recuperare automaticamente un SMS.

Rappresentazione JSON
{
  "appSignatureHash": string
}
Campi
appSignatureHash

string

L'hash della firma dell'app per Android per l'API SMS Retriever di Google Play Services.