Uso de API
Você pode consultar o back-end do Firebase Auth por meio de uma API REST. Isso pode ser usado para diversas 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 da API Web, que pode ser obtida na página de configurações do projeto em seu console administrativo.
Trocar token personalizado por um ID e token de atualização
Você pode trocar um token Auth personalizado por um ID e um token de atualização emitindo uma solicitação HTTP POST
para o endpoint Auth verifyCustomToken
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signInWithCustomToken?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
símbolo | corda | Um token personalizado do Firebase Auth para criar um par de ID e token de atualização. |
retornarSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | Um token de ID do Firebase Auth gerado a partir do token personalizado fornecido. |
atualizarToken | 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.
Exemplo de resposta
{ "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.
Trocar 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: POSTAR
Tipo de conteúdo: aplicativo/x-www-form-urlencoded
Endpointhttps://securetoken.googleapis.com/v1/token?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
tipo_de_concessão | corda | O tipo de concessão do token de atualização, sempre "refresh_token". |
atualização_token | corda | Um token de atualização do Firebase Auth. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
expira em | corda | O número de segundos em que o token de ID expira. |
tipo_de_token | corda | O tipo do token de atualização, sempre "Bearer". |
atualização_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.
Exemplo de resposta
{ "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 do 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.
- Carga JSON inválida recebida. 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.
- PROJECT_NUMBER_MISMATCH: o número do projeto do token de atualização não corresponde ao da chave de API fornecida.
Cadastre-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 endpoint Auth signupNewUser
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
corda | O e-mail para o usuário criar. | |
senha | corda | A senha a ser criada pelo usuário. |
retornarSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | Um token de ID do Firebase Auth para o usuário recém-criado. |
corda | O e-mail do usuário recém-criado. | |
atualizarToken | 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 associado à nova conta.
Exemplo de resposta
{ "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á em uso por outra conta.
- OPERATION_NOT_ALLOWED: o login com 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.
Faça login com e-mail/senha
Você pode conectar um usuário com um e-mail e senha emitindo uma solicitação HTTP POST
para o endpoint Auth verifyPassword
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
corda | O e-mail com o qual o usuário está fazendo login. | |
senha | corda | A senha da conta. |
retornarSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | Um token de ID do Firebase Auth para o usuário autenticado. |
corda | O e-mail do usuário autenticado. | |
atualizarToken | 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.
Exemplo de resposta
{ "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 do 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 endpoint Auth signupNewUser
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
retornarSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | Um token de ID do Firebase Auth para o usuário recém-criado. |
corda | Como o usuário é anônimo, deve estar vazio. | |
atualizarToken | 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.
Exemplo de resposta
{ "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.
Faça login com credencial OAuth
Você pode conectar um usuário com uma credencial OAuth emitindo uma solicitação HTTP POST
para o endpoint Auth verifyAssertion
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
solicitaçãoUri | 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. |
retornarSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
returnIdpCredential | boleano | Se deve forçar o retorno da credencial OAuth nos seguintes erros: FEDERATED_USER_ID_ALREADY_LINKED e EMAIL_EXISTS. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
federadoId | 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 Google). |
localId | corda | O uid do usuário autenticado. |
email verificado | boleano | Se o e-mail de login foi verificado. |
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 stringificada que contém todos os dados do IdP correspondentes à credencial OAuth fornecida. |
primeiro nome | corda | O primeiro nome da conta. |
sobrenome | corda | O sobrenome da conta. |
nome completo | corda | O nome completo da conta. |
nome de exibição | corda | O nome de exibição da conta. |
fotoUrl | corda | O URL da foto da conta. |
idToken | corda | Um token de ID do Firebase Auth para o usuário autenticado. |
atualizarToken | 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 exemplo 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 associados ao usuário autenticado.
Exemplo de resposta 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 exemplo 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 associados ao usuário autenticado.
Exemplo de resposta 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\", ...}" }
Exemplo de solicitação com credencial 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 associados ao usuário autenticado.
Exemplo de resposta com credencial 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á incorreta ou expirou.
Buscar provedores para e-mail
Você pode consultar todos os provedores associados a um e-mail especificado emitindo uma solicitação HTTP POST
para o endpoint Auth createAuthUri
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:createAuthUri?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
identificador | corda | Endereço de e-mail do usuário |
continuarUri | 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 | Tipo | Descrição |
---|---|---|
todos os provedores | Lista de strings | 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.
Exemplo de resposta
{ "allProviders": [ "password", "google.com" ], "registered": true }
Códigos de erro comuns
- INVALID_EMAIL: o endereço de e-mail está mal formatado.
Enviar e-mail de redefinição de senha
Você pode enviar um email de redefinição de senha emitindo uma solicitação HTTP POST
para o endpoint Auth getOobConfirmationCode
.
Método: POSTAR
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 do idioma correspondente à localidade do usuário. Passar isso localizará o e-mail de redefinição de senha enviado ao usuário. |
Nome da propriedade | Tipo | 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. |
corda | Endereço de e-mail do usuário. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
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
.
Exemplo de resposta
{ "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 endpoint Auth resetPassword
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | 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 | Tipo | Descrição |
---|---|---|
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
.
Exemplo de resposta
{ "email": "[user@example.com]", "requestType": "PASSWORD_RESET" }
Códigos de erro comuns
- OPERATION_NOT_ALLOWED: o login com 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 endpoint Auth resetPassword
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | 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 | Tipo | Descrição |
---|---|---|
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
.
Exemplo de resposta
{ "email": "[user@example.com]", "requestType": "PASSWORD_RESET" }
Códigos de erro comuns
- OPERATION_NOT_ALLOWED: o login com 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 do 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: POSTAR
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 do idioma correspondente à localidade do usuário. Passar isso localizará a revogação da alteração do e-mail enviada ao usuário. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | Um token de ID do Firebase Auth para o usuário. |
corda | O novo e-mail do usuário. | |
retornarSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
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 do Firebase Auth para o usuário. |
atualizarToken | 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.
Exemplo de resposta
{ "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á em uso 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 endpoint Auth setAccountInfo
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | Um token de ID do Firebase Auth para o usuário. |
senha | corda | Nova senha do usuário. |
retornarSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
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 do Firebase Auth para o usuário. |
atualizarToken | 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.
Exemplo de resposta
{ "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 endpoint Auth setAccountInfo
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | Um token de ID do Firebase Auth para o usuário. |
nome de exibição | corda | O novo nome de exibição do usuário. |
fotoUrl | corda | URL da nova foto do usuário. |
deleteAttribute | Lista de strings | Lista de atributos a serem excluídos, "DISPLAY_NAME" ou "PHOTO_URL". Isso anulará esses valores. |
retornarSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
corda | Endereço de e-mail do usuário. | |
nome de exibição | corda | O 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 do Firebase Auth para o usuário. |
atualizarToken | 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
.
Exemplo de resposta
{ "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.
Obtenha 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: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:lookup?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | O token de ID do Firebase da conta. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
Usuários | Lista de objetos JSON | A conta associada ao token de ID do Firebase fornecido. Confira abaixo mais detalhes. |
users
)Nome da propriedade | Tipo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
corda | O e-mail da conta. | |
email verificado | boleano | Se o e-mail da conta foi verificado ou não. |
nome de 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 da conta. |
senhaHash | corda | Versão hash da senha. |
senhaAtualizadaAt | dobro | O carimbo de data/hora, em milissegundos, da última alteração da senha da conta. |
válidoDesde | corda | O carimbo de data/hora, em segundos, que marca um limite antes do qual o token de ID do Firebase é considerado revogado. |
desabilitado | boleano | Se a conta está desativada ou não. |
últimoLoginAt | corda | O carimbo de data/hora, em milissegundos, do último login da conta. |
criado em | corda | O carimbo de data/hora, em milissegundos, em que a conta foi criada. |
autenticação personalizada | 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.
Exemplo de resposta
{ "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 endpoint Auth setAccountInfo
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | O token de ID do Firebase da conta à qual você está tentando vincular a credencial. |
corda | O e-mail para vincular à conta. | |
senha | corda | A nova senha da conta. |
retornarSecureToken | corda | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
corda | O e-mail da conta. | |
nome de exibição | corda | O nome de exibição da conta. |
fotoUrl | corda | O URL da foto da 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 do Firebase Auth para o usuário. |
atualizarToken | 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 associados ao usuário autenticado.
Exemplo de resposta
{ "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.
Link com credencial OAuth
Você pode vincular uma credencial OAuth a um usuário emitindo uma solicitação HTTP POST
para o endpoint Auth verifyAssertion
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | O token de ID do Firebase da conta à qual você está tentando vincular a credencial. |
solicitaçãoUri | 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. |
retornarSecureToken | boleano | Se deve ou não retornar um ID e um token de atualização. Deve ser sempre verdade. |
returnIdpCredential | boleano | Se deve forçar o retorno da credencial OAuth nos seguintes erros: FEDERATED_USER_ID_ALREADY_LINKED e EMAIL_EXISTS. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
federadoId | 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 Google). |
localId | corda | O uid do usuário autenticado. |
email verificado | boleano | Se o e-mail de login foi verificado. |
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 stringificada que contém todos os dados do IdP correspondentes à credencial OAuth fornecida. |
primeiro nome | corda | O primeiro nome da conta. |
sobrenome | corda | O sobrenome da conta. |
nome completo | corda | O nome completo da conta. |
nome de exibição | corda | O nome de exibição da conta. |
fotoUrl | corda | O URL da foto da conta. |
idToken | corda | Um token de ID do Firebase Auth para o usuário autenticado. |
atualizarToken | 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 exemplo 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 associados ao usuário autenticado.
Exemplo de resposta 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 exemplo 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 associados ao usuário autenticado.
Exemplo de resposta 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\", ...}" }
Exemplo de solicitação com credencial 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 associados ao usuário autenticado.
Exemplo de resposta com credencial 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á incorreta 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á em uso 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 endpoint Auth setAccountInfo
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | O token de ID do Firebase da conta. |
excluirProvider | Lista de strings | A lista de IDs de provedores a serem desvinculados, por exemplo: 'google.com', 'senha' etc. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
localId | corda | O uid do usuário atual. |
corda | O e-mail da conta. | |
nome de exibição | corda | O nome de exibição da conta. |
fotoUrl | corda | O URL da foto da 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
.
Exemplo de resposta
{ "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 por e-mail para o usuário atual emitindo uma solicitação HTTP POST
para o endpoint Auth getOobConfirmationCode
.
Método: POSTAR
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 do idioma correspondente à localidade do usuário. A aprovação localizará a verificação do e-mail enviada ao usuário. |
Nome da propriedade | Tipo | 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 | Tipo | Descrição |
---|---|---|
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
.
Exemplo de resposta
{ "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: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
oobCode | corda | O código de ação enviado ao email do usuário para verificação de email. |
Nome da propriedade | Tipo | Descrição |
---|---|---|
corda | O e-mail da conta. | |
nome de exibição | corda | O nome de exibição da conta. |
fotoUrl | corda | O URL da foto da 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
.
Exemplo de resposta
{ "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 do 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 endpoint Auth deleteAccount
.
Método: POSTAR
Tipo de conteúdo: application/json
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:delete?key=[API_KEY]Carga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
idToken | corda | O token de ID do Firebase do usuário a ser excluído. |
Nome da propriedade | Tipo | 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 Firebase
O Firebase Local Emulator Suite inclui um emulador de autenticação , que pode ser usado para prototipagem local e teste de fluxos de autenticação. O emulador expõe os seguintes pontos de extremidade REST.
Limpar contas de usuário
Remova todas as contas do projeto especificado, independentemente do estado.
Método: DELETAR
Ponto final Observe que 9099
é a porta padrão para o emulador de autenticação. Verifique a saída do terminal para a porta real que está sendo usada.
http://localhost:9099/emulator/v1/projects/{project-id}/accounts
Obtenha a configuração do emulador
Obtenha a configuração específica do emulador para o projeto especificado.
Método: GET
Ponto final Observe que 9099
é a porta padrão para o emulador de autenticação. Verifique a saída do terminal para a porta real que está sendo usada.
http://localhost:9099/emulator/v1/projects/{project-id}/config
Nome da propriedade | Tipo | Descrição |
---|---|---|
entrar | objeto | Objeto de configuração signIn contendo uma única chave, allowDuplicateEmails (booleano). |
Configuração do emulador de patch
Atualize a configuração específica do emulador para o projeto especificado.
Método: PATCH
Ponto final Observe que 9099
é a porta padrão para o emulador de autenticação. Verifique a saída do terminal para a porta real que está sendo usada.
Tipo de conteúdo: application/json
http://localhost:9099/emulator/v1/projects/{project-id}/configCarga útil do corpo da solicitação
Nome da propriedade | Tipo | Descrição |
---|---|---|
entrar | objeto | Objeto de configuração de login desejado com chave única, allowDuplicateEmails (booleano). |
Nome da propriedade | Tipo | Descrição |
---|---|---|
entrar | objeto | Objeto de configuração de login pós-solicitação com chave única, allowDuplicateEmails (booleano). |
Recuperar códigos de autenticação fora de banda
Se os fluxos de autenticação que você está testando normalmente gerarem códigos fora de banda (por exemplo, códigos de verificação de e-mail, códigos de redefinição de senha), o emulador armazenará esses códigos internamente até que sejam usados.
Método: GET
Ponto final Observe que 9099
é a porta padrão para o emulador de autenticação. Verifique a saída do terminal para a porta real que está sendo usada.
http://localhost:9099/emulator/v1/projects/{project-id}/oobCodes
Nome da propriedade | Tipo | Descrição |
---|---|---|
oobCódigos | variedade | Uma variedade de objetos contendo detalhes de todos os códigos de confirmação pendentes. Cada objeto contém email (string), oobCode (string), oobLink (string) e requestType (string) |
Recuperar códigos de verificação de SMS
Se você estiver testando fluxos de autenticação por telefone/SMS, o emulador armazena esses códigos SMS internamente até que sejam usados.
Método: GET
Ponto final Observe que 9099
é a porta padrão para o emulador de autenticação. Verifique a saída do terminal para a porta real que está sendo usada.
http://localhost:9099/emulator/v1/projects/{project-id}/verificationCodesCAPAÇÃO DE RESPOSTA
Nome da propriedade | Tipo | Descrição |
---|---|---|
VerificationCodes | variedade | Uma variedade de objetos contendo detalhes de todos os códigos de verificação pendentes. Cada objeto contém phoneNumber (String) e sessionCode (String). |
Resposta de erro
Formato de resposta de erro
Sempre que um erro é retornado do servidor de back -end para qualquer uma das APIs acima, a resposta terá o seguinte formato.
Resposta da amostra
{ "error": { "errors": [ { "domain": "global", "reason": "invalid", "message": "CREDENTIAL_TOO_OLD_LOGIN_AGAIN" } ], "code": 400, "message": "CREDENTIAL_TOO_OLD_LOGIN_AGAIN" } }
O código de erro é obtido no campo da mensagem. Todos os códigos de erro acima se referem ao conteúdo do campo da mensagem.