Uso da API
Você pode consultar o back-end do Firebase Auth por meio de uma API REST. Isso pode ser usado para várias operações, como criar novos usuários, fazer login nos existentes e editar ou excluir esses usuários.
Ao longo deste documento, API_KEY
refere-se à chave de API da Web, que pode ser obtida na página de configurações do projeto em seu console de administração.
Troque o token personalizado por um ID e um token de atualização
Você pode trocar um token de autenticação personalizado por um token de ID e de atualização emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth verifyCustomToken
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signInWithCustomToken?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
símbolo | corda | Um token personalizado do Firebase Auth para criar um ID e atualizar um par de tokens. |
returnSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | Um token de ID de autenticação do Firebase gerado a partir do token personalizado fornecido. |
refreshToken | corda | Um token de atualização do Firebase Auth gerado a partir do token personalizado fornecido. |
expira em | corda | O número de segundos em que o token de ID expira. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithCustomToken?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"token":"[CUSTOM_TOKEN]","returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o token de ID do Firebase e o token de atualização associado ao token personalizado.
Resposta de amostra
{ "idToken": "[ID_TOKEN]", "refreshToken": "[REFRESH_TOKEN]", "expiresIn": "3600" }
Códigos de erro comuns
- INVALID_CUSTOM_TOKEN: O formato do token personalizado está incorreto ou o token é inválido por algum motivo (por exemplo, expirado, assinatura inválida etc.)
- CREDENTIAL_MISMATCH: o token personalizado corresponde a um projeto diferente do Firebase.
Troque um token de atualização por um token de ID
Você pode atualizar um token de ID do Firebase emitindo uma solicitação HTTP POST
para o endpoint securetoken.googleapis.com
.
Método: POST
Tipo de conteúdo: application/x-www-form-urlencoded
Endpointhttps://securetoken.googleapis.com/v1/token?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
tipo de concessão | corda | O tipo de concessão do token de atualização, sempre "refresh_token". |
refresh_token | corda | Um token de atualização do Firebase Auth. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
expira em | corda | O número de segundos em que o token de ID expira. |
token_type | corda | O tipo do token de atualização, sempre "Bearer". |
refresh_token | corda | O token de atualização do Firebase Auth fornecido na solicitação ou um novo token de atualização. |
id_token | corda | Um token de ID de autenticação do Firebase. |
ID do usuário | corda | O uid correspondente ao token de ID fornecido. |
ID_do_projeto | corda | Seu ID do projeto do Firebase. |
Pedido de amostra
curl 'https://securetoken.googleapis.com/v1/token?key=[API_KEY]' \ -H 'Content-Type: application/x-www-form-urlencoded' \ --data 'grant_type=refresh_token&refresh_token=[REFRESH_TOKEN]'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o novo token de ID do Firebase e o token de atualização.
Resposta de amostra
{ "expires_in": "3600", "token_type": "Bearer", "refresh_token": "[REFRESH_TOKEN]", "id_token": "[ID_TOKEN]", "user_id": "tRcfmLH7o2XrNELi...", "project_id": "1234567890" }
Códigos de erro comuns
- TOKEN_EXPIRED: a credencial do usuário não é mais válida. O usuário deve fazer login novamente.
- USER_DISABLED: A conta de usuário foi desabilitada por um administrador.
- USER_NOT_FOUND: O usuário correspondente ao token de atualização não foi encontrado. É provável que o usuário tenha sido excluído.
- Chave de API inválida. Por favor, passe uma chave de API válida. (chave de API inválida fornecida)
- INVALID_REFRESH_TOKEN: um token de atualização inválido é fornecido.
- Payload JSON inválido recebido. Nome desconhecido \"refresh_tokens\": Não é possível vincular o parâmetro de consulta. O campo 'refresh_tokens' não foi encontrado na mensagem de solicitação.
- INVALID_GRANT_TYPE: o tipo de concessão especificado é inválido.
- MISSING_REFRESH_TOKEN: nenhum token de atualização fornecido.
Inscreva-se com e-mail/senha
Você pode criar um novo usuário de e-mail e senha emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth signupNewUser
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
o email | corda | O e-mail para o usuário criar. |
senha | corda | A senha para o usuário criar. |
returnSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | Um token de ID de autenticação do Firebase para o usuário recém-criado. |
o email | corda | O e-mail do usuário recém-criado. |
refreshToken | corda | Um token de atualização do Firebase Auth para o usuário recém-criado. |
expira em | corda | O número de segundos em que o token de ID expira. |
localId | corda | O uid do usuário recém-criado. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"email":"[user@example.com]","password":"[PASSWORD]","returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o token de ID do Firebase e o token de atualização associados à nova conta.
Resposta de amostra
{ "idToken": "[ID_TOKEN]", "email": "[user@example.com]", "refreshToken": "[REFRESH_TOKEN]", "expiresIn": "3600", "localId": "tRcfmLH7..." }
Códigos de erro comuns
- EMAIL_EXISTS: o endereço de e-mail já está sendo usado por outra conta.
- OPERATION_NOT_ALLOWED: o login por senha está desabilitado para este projeto.
- TOO_MANY_ATTEMPTS_TRY_LATER: bloqueamos todas as solicitações deste dispositivo devido a atividades incomuns. Tente mais tarde.
Entrar com e-mail/senha
Você pode conectar um usuário com um e-mail e senha emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth verifyPassword
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
o email | corda | O e-mail com o qual o usuário está entrando. |
senha | corda | A senha da conta. |
returnSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | Um token de ID de autenticação do Firebase para o usuário autenticado. |
o email | corda | O e-mail do usuário autenticado. |
refreshToken | corda | Um token de atualização do Firebase Auth para o usuário autenticado. |
expira em | corda | O número de segundos em que o token de ID expira. |
localId | corda | O uid do usuário autenticado. |
registrado | boleano | Se o e-mail é para uma conta existente. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"email":"[user@example.com]","password":"[PASSWORD]","returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o token de ID do Firebase e o token de atualização associado à conta de e-mail/senha existente.
Resposta de amostra
{ "localId": "ZY1rJK0eYLg...", "email": "[user@example.com]", "displayName": "", "idToken": "[ID_TOKEN]", "registered": true, "refreshToken": "[REFRESH_TOKEN]", "expiresIn": "3600" }
Códigos de erro comuns
- EMAIL_NOT_FOUND: Não há registro de usuário correspondente a este identificador. O usuário pode ter sido excluído.
- INVALID_PASSWORD: A senha é inválida ou o usuário não possui senha.
- USER_DISABLED: A conta de usuário foi desabilitada por um administrador.
Entrar como anônimo
Você pode conectar um usuário anonimamente emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth signupNewUser
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
returnSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | Um token de ID de autenticação do Firebase para o usuário recém-criado. |
o email | corda | Como o usuário é anônimo, isso deve estar vazio. |
refreshToken | corda | Um token de atualização do Firebase Auth para o usuário recém-criado. |
expira em | corda | O número de segundos em que o token de ID expira. |
localId | corda | O uid do usuário recém-criado. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]' \ -H 'Content-Type: application/json' --data-binary '{"returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o token de ID do Firebase e o token de atualização associado ao usuário anônimo.
Resposta de amostra
{ "idToken": "[ID_TOKEN]", "email": "", "refreshToken": "[REFRESH_TOKEN]", "expiresIn": "3600", "localId": "Jws4SVjpT..." }
Códigos de erro comuns
- OPERATION_NOT_ALLOWED: o login de usuário anônimo está desabilitado para este projeto.
Fazer login com credencial OAuth
Você pode fazer login em um usuário com uma credencial OAuth emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth verifyAssertion
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
requestUri | corda | O URI para o qual o IDP redireciona o usuário de volta. |
postBody | corda | Contém a credencial OAuth (um token de ID ou token de acesso) e o ID do provedor que emite a credencial. |
returnSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
returnIdpCredential | boleano | Se forçar o retorno da credencial OAuth nos seguintes erros: FEDERATED_USER_ID_ALREADY_LINKED e EMAIL_EXISTS. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
ID federado | corda | O ID exclusivo identifica a conta do IdP. |
ID do provedor | corda | O ID do provedor vinculado (por exemplo, "google.com" para o provedor do Google). |
localId | corda | O uid do usuário autenticado. |
email verificado | boleano | Se o e-mail de entrada é verificado. |
o email | corda | O e-mail da conta. |
oauthIdToken | corda | O token de identificação OIDC, se disponível. |
oauthAccessToken | corda | O token de acesso OAuth, se disponível. |
oauthTokenSecret | corda | O segredo do token OAuth 1.0, se disponível. |
rawUserInfo | corda | A resposta JSON em string contendo todos os dados de IdP correspondentes à credencial OAuth fornecida. |
primeiro nome | corda | O primeiro nome da conta. |
último nome | corda | O sobrenome da conta. |
nome completo | corda | O nome completo da conta. |
Nome em Exibição | corda | O nome de exibição da conta. |
fotoURl | corda | O URL da foto para a conta. |
idToken | corda | Um token de ID de autenticação do Firebase para o usuário autenticado. |
refreshToken | corda | Um token de atualização do Firebase Auth para o usuário autenticado. |
expira em | corda | O número de segundos em que o token de ID expira. |
precisa de confirmação | boleano | Se já existe outra conta com a mesma credencial. O usuário precisará fazer login na conta original e vincular a credencial atual a ela. |
Solicitação de amostra com token de ID OAuth
curl 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"postBody":"id_token=[GOOGLE_ID_TOKEN]&providerId=[google.com]","requestUri":"[http://localhost]","returnIdpCredential":true,"returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o token de ID do Firebase e o token de atualização associado ao usuário autenticado.
Resposta de amostra com token de ID OAuth
{ "federatedId": "https://accounts.google.com/1234567890", "providerId": "google.com", "localId": "5xwsPCWYo...", "emailVerified": true, "email": "user@example.com", "oauthIdToken": "[GOOGLE_ID_TOKEN]", "firstName": "John", "lastName": "Doe", "fullName": "John Doe", "displayName": "John Doe", "idToken": "[ID_TOKEN]", "photoUrl": "https://lh5.googleusercontent.com/.../photo.jpg", "refreshToken": "[REFRESH_TOKEN]", "expiresIn": "3600", "rawUserInfo": "{\"updated_time\":\"2017-02-22T01:10:57+0000\",\"gender\":\"male\", ...}" }
Solicitação de amostra com token de acesso OAuth
curl 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"postBody":"access_token=[FACEBOOK_ACCESS_TOKEN]&providerId=[facebook.com]","requestUri":"[http://localhost]","returnIdpCredential":true,"returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o token de ID do Firebase e o token de atualização associado ao usuário autenticado.
Resposta de amostra com token de acesso OAuth
{ "federatedId": "http://facebook.com/1234567890", "providerId": "facebook.com", "localId": "5xwsPCWYo...", "emailVerified": true, "email": "user@example.com", "oauthAccessToken": "[FACEBOOK_ACCESS_TOKEN]", "firstName": "John", "lastName": "Doe", "fullName": "John Doe", "displayName": "John Doe", "idToken": "[ID_TOKEN]", "photoUrl": "https://scontent.xx.fbcdn.net/v/...", "refreshToken": "[REFRESH_TOKEN]", "expiresIn": "3600", "rawUserInfo": "{\"updated_time\":\"2017-02-22T01:10:57+0000\",\"gender\":\"male\", ...}" }
Solicitação de amostra com credencial do Twitter OAuth 1.0
curl 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"postBody":"access_token=[TWITTER_ACCESS_TOKEN]&oauth_token_secret=[TWITTER_TOKEN_SECRET]&providerId=[twitter.com]","requestUri":"[http://localhost]","returnIdpCredential":true,"returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o token de ID do Firebase e o token de atualização associado ao usuário autenticado.
Exemplo de resposta com credencial do Twitter OAuth 1.0
{ "federatedId": "http://twitter.com/1234567890", "providerId": "twitter.com", "localId": "5xwsPCWYo...", "emailVerified": true, "email": "user@example.com", "oauthAccessToken": "[OAUTH_ACCESS_TOKEN]", "oauthTokenSecret": "[OAUTH_TOKEN_SECRET]", "firstName": "John", "lastName": "Doe", "fullName": "John Doe", "displayName": "John Doe", "idToken": "[ID_TOKEN]", "photoUrl": "http://abs.twimg.com/sticky/...", "refreshToken": "[REFRESH_TOKEN]", "expiresIn": "3600", "rawUserInfo": "{\"updated_time\":\"2017-02-22T01:10:57+0000\",\"gender\":\"male\", ...}" }
Códigos de erro comuns
- OPERATION_NOT_ALLOWED: O provedor correspondente está desabilitado para este projeto.
- INVALID_IDP_RESPONSE: a credencial de autenticação fornecida está malformada ou expirou.
Buscar provedores de e-mail
Você pode procurar todos os provedores associados a um email especificado emitindo uma solicitação HTTP POST
para o endpoint Auth createAuthUri
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:createAuthUri?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
identificador | corda | Endereço de e-mail do usuário |
continuar Uri | corda | O URI para o qual o IDP redireciona o usuário de volta. Para este caso de uso, este é apenas o URL atual. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
todos os provedores | Lista de cordas | A lista de provedores com os quais o usuário fez login anteriormente. |
registrado | boleano | Se o e-mail é para uma conta existente |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:createAuthUri?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"identifier":"[user@example.com]","continueUri":"[http://localhost:8080/app]"}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém a lista de provedores associados ao email.
Resposta de amostra
{ "allProviders": [ "password", "google.com" ], "registered": true }
Códigos de erro comuns
- INVALID_EMAIL: o endereço de e-mail está formatado incorretamente.
Enviar e-mail de redefinição de senha
Você pode enviar um e-mail de redefinição de senha emitindo uma solicitação HTTP POST
para o endpoint Auth getOobConfirmationCode
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:sendOobCode?key=[API_KEY]Cabeçalhos opcionais
Nome da propriedade | Descrição |
---|---|
X-Firebase-Locale | O código de idioma correspondente à localidade do usuário. Passar isso localizará o e-mail de redefinição de senha enviado ao usuário. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
tipo de solicitação | corda | O tipo de código OOB a ser retornado. Deve ser "PASSWORD_RESET" para redefinição de senha. |
o email | corda | Endereço de e-mail do usuário. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
o email | corda | Endereço de e-mail do usuário. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:sendOobCode?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"requestType":"PASSWORD_RESET","email":"[user@example.com]"}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
.
Resposta de amostra
{ "email": "[user@example.com]" }
Códigos de erro comuns
- EMAIL_NOT_FOUND: Não há registro de usuário correspondente a este identificador. O usuário pode ter sido excluído.
Verifique o código de redefinição de senha
Você pode verificar um código de redefinição de senha emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth resetPassword
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
oobCode | corda | O código de ação de e-mail enviado ao e-mail do usuário para redefinir a senha. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
o email | corda | Endereço de e-mail do usuário. |
tipo de solicitação | corda | Tipo do código de ação de e-mail. Deve ser "PASSWORD_RESET". |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]' \ -H 'Content-Type: application/json' --data-binary '{"oobCode":"[PASSWORD_RESET_CODE]"}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
.
Resposta de amostra
{ "email": "[user@example.com]", "requestType": "PASSWORD_RESET" }
Códigos de erro comuns
- OPERATION_NOT_ALLOWED: o login por senha está desabilitado para este projeto.
- EXPIRED_OOB_CODE: O código de ação expirou.
- INVALID_OOB_CODE: O código de ação é inválido. Isso pode acontecer se o código estiver malformado, expirado ou já tiver sido usado.
Confirmar redefinição de senha
Você pode aplicar uma alteração de redefinição de senha emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth resetPassword
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
oobCode | corda | O código de ação de e-mail enviado ao e-mail do usuário para redefinir a senha. |
Nova Senha | corda | A nova senha do usuário. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
o email | corda | Endereço de e-mail do usuário. |
tipo de solicitação | corda | Tipo do código de ação de e-mail. Deve ser "PASSWORD_RESET". |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"oobCode":"[PASSWORD_RESET_CODE]","newPassword":"[NEW_PASSWORD]"}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
.
Resposta de amostra
{ "email": "[user@example.com]", "requestType": "PASSWORD_RESET" }
Códigos de erro comuns
- OPERATION_NOT_ALLOWED: o login por senha está desabilitado para este projeto.
- EXPIRED_OOB_CODE: O código de ação expirou.
- INVALID_OOB_CODE: O código de ação é inválido. Isso pode acontecer se o código estiver malformado, expirado ou já tiver sido usado.
- USER_DISABLED: A conta de usuário foi desabilitada por um administrador.
Mude o e-mail
Você pode alterar o e-mail de um usuário emitindo uma solicitação HTTP POST
para o endpoint Auth setAccountInfo
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]Cabeçalhos opcionais
Nome da propriedade | Descrição |
---|---|
X-Firebase-Locale | O código de idioma correspondente à localidade do usuário. Passar isso localizará a revogação de alteração de e-mail enviada ao usuário. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | Um token de ID de autenticação do Firebase para o usuário. |
o email | corda | O novo e-mail do usuário. |
returnSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
o email | corda | Endereço de e-mail do usuário. |
senhaHash | corda | Versão hash da senha. |
provedorUserInfo | Lista de objetos JSON | Lista de todos os objetos de provedor vinculados que contêm "providerId" e "federatedId". |
idToken | corda | Novo token de ID de autenticação do Firebase para o usuário. |
refreshToken | corda | Um token de atualização do Firebase Auth. |
expira em | corda | O número de segundos em que o token de ID expira. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary \ '{"idToken":"[FIREBASE_ID_TOKEN]","email":"[user@example2.com]","returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o novo token de ID do Firebase e o token de atualização associado ao usuário.
Resposta de amostra
{ "localId": "tRcfmLH7o2...", "email": "[user@example2.com]", "passwordHash": "...", "providerUserInfo": [ { "providerId": "password", "federatedId": "[user@example2.com]" } ], "idToken": "[NEW_ID_TOKEN]", "refreshToken": "[NEW_REFRESH_TOKEN]", "expiresIn": "3600" }
Códigos de erro comuns
- EMAIL_EXISTS: o endereço de e-mail já está sendo usado por outra conta.
- INVALID_ID_TOKEN:A credencial do usuário não é mais válida. O usuário deve fazer login novamente.
Alterar a senha
Você pode alterar a senha de um usuário emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth setAccountInfo
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | Um token de ID de autenticação do Firebase para o usuário. |
senha | corda | Nova senha do usuário. |
returnSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
o email | corda | Endereço de e-mail do usuário. |
senhaHash | corda | Versão hash da senha. |
provedorUserInfo | Lista de objetos JSON | Lista de todos os objetos de provedor vinculados que contêm "providerId" e "federatedId". |
idToken | corda | Novo token de ID de autenticação do Firebase para o usuário. |
refreshToken | corda | Um token de atualização do Firebase Auth. |
expira em | corda | O número de segundos em que o token de ID expira. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary \ '{"idToken":"[FIREBASE_ID_TOKEN]","password":"[NEW_PASSWORD]","returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o novo token de ID do Firebase e o token de atualização associado ao usuário.
Resposta de amostra
{ "localId": "tRcfmLH7o2...", "email": "[user@example.com]", "passwordHash": "...", "providerUserInfo": [ { "providerId": "password", "federatedId": "[user@example.com]" } ], "idToken": "[NEW_ID_TOKEN]", "refreshToken": "[NEW_REFRESH_TOKEN]", "expiresIn": "3600" }
Códigos de erro comuns
- INVALID_ID_TOKEN:A credencial do usuário não é mais válida. O usuário deve fazer login novamente.
- WEAK_PASSWORD: A senha deve ter 6 caracteres ou mais.
Atualizar perfil
Você pode atualizar o perfil de um usuário (nome de exibição/URL da foto) emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth setAccountInfo
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | Um token de ID de autenticação do Firebase para o usuário. |
Nome em Exibição | corda | Novo nome de exibição do usuário. |
fotoURl | corda | URL da nova foto do usuário. |
deleteAttribute | Lista de cordas | Lista de atributos a serem excluídos, "DISPLAY_NAME" ou "PHOTO_URL". Isso anulará esses valores. |
returnSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
o email | corda | Endereço de e-mail do usuário. |
Nome em Exibição | corda | Novo nome de exibição do usuário. |
fotoURl | corda | URL da nova foto do usuário. |
senhaHash | corda | Versão hash da senha. |
provedorUserInfo | Lista de objetos JSON | Lista de todos os objetos de provedor vinculados que contêm "providerId" e "federatedId". |
idToken | corda | Novo token de ID de autenticação do Firebase para o usuário. |
refreshToken | corda | Um token de atualização do Firebase Auth. |
expira em | corda | O número de segundos em que o token de ID expira. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary \ '{"idToken":"[ID_TOKEN]","displayName":"[NAME]","photoUrl":"[URL]","returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
.
Resposta de amostra
{ "localId": "tRcfmLH...", "email": "user@example2.com", "displayName": "John Doe", "photoUrl": "[http://localhost:8080/img1234567890/photo.png]", "passwordHash": "...", "providerUserInfo": [ { "providerId": "password", "federatedId": "user@example2.com", "displayName": "John Doe", "photoUrl": "http://localhost:8080/img1234567890/photo.png" } ], "idToken": "[NEW_ID_TOKEN]", "refreshToken": "[NEW_REFRESH_TOKEN]", "expiresIn": "3600" }
Códigos de erro comuns
- INVALID_ID_TOKEN:A credencial do usuário não é mais válida. O usuário deve fazer login novamente.
Obter dados do usuário
Você pode obter os dados de um usuário emitindo uma solicitação HTTP POST
para o endpoint Auth getAccountInfo
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:lookup?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | O token de ID do Firebase da conta. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
Comercial | Lista de objetos JSON | A conta associada ao token de ID do Firebase fornecido. Confira abaixo mais detalhes. |
users
)Nome da propriedade | Modelo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
o email | corda | O e-mail da conta. |
email verificado | boleano | Se o e-mail da conta foi verificado ou não. |
Nome em Exibição | corda | O nome de exibição da conta. |
provedorUserInfo | Lista de objetos JSON | Lista de todos os objetos de provedor vinculados que contêm "providerId" e "federatedId". |
fotoURl | corda | O URL da foto para a conta. |
senhaHash | corda | Versão hash da senha. |
passwordUpdatedAt | Duplo | O carimbo de data/hora, em milissegundos, em que a senha da conta foi alterada pela última vez. |
válido desde | corda | O carimbo de data/hora, em segundos, que marca um limite, antes do qual o token de ID do Firebase é considerado revogado. |
Desativado | boleano | Se a conta está desativada ou não. |
lastLoginAt | corda | O carimbo de data/hora, em milissegundos, em que a conta fez login pela última vez. |
criado em | corda | O carimbo de data/hora, em milissegundos, em que a conta foi criada. |
CustomAuth | boleano | Se a conta é autenticada pelo desenvolvedor. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:lookup?key=[API_KEY]' \ -H 'Content-Type: application/json' --data-binary '{"idToken":"[FIREBASE_ID_TOKEN]"}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta conterá todas as informações do usuário associadas à conta.
Resposta de amostra
{ "users": [ { "localId": "ZY1rJK0...", "email": "user@example.com", "emailVerified": false, "displayName": "John Doe", "providerUserInfo": [ { "providerId": "password", "displayName": "John Doe", "photoUrl": "http://localhost:8080/img1234567890/photo.png", "federatedId": "user@example.com", "email": "user@example.com", "rawId": "user@example.com", "screenName": "user@example.com" } ], "photoUrl": "https://lh5.googleusercontent.com/.../photo.jpg", "passwordHash": "...", "passwordUpdatedAt": 1.484124177E12, "validSince": "1484124177", "disabled": false, "lastLoginAt": "1484628946000", "createdAt": "1484124142000", "customAuth": false } ] }
Códigos de erro comuns
- INVALID_ID_TOKEN:A credencial do usuário não é mais válida. O usuário deve fazer login novamente.
- USER_NOT_FOUND: Não há registro de usuário correspondente a este identificador. O usuário pode ter sido excluído.
Link com e-mail/senha
Você pode vincular um e-mail/senha a um usuário atual emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth setAccountInfo
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | O token de ID do Firebase da conta à qual você está tentando vincular a credencial. |
o email | corda | O e-mail para vincular à conta. |
senha | corda | A nova senha da conta. |
returnSecureToken | corda | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
o email | corda | O e-mail da conta. |
Nome em Exibição | corda | O nome de exibição da conta. |
fotoURl | corda | O URL da foto para a conta. |
senhaHash | corda | Versão hash da senha. |
provedorUserInfo | Lista de objetos JSON | Lista de todos os objetos de provedor vinculados que contêm "providerId" e "federatedId". |
email verificado | boleano | Se o e-mail da conta foi verificado ou não. |
idToken | corda | Novo token de ID de autenticação do Firebase para o usuário. |
refreshToken | corda | Um token de atualização do Firebase Auth. |
expira em | corda | O número de segundos em que o token de ID expira. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary \ '{"idToken":"[ID_TOKEN]","email":"[user@example.com]","password":"[PASS]","returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o token de ID do Firebase e o token de atualização associado ao usuário autenticado.
Resposta de amostra
{ "localId": "huDwUz...", "email": "user@example.com", "displayName": "John Doe", "photoUrl": "https://lh5.googleusercontent.com/.../photo.jpg", "passwordHash": "...", "providerUserInfo": [ { "providerId": "password", "federatedId": "user@example.com" } ], "idToken": "[ID_TOKEN]", "refreshToken": "[REFRESH_TOKEN]", "expiresIn": "3600", "emailVerified": false }
Códigos de erro comuns
- CREDENTIAL_TOO_OLD_LOGIN_AGAIN: a credencial do usuário não é mais válida. O usuário deve fazer login novamente.
- TOKEN_EXPIRED: a credencial do usuário não é mais válida. O usuário deve fazer login novamente.
- INVALID_ID_TOKEN:A credencial do usuário não é mais válida. O usuário deve fazer login novamente.
- WEAK_PASSWORD: A senha deve ter 6 caracteres ou mais.
Vincular com a credencial OAuth
Você pode vincular uma credencial OAuth a um usuário emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth verifyAssertion
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | O token de ID do Firebase da conta à qual você está tentando vincular a credencial. |
requestUri | corda | O URI para o qual o IDP redireciona o usuário de volta. |
postBody | corda | Contém a credencial OAuth (um token de ID ou token de acesso) e o ID do provedor que emite a credencial. |
returnSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
returnIdpCredential | boleano | Se forçar o retorno da credencial OAuth nos seguintes erros: FEDERATED_USER_ID_ALREADY_LINKED e EMAIL_EXISTS. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
ID federado | corda | O ID exclusivo identifica a conta do IdP. |
ID do provedor | corda | O ID do provedor vinculado (por exemplo, "google.com" para o provedor do Google). |
localId | corda | O uid do usuário autenticado. |
email verificado | boleano | Se o e-mail de login foi verificado. |
o email | corda | O e-mail da conta. |
oauthIdToken | corda | O token de identificação OIDC, se disponível. |
oauthAccessToken | corda | O token de acesso OAuth, se disponível. |
oauthTokenSecret | corda | O segredo do token OAuth 1.0, se disponível. |
rawUserInfo | corda | A resposta JSON em string contendo todos os dados de IdP correspondentes à credencial OAuth fornecida. |
primeiro nome | corda | O primeiro nome da conta. |
último nome | corda | O sobrenome da conta. |
nome completo | corda | O nome completo da conta. |
Nome em Exibição | corda | O nome de exibição da conta. |
fotoURl | corda | O URL da foto para a conta. |
idToken | corda | Um token de ID de autenticação do Firebase para o usuário autenticado. |
refreshToken | corda | Um token de atualização do Firebase Auth para o usuário autenticado. |
expira em | corda | O número de segundos em que o token de ID expira. |
Solicitação de amostra com token de ID OAuth
curl 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"postBody":"id_token=[GOOGLE_ID_TOKEN]&providerId=[google.com]","requestUri":"[http://localhost]","idToken":"[FIREBASE_ID_TOKEN]","returnIdpCredential":true,"returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o token de ID do Firebase e o token de atualização associado ao usuário autenticado.
Resposta de amostra com token de ID OAuth
{ "federatedId": "https://accounts.google.com/1234567890", "providerId": "google.com", "localId": "5xwsPCWYo...", "emailVerified": true, "email": "user@example.com", "oauthIdToken": "[GOOGLE_ID_TOKEN]", "firstName": "John", "lastName": "Doe", "fullName": "John Doe", "displayName": "John Doe", "idToken": "[ID_TOKEN]", "photoUrl": "https://lh5.googleusercontent.com/.../photo.jpg", "refreshToken": "[REFRESH_TOKEN]", "expiresIn": "3600", "rawUserInfo": "{\"updated_time\":\"2017-02-22T01:10:57+0000\",\"gender\":\"male\", ...}" }
Solicitação de amostra com token de acesso OAuth
curl 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"postBody":"access_token=[FACEBOOK_ACCESS_TOKEN]&providerId=[facebook.com]","idToken":"[FIREBASE_ID_TOKEN]","requestUri":"[http://localhost]","returnIdpCredential":true,"returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o token de ID do Firebase e o token de atualização associado ao usuário autenticado.
Resposta de amostra com token de acesso OAuth
{ "federatedId": "http://facebook.com/1234567890", "providerId": "facebook.com", "localId": "5xwsPCWYo...", "emailVerified": true, "email": "user@example.com", "oauthAccessToken": "[FACEBOOK_ACCESS_TOKEN]", "firstName": "John", "lastName": "Doe", "fullName": "John Doe", "displayName": "John Doe", "idToken": "[ID_TOKEN]", "photoUrl": "https://scontent.xx.fbcdn.net/v/...", "refreshToken": "[REFRESH_TOKEN]", "expiresIn": "3600", "rawUserInfo": "{\"updated_time\":\"2017-02-22T01:10:57+0000\",\"gender\":\"male\", ...}" }
Solicitação de amostra com credencial do Twitter OAuth 1.0
curl 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"postBody":"access_token=[TWITTER_ACCESS_TOKEN]&oauth_token_secret=[TWITTER_TOKEN_SECRET]&providerId=[twitter.com]","requestUri":"[http://localhost]","idToken":"[FIREBASE_ID_TOKEN]","returnIdpCredential":true,"returnSecureToken":true}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
. A resposta contém o token de ID do Firebase e o token de atualização associado ao usuário autenticado.
Exemplo de resposta com credencial do Twitter OAuth 1.0
{ "federatedId": "http://twitter.com/1234567890", "providerId": "twitter.com", "localId": "5xwsPCWYo...", "emailVerified": true, "email": "user@example.com", "oauthAccessToken": "[OAUTH_ACCESS_TOKEN]", "oauthTokenSecret": "[OAUTH_TOKEN_SECRET]", "firstName": "John", "lastName": "Doe", "fullName": "John Doe", "displayName": "John Doe", "idToken": "[ID_TOKEN]", "photoUrl": "http://abs.twimg.com/sticky/...", "refreshToken": "[REFRESH_TOKEN]", "expiresIn": "3600", "rawUserInfo": "{\"updated_time\":\"2017-02-22T01:10:57+0000\",\"gender\":\"male\", ...}" }
Códigos de erro comuns
- OPERATION_NOT_ALLOWED: O provedor correspondente está desabilitado para este projeto.
- INVALID_IDP_RESPONSE: a credencial de autenticação fornecida está malformada ou expirou.
- INVALID_ID_TOKEN:A credencial do usuário não é mais válida. O usuário deve fazer login novamente.
- EMAIL_EXISTS: o endereço de e-mail já está sendo usado por outra conta.
- FEDERATED_USER_ID_ALREADY_LINKED: esta credencial já está associada a uma conta de usuário diferente.
Desvincular provedor
Você pode desvincular um provedor de um usuário atual emitindo uma solicitação HTTP POST
para o ponto de extremidade Auth setAccountInfo
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | O token de ID do Firebase da conta. |
deleteProvider | Lista de cordas | A lista de IDs de provedores a serem desvinculados, por exemplo: 'google.com', 'password' etc. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
o email | corda | O e-mail da conta. |
Nome em Exibição | corda | O nome de exibição da conta. |
fotoURl | corda | O URL da foto para a conta. |
senhaHash | corda | Versão hash da senha. |
provedorUserInfo | Lista de objetos JSON | Lista de todos os objetos de provedor vinculados que contêm "providerId" e "federatedId". |
email verificado | boleano | Se o e-mail da conta foi verificado ou não. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"idToken":"[FIREBASE_ID_TOKEN]","deleteProvider":["[facebook.com]"]}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
.
Resposta de amostra
{ "localId": "huDwUz...", "email": "user@example.com", "displayName": "John Doe", "photoUrl": "https://lh5.googleusercontent.com/.../photo.jpg", "passwordHash": "...", "providerUserInfo": [ { "providerId": "google.com", "federatedId": "1234567890", "displayName": "John Doe", "photoUrl": "https://lh5.googleusercontent.com/.../photo.jpg" }, { "providerId": "password", "federatedId": "user@example.com" } ], "emailVerified": "true" }
Códigos de erro comuns
- INVALID_ID_TOKEN: a credencial do usuário não é mais válida. O usuário deve fazer login novamente.
Enviar verificação de e-mail
Você pode enviar uma verificação de e-mail para o usuário atual emitindo uma solicitação HTTP POST
para o endpoint Auth getOobConfirmationCode
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:sendOobCode?key=[API_KEY]Cabeçalhos opcionais
Nome da propriedade | Descrição |
---|---|
X-Firebase-Locale | O código de idioma correspondente à localidade do usuário. Passar isso localizará a verificação de e-mail enviada ao usuário. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
tipo de solicitação | corda | O tipo de código de confirmação a ser enviado. Deve ser sempre "VERIFY_EMAIL". |
idToken | corda | O token de ID do Firebase do usuário a ser verificado. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
o email | corda | O e-mail da conta. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:sendOobCode?key=[API_KEY]' \ -H 'Content-Type: application/json' \ --data-binary '{"requestType":"VERIFY_EMAIL","idToken":"[FIREBASE_ID_TOKEN]"}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
.
Resposta de amostra
{ "email": "user@example.com" }
Códigos de erro comuns
- INVALID_ID_TOKEN: a credencial do usuário não é mais válida. O usuário deve fazer login novamente.
- USER_NOT_FOUND: Não há registro de usuário correspondente a este identificador. O usuário pode ter sido excluído.
Confirmar verificação de e-mail
Você pode confirmar um código de verificação de e-mail emitindo uma solicitação HTTP POST
para o endpoint Auth setAccountInfo
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
oobCode | corda | O código de ação enviado ao e-mail do usuário para verificação de e-mail. |
Nome da propriedade | Modelo | Descrição |
---|---|---|
o email | corda | O e-mail da conta. |
Nome em Exibição | corda | O nome de exibição da conta. |
fotoURl | corda | O URL da foto para a conta. |
senhaHash | corda | O hash da senha. |
provedorUserInfo | Lista de objetos JSON | Lista de todos os objetos de provedor vinculados que contêm "providerId" e "federatedId". |
email verificado | boleano | Se o e-mail da conta foi verificado ou não. |
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]' \ -H 'Content-Type: application/json' --data-binary '{"oobCode":"[VERIFICATION_CODE]"}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
.
Resposta de amostra
{ "localId": "FhyStE...", "email": "user@example.com", "passwordHash": "...", "providerUserInfo": [ { "providerId": "password", "federatedId": "user@example.com" } ] }
Códigos de erro comuns
- EXPIRED_OOB_CODE: O código de ação expirou.
- INVALID_OOB_CODE: O código de ação é inválido. Isso pode acontecer se o código estiver malformado, expirado ou já tiver sido usado.
- USER_DISABLED: A conta de usuário foi desabilitada por um administrador.
- EMAIL_NOT_FOUND: Não há registro de usuário correspondente a este identificador. O usuário pode ter sido excluído.
Deletar conta
Você pode excluir um usuário atual emitindo uma solicitação HTTP POST
para o terminal Auth deleteAccount
.
Método: POST
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:delete?key=[API_KEY]Request Body Payload
Nome da propriedade | Modelo | Descrição |
---|---|---|
idToken | corda | O token de ID do Firebase do usuário a ser excluído. |
Nome da propriedade | Modelo | Descrição |
---|
Pedido de amostra
curl 'https://identitytoolkit.googleapis.com/v1/accounts:delete?key=[API_KEY]' \ -H 'Content-Type: application/json' --data-binary '{"idToken":"[FIREBASE_ID_TOKEN]"}'
Uma solicitação bem-sucedida é indicada por um código de status HTTP 200 OK
.
Códigos de erro comuns
- INVALID_ID_TOKEN:A credencial do usuário não é mais válida. O usuário deve fazer login novamente.
- USER_NOT_FOUND: Não há registro de usuário correspondente a este identificador. O usuário pode ter sido excluído.
Emulador de autenticação do Firebase
The Firebase Local Emulator Suite includes an Authentication emulator , which can be used for local prototyping and testing of authentication flows. The emulator exposes the following REST endpoints.
Clear user accounts
Remove all accounts in the specified project, regardless of state.
Method: DELETE
Endpoint Note that 9099
is the default port for the Authentication emulator. Check terminal output for the actual port being used.
http://localhost:9099/emulator/v1/projects/{project-id}/accounts
Get emulator configuration
Get emulator-specific configuration for the specified project.
Method: GET
Endpoint Note that 9099
is the default port for the Authentication emulator. Check terminal output for the actual port being used.
http://localhost:9099/emulator/v1/projects/{project-id}/configResponse Payload
Property Name | Modelo | Descrição |
---|---|---|
signIn | objeto | signIn configuration object containing a single key, allowDuplicateEmails (boolean). |
Patch emulator configuration
Update emulator-specific configuration for the specified project.
Method: PATCH
Endpoint Note that 9099
is the default port for the Authentication emulator. Check terminal output for the actual port being used.
Content-Type: application/json
http://localhost:9099/emulator/v1/projects/{project-id}/configRequest Body Payload
Property Name | Modelo | Descrição |
---|---|---|
signIn | objeto | Desired signIn configuration object with single key, allowDuplicateEmails (boolean). |
Property Name | Modelo | Descrição |
---|---|---|
signIn | objeto | Post-request signIn configuration object with single key, allowDuplicateEmails (boolean). |
Retrieve out-of-band authentication codes
If the authentication flows you are testing would normally generate out-of-band codes (eg, email verification codes, password reset codes), the emulator stores such codes internally until they are used.
Method: GET
Endpoint Note that 9099
is the default port for the Authentication emulator. Check terminal output for the actual port being used.
http://localhost:9099/emulator/v1/projects/{project-id}/oobCodesResponse Payload
Property Name | Modelo | Descrição |
---|---|---|
oobCodes | array | An array of objects containing details of all pending confirmation codes. Each object contains email (string), oobCode (string), oobLink (string), and requestType (string) |
Retrieve SMS verification codes
If you are testing phone/SMS authentication flows, the emulator stores such SMS codes internally until they are used.
Method: GET
Endpoint Note that 9099
is the default port for the Authentication emulator. Check terminal output for the actual port being used.
http://localhost:9099/emulator/v1/projects/{project-id}/verificationCodesResponse Payload
Property Name | Modelo | Descrição |
---|---|---|
verificationCodes | array | An array of objects containing details of all pending verification codes. Each object contains phoneNumber (string) and sessionCode (string). |
Error Response
Error response format
Anytime an error is returned from the backend server for any of the APIs above, the response will have the following format.
Sample response
{ "error": { "errors": [ { "domain": "global", "reason": "invalid", "message": "CREDENTIAL_TOO_OLD_LOGIN_AGAIN" } ], "code": 400, "message": "CREDENTIAL_TOO_OLD_LOGIN_AGAIN" } }
The error code is obtained from the message field. All of the above error codes refer to the message field content.