Method: accounts.signInWithPassword

Memproses login pengguna dengan email dan sandi. Jika login berhasil, token ID dan token refresh Identity Platform baru akan dikeluarkan untuk pengguna yang diautentikasi.

Kunci API diperlukan dalam permintaan untuk mengidentifikasi project Google Cloud.

Permintaan HTTP

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

URL menggunakan sintaks gRPC Transcoding.

Isi permintaan

Isi permintaan memuat data dengan struktur berikut:

Representasi JSON
{
  "email": string,
  "password": string,
  "pendingIdToken": string,
  "captchaChallenge": string,
  "captchaResponse": string,
  "instanceId": string,
  "delegatedProjectNumber": string,
  "idToken": string,
  "returnSecureToken": boolean,
  "tenantId": string,
  "clientType": enum (ClientType),
  "recaptchaVersion": enum (RecaptchaVersion)
}
Kolom
email

string

Wajib. Email yang digunakan pengguna untuk login. Panjang email harus kurang dari 256 karakter dan dalam format name@domain.tld. Email juga harus cocok dengan produksi addr-spec RFC 822.

password

string

Wajib. Sandi yang diberikan pengguna untuk login ke akun.

pendingIdToken
(deprecated)

string

captchaChallenge
(deprecated)

string

captchaResponse

string

Token reCAPTCHA yang disediakan oleh integrasi sisi klien reCAPTCHA. reCAPTCHA Enterprise menggunakannya untuk penilaian risiko. Wajib diisi jika reCAPTCHA Enterprise diaktifkan.

instanceId
(deprecated)

string

delegatedProjectNumber
(deprecated)

string (int64 format)

idToken
(deprecated)

string

returnSecureToken

boolean

Harus selalu benar.

tenantId

string

ID tenant Identity Platform tempat pengguna login. Jika tidak ditetapkan, pengguna akan login ke instance Identity Platform default dalam project.

clientType

enum (ClientType)

Jenis klien, web, android, atau ios. Wajib diisi jika reCAPTCHA Enterprise diaktifkan.

recaptchaVersion

enum (RecaptchaVersion)

Versi reCAPTCHA dari token reCAPTCHA di captchaResponse.

Isi respons

Pesan respons untuk accounts.signInWithPassword.

Jika berhasil, isi respons memuat data dengan struktur berikut:

Representasi JSON
{
  "kind": string,
  "localId": string,
  "email": string,
  "displayName": string,
  "idToken": string,
  "registered": boolean,
  "profilePicture": string,
  "oauthAccessToken": string,
  "oauthExpireIn": integer,
  "oauthAuthorizationCode": string,
  "refreshToken": string,
  "expiresIn": string,
  "mfaPendingCredential": string,
  "mfaInfo": [
    {
      object (MfaEnrollment)
    }
  ],
  "userNotifications": [
    {
      object (UserNotification)
    }
  ]
}
Kolom
kind
(deprecated)

string

localId

string

ID pengguna yang diautentikasi. Selalu ada dalam respons.

email

string

Email pengguna yang diautentikasi. Selalu ada dalam respons.

displayName

string

Nama tampilan pengguna yang disimpan di atribut akun.

idToken

string

Token ID Identity Platform untuk pengguna yang diautentikasi.

registered
(deprecated)

boolean

Apakah email tersebut untuk akun yang sudah ada. Selalu benar.

profilePicture

string

Foto profil pengguna yang disimpan di atribut akun.

oauthAccessToken
(deprecated)

string

Token akses OAuth2.

oauthExpireIn
(deprecated)

integer

Waktu habis masa berlaku token akses dalam detik.

oauthAuthorizationCode
(deprecated)

string

refreshToken

string

Token refresh Identity Platform untuk pengguna yang diautentikasi.

expiresIn

string (int64 format)

Jumlah detik hingga masa berlaku token ID Identity Platform berakhir.

mfaPendingCredential

string

String buram yang berfungsi sebagai bukti bahwa pengguna telah berhasil lulus autentikasi faktor pertama.

mfaInfo[]

object (MfaEnrollment)

Info tentang penyedia autentikasi multi-faktor yang diaktifkan untuk akun. Ada jika pengguna perlu menyelesaikan login menggunakan autentikasi multi-faktor.

userNotifications[]

object (UserNotification)

Notifikasi peringatan untuk pengguna.

Cakupan otorisasi

Memerlukan salah satu cakupan OAuth berikut:

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

Untuk mengetahui informasi selengkapnya, lihat Authentication Overview.

UserNotification

Notifikasi peringatan untuk pengguna.

Representasi JSON
{
  "notificationCode": enum (NotificationCode),
  "notificationMessage": string
}
Kolom
notificationCode

enum (NotificationCode)

Enum notifikasi peringatan. Dapat digunakan untuk pelokalan.

notificationMessage

string

String notifikasi peringatan. Dapat digunakan sebagai penggantian.

NotificationCode

Enum notifikasi peringatan. Dapat digunakan untuk pelokalan.

Enum
NOTIFICATION_CODE_UNSPECIFIED Tidak ada notifikasi yang ditentukan.
MISSING_LOWERCASE_CHARACTER Sandi tidak memiliki karakter huruf kecil.
MISSING_UPPERCASE_CHARACTER Sandi tidak memiliki karakter huruf besar.
MISSING_NUMERIC_CHARACTER Sandi tidak memiliki karakter numerik.
MISSING_NON_ALPHANUMERIC_CHARACTER Sandi tidak memiliki karakter non-alfanumerik.
MINIMUM_PASSWORD_LENGTH Sandi kurang dari panjang minimum yang diperlukan.
MAXIMUM_PASSWORD_LENGTH Sandi lebih panjang dari panjang maksimum yang diwajibkan.