Firebase Auth REST API

שימוש ב-API

אתה יכול לשאול את הקצה האחורי של Firebase Auth דרך REST API. זה יכול לשמש לפעולות שונות כגון יצירת משתמשים חדשים, כניסה לקיימים ועריכה או מחיקה של משתמשים אלו.

בכל מסמך זה, API_KEY מתייחס למפתח ה-API של האינטרנט, אותו ניתן להשיג בדף הגדרות הפרויקט במסוף הניהול שלך.

החלף אסימון מותאם אישית עבור מזהה ורענן אסימון

אתה יכול להחליף אסימון Auth מותאם אישית עבור מזהה ולרענן אסימון על ידי הנפקת בקשת HTTP POST לנקודת הקצה Auth verifyCustomToken .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:signInWithCustomToken?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
אֲסִימוֹן חוּט אסימון מותאם אישית של Firebase Auth שממנו ניתן ליצור מזהה ולרענן זוג אסימונים.
returnSecureToken בוליאני האם להחזיר תעודה מזהה ולרענן אסימון או לא. תמיד צריך להיות נכון.
מטען תגובה
שם הנכס סוּג תיאור
idToken חוּט אסימון Firebase Auth ID שנוצר מהאסימון המותאם אישית שסופק.
refreshToken חוּט אסימון רענון של Firebase Auth שנוצר מהאסימון המותאם אישית שסופק.
פג תוקף ב חוּט מספר השניות שבהן פג תוקפו של אסימון הזיהוי.

בקשה לדוגמא

curl 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithCustomToken?key=[API_KEY]' \
-H 'Content-Type: application/json' \
--data-binary '{"token":"[CUSTOM_TOKEN]","returnSecureToken":true}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את אסימון Firebase ID ואסימון הרענון המשויכים לאסימון המותאם אישית.

תגובה לדוגמה

{
  "idToken": "[ID_TOKEN]",
  "refreshToken": "[REFRESH_TOKEN]",
  "expiresIn": "3600"
}

קודי שגיאה נפוצים

  • INVALID_CUSTOM_TOKEN: פורמט האסימון המותאם אישית שגוי או שהאסימון לא חוקי מסיבה כלשהי (למשל פג תוקפו, חתימה לא חוקית וכו')
  • CREDENTIAL_MISMATCH: האסימון המותאם אישית מתאים לפרויקט Firebase אחר.

החלף אסימון רענון באסימון מזהה

אתה יכול לרענן אסימון Firebase ID על ידי הוצאת בקשת HTTP POST לנקודת הקצה securetoken.googleapis.com .

שיטה: POST

Content-Type: application/x-www-form-urlencoded

Endpoint
https://securetoken.googleapis.com/v1/token?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
grant_type חוּט סוג ההענקה של אסימון הרענון, תמיד "refresh_token".
refresh_token חוּט אסימון רענון של Firebase Auth.
מטען תגובה
שם הנכס סוּג תיאור
פג תוקף ב חוּט מספר השניות שבהן פג תוקפו של אסימון הזיהוי.
token_type חוּט סוג אסימון הרענון, תמיד "נושא".
refresh_token חוּט אסימון הרענון של Firebase Auth שסופק בבקשה או אסימון רענון חדש.
id_token חוּט אסימון Firebase Auth ID.
זהות המשתמש חוּט ה-uid המתאים לאסימון המזהה שסופק.
מזהה_פרויקט חוּט מזהה הפרויקט שלך ב-Firebase.

בקשה לדוגמא

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]'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את האסימון החדש של Firebase ID ואסימון הרענון.

תגובה לדוגמה

{
  "expires_in": "3600",
  "token_type": "Bearer",
  "refresh_token": "[REFRESH_TOKEN]",
  "id_token": "[ID_TOKEN]",
  "user_id": "tRcfmLH7o2XrNELi...",
  "project_id": "1234567890"
}

קודי שגיאה נפוצים

  • TOKEN_EXPIRED: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • USER_DISABLED: חשבון המשתמש הושבת על ידי מנהל מערכת.
  • USER_NOT_FOUND: המשתמש המתאים לאסימון הרענון לא נמצא. סביר להניח שהמשתמש נמחק.
  • מפתח API לא חוקי. נא להעביר מפתח API חוקי. (סופק מפתח API לא חוקי)
  • INVALID_REFRESH_TOKEN: מסופק אסימון רענון לא חוקי.
  • מטען JSON לא חוקי התקבל. שם לא ידוע \"refresh_tokens\": לא ניתן לאגד את פרמטר השאילתה. השדה 'refresh_tokens' לא נמצא בהודעת הבקשה.
  • INVALID_GRANT_TYPE: סוג ההענקה שצוין אינו חוקי.
  • MISSING_REFRESH_TOKEN: לא סופק אסימון רענון.
  • PROJECT_NUMBER_MISMATCH: מספר הפרויקט של אסימון הרענון אינו תואם לזה של מפתח ה-API שסופק.

הירשם עם דואר אלקטרוני/סיסמא

אתה יכול ליצור משתמש דוא"ל וסיסמה חדשים על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth signupNewUser .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
אימייל חוּט האימייל ליצירת המשתמש.
סיסמה חוּט הסיסמה ליצירת המשתמש.
returnSecureToken בוליאני האם להחזיר תעודה מזהה ולרענן אסימון או לא. תמיד צריך להיות נכון.
מטען תגובה
שם הנכס סוּג תיאור
idToken חוּט אסימון Firebase Auth ID עבור המשתמש החדש שנוצר.
אימייל חוּט האימייל של המשתמש החדש שנוצר.
refreshToken חוּט אסימון רענון של Firebase Auth עבור המשתמש החדש שנוצר.
פג תוקף ב חוּט מספר השניות שבהן פג תוקפו של אסימון הזיהוי.
זיהוי מקומי חוּט ה-uid של המשתמש החדש שנוצר.

בקשה לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את אסימון Firebase ID ואת אסימון הרענון המשויכים לחשבון החדש.

תגובה לדוגמה

{
  "idToken": "[ID_TOKEN]",
  "email": "[user@example.com]",
  "refreshToken": "[REFRESH_TOKEN]",
  "expiresIn": "3600",
  "localId": "tRcfmLH7..."
}

קודי שגיאה נפוצים

  • EMAIL_EXISTS: כתובת האימייל כבר נמצאת בשימוש על ידי חשבון אחר.
  • OPERATION_NOT_ALLOWED: הכניסה לסיסמה מושבתת עבור פרויקט זה.
  • TOO_MANY_ATTEMPTS_TRY_LATER: חסמנו את כל הבקשות מהמכשיר הזה עקב פעילות חריגה. נסה שוב מאוחר יותר.

היכנס באמצעות דואר אלקטרוני/סיסמה

אתה יכול להיכנס למשתמש עם דואר אלקטרוני וסיסמה על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth verifyPassword .

שיטה: POST

סוג תוכן: application/json

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=[API_KEY]
בקש מטען גוף
שם הנכס סוּג תיאור
אימייל חוּט האימייל איתו המשתמש נכנס.
סיסמה חוּט הסיסמה לחשבון.
returnSecureToken בוליאני האם להחזיר תעודה מזהה ולרענן אסימון או לא. תמיד צריך להיות נכון.
מטען תגובה
שם הנכס סוּג תיאור
idToken חוּט אסימון Firebase Auth ID עבור המשתמש המאומת.
אימייל חוּט האימייל של המשתמש המאומת.
refreshToken חוּט אסימון רענון של Firebase Auth עבור המשתמש המאומת.
פג תוקף ב חוּט מספר השניות שבהן פג תוקפו של אסימון הזיהוי.
זיהוי מקומי חוּט ה-uid של המשתמש המאומת.
רשום בוליאני האם האימייל מיועד לחשבון קיים.

בקשה לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את אסימון ה-Firebase ID ואסימון הרענון המשויכים לחשבון האימייל/הסיסמה הקיים.

תגובה לדוגמה

{
  "localId": "ZY1rJK0eYLg...",
  "email": "[user@example.com]",
  "displayName": "",
  "idToken": "[ID_TOKEN]",
  "registered": true,
  "refreshToken": "[REFRESH_TOKEN]",
  "expiresIn": "3600"
}

קודי שגיאה נפוצים

  • EMAIL_NOT_FOUND: אין רשומת משתמש התואמת למזהה זה. ייתכן שהמשתמש נמחק.
  • INVALID_PASSWORD: הסיסמה לא חוקית או שלמשתמש אין סיסמה.
  • USER_DISABLED: חשבון המשתמש הושבת על ידי מנהל מערכת.

היכנס בעילום שם

אתה יכול להיכנס למשתמש באופן אנונימי על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth signupNewUser .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
returnSecureToken בוליאני האם להחזיר תעודה מזהה ולרענן אסימון או לא. תמיד צריך להיות נכון.
מטען תגובה
שם הנכס סוּג תיאור
idToken חוּט אסימון Firebase Auth ID עבור המשתמש החדש שנוצר.
אימייל חוּט מכיוון שהמשתמש אנונימי, זה צריך להיות ריק.
refreshToken חוּט אסימון רענון של Firebase Auth עבור המשתמש החדש שנוצר.
פג תוקף ב חוּט מספר השניות שבהן פג תוקפו של אסימון הזיהוי.
זיהוי מקומי חוּט ה-uid של המשתמש החדש שנוצר.

בקשה לדוגמא

curl 'https://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]' \
-H 'Content-Type: application/json' --data-binary '{"returnSecureToken":true}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את אסימון Firebase ID ואסימון הרענון המשויכים למשתמש האנונימי.

תגובה לדוגמה

{
  "idToken": "[ID_TOKEN]",
  "email": "",
  "refreshToken": "[REFRESH_TOKEN]",
  "expiresIn": "3600",
  "localId": "Jws4SVjpT..."
}

קודי שגיאה נפוצים

  • OPERATION_NOT_ALLOWED: כניסה של משתמש אנונימי מושבתת עבור פרויקט זה.

היכנס עם אישורי OAuth

אתה יכול להיכנס למשתמש עם אישור OAuth על ידי הנפקת בקשת HTTP POST לנקודת הקצה Auth verifyAssertion .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
בקשהUri חוּט ה-URI אליו ה-IDP מפנה את המשתמש בחזרה.
postBody חוּט מכיל את האישורים של OAuth (אסימון מזהה או אסימון גישה) ומזהה הספק שמנפיק את האישור.
returnSecureToken בוליאני האם להחזיר תעודה מזהה ולרענן אסימון או לא. תמיד צריך להיות נכון.
returnIdpCredential בוליאני האם לאלץ את החזרת האישורים של OAuth על השגיאות הבאות: FEDERATED_USER_ID_ALREADY_LINKED ו-EMAIL_EXISTS.
מטען תגובה
שם הנכס סוּג תיאור
federatedId חוּט המזהה הייחודי מזהה את חשבון IdP.
providerId חוּט מזהה הספק המקושר (למשל "google.com" עבור ספק Google).
זיהוי מקומי חוּט ה-uid של המשתמש המאומת.
emailVerified בוליאני האם דוא"ל הכניסה מאומת.
אימייל חוּט האימייל של החשבון.
oauthIdToken חוּט אסימון הזיהוי של OIDC אם זמין.
oauthAccessToken חוּט אסימון הגישה של OAuth אם זמין.
oauthTokenSecret חוּט סוד אסימון OAuth 1.0 אם זמין.
rawUserInfo חוּט תגובת ה-JSON המחרוזת המכילה את כל נתוני ה-IDP התואמים לאישורי ה-OAuth שסופקו.
שם פרטי חוּט השם הפרטי של החשבון.
שם משפחה חוּט שם המשפחה של החשבון.
שם מלא חוּט השם המלא של החשבון.
הצג שם חוּט שם התצוגה של החשבון.
photoUrl חוּט כתובת האתר של התמונה עבור החשבון.
idToken חוּט אסימון Firebase Auth ID עבור המשתמש המאומת.
refreshToken חוּט אסימון רענון של Firebase Auth עבור המשתמש המאומת.
פג תוקף ב חוּט מספר השניות שבהן פג תוקפו של אסימון הזיהוי.
צריך אישור בוליאני האם כבר קיים חשבון אחר עם אותו אישור. המשתמש יצטרך להיכנס לחשבון המקורי ולאחר מכן לקשר אליו את האישור הנוכחי.

בקשה לדוגמה עם אסימון מזהה 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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את אסימון Firebase 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\", ...}"
}

בקשה לדוגמה עם אסימון גישה ל-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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את אסימון Firebase ID ואסימון הרענון המשויכים למשתמש המאומת.

תגובה לדוגמה עם אסימון גישה ל-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\", ...}"
}

בקשה לדוגמא עם אישורי 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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את אסימון Firebase ID ואסימון הרענון המשויכים למשתמש המאומת.

תגובה לדוגמה עם אישור OAuth 1.0 של Twitter

{
  "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\", ...}"
}

קודי שגיאה נפוצים

  • OPERATION_NOT_ALLOWED: הספק המתאים מושבת עבור פרויקט זה.
  • INVALID_IDP_RESPONSE: אישור האישור שסופק שגוי או שפג תוקפו.

אחזר ספקים לאימייל

אתה יכול לחפש את כל הספקים המשויכים לאימייל שצוין על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth createAuthUri .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:createAuthUri?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
מזהה חוּט כתובת האימייל של המשתמש
להמשיך אורי חוּט ה-URI אליו ה-IDP מפנה את המשתמש בחזרה. במקרה השימוש הזה, זו רק כתובת האתר הנוכחית.
מטען תגובה
שם הנכס סוּג תיאור
כל הספקים רשימת מחרוזות רשימת הספקים שאיתם המשתמש נכנס בעבר.
רשום בוליאני האם האימייל מיועד לחשבון קיים

בקשה לדוגמא

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]"}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את רשימת הספקים המשויכים לאימייל.

תגובה לדוגמה

{
  "allProviders": [
    "password",
    "google.com"
  ],
  "registered": true
}

קודי שגיאה נפוצים

  • INVALID_EMAIL: כתובת הדוא"ל מעוצבת בצורה גרועה.

שלח אימייל לאיפוס סיסמה

אתה יכול לשלוח אימייל לאיפוס סיסמה על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth getOobConfirmationCode .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:sendOobCode?key=[API_KEY]
כותרות אופציונליות
שם הנכס תיאור
X-Firebase-Locale קוד השפה המתאים למקום של המשתמש. מעבר זה יגרום לוקליזציה של דוא"ל איפוס הסיסמה שנשלח למשתמש.
בקש מטען גוף
שם הנכס סוּג תיאור
סוג בקשה חוּט סוג קוד OOB שיש להחזיר. צריך להיות "PASSWORD_RESET" לאיפוס סיסמה.
אימייל חוּט כתובת האימייל של המשתמש.
מטען תגובה
שם הנכס סוּג תיאור
אימייל חוּט כתובת האימייל של המשתמש.

בקשה לדוגמא

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]"}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK .

תגובה לדוגמה

{
 "email": "[user@example.com]"
}

קודי שגיאה נפוצים

  • EMAIL_NOT_FOUND: אין רשומת משתמש התואמת למזהה זה. ייתכן שהמשתמש נמחק.

אמת את קוד איפוס הסיסמה

אתה יכול לאמת קוד לאיפוס סיסמה על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth resetPassword .

שיטה: POST

סוג תוכן: application/json

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]
בקש מטען גוף
שם הנכס סוּג תיאור
oobCode חוּט קוד הפעולה של האימייל שנשלח לאימייל של המשתמש לצורך איפוס הסיסמה.
מטען תגובה
שם הנכס סוּג תיאור
אימייל חוּט כתובת האימייל של המשתמש.
סוג בקשה חוּט סוג קוד הפעולה של האימייל. צריך להיות "PASSWORD_RESET".

בקשה לדוגמא

curl 'https://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]' \
-H 'Content-Type: application/json' --data-binary '{"oobCode":"[PASSWORD_RESET_CODE]"}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK .

תגובה לדוגמה

{
  "email": "[user@example.com]",
  "requestType": "PASSWORD_RESET"
}

קודי שגיאה נפוצים

  • OPERATION_NOT_ALLOWED: הכניסה לסיסמה מושבתת עבור פרויקט זה.
  • EXPIRED_OOB_CODE: פג תוקף קוד הפעולה.
  • INVALID_OOB_CODE: קוד הפעולה אינו חוקי. זה יכול לקרות אם הקוד פגום, פג תוקפו או שכבר נעשה בו שימוש.

אשר את איפוס הסיסמה

אתה יכול להחיל שינוי לאיפוס סיסמה על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth resetPassword .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
oobCode חוּט קוד הפעולה של האימייל שנשלח לאימייל של המשתמש לצורך איפוס הסיסמה.
סיסמה חדשה חוּט הסיסמה החדשה של המשתמש.
מטען תגובה
שם הנכס סוּג תיאור
אימייל חוּט כתובת האימייל של המשתמש.
סוג בקשה חוּט סוג קוד הפעולה של האימייל. צריך להיות "PASSWORD_RESET".

בקשה לדוגמא

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]"}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK .

תגובה לדוגמה

{
  "email": "[user@example.com]",
  "requestType": "PASSWORD_RESET"
}

קודי שגיאה נפוצים

  • OPERATION_NOT_ALLOWED: הכניסה לסיסמה מושבתת עבור פרויקט זה.
  • EXPIRED_OOB_CODE: פג תוקף קוד הפעולה.
  • INVALID_OOB_CODE: קוד הפעולה אינו חוקי. זה יכול לקרות אם הקוד פגום, פג תוקפו או שכבר נעשה בו שימוש.
  • USER_DISABLED: חשבון המשתמש הושבת על ידי מנהל מערכת.

שנה כתובת אימייל

אתה יכול לשנות דוא"ל של משתמש על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth setAccountInfo .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
כותרות אופציונליות
שם הנכס תיאור
X-Firebase-Locale קוד השפה המתאים למקום של המשתמש. העברה זו תבצע לוקליזציה של ביטול השינוי בדוא"ל שנשלח למשתמש.
בקש מטען גוף
שם הנכס סוּג תיאור
idToken חוּט אסימון Firebase Auth ID עבור המשתמש.
אימייל חוּט האימייל החדש של המשתמש.
returnSecureToken בוליאני האם להחזיר תעודה מזהה ולרענן אסימון או לא.
מטען תגובה
שם הנכס סוּג תיאור
זיהוי מקומי חוּט ה-uid של המשתמש הנוכחי.
אימייל חוּט כתובת האימייל של המשתמש.
passwordHash חוּט גרסת Hash של הסיסמה.
providerUserInfo רשימה של אובייקטי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "providerId" ו-"federatedId".
idToken חוּט אסימון Firebase Auth ID חדש למשתמש.
refreshToken חוּט אסימון רענון של Firebase Auth.
פג תוקף ב חוּט מספר השניות שבהן פג תוקפו של אסימון הזיהוי.

בקשה לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את האסימון החדש של Firebase ID ואסימון הרענון המשויכים למשתמש.

תגובה לדוגמה

{
  "localId": "tRcfmLH7o2...",
  "email": "[user@example2.com]",
  "passwordHash": "...",
  "providerUserInfo": [
    {
      "providerId": "password",
      "federatedId": "[user@example2.com]"
    }
  ],
  "idToken": "[NEW_ID_TOKEN]",
  "refreshToken": "[NEW_REFRESH_TOKEN]",
  "expiresIn": "3600"
}

קודי שגיאה נפוצים

  • EMAIL_EXISTS: כתובת האימייל כבר נמצאת בשימוש על ידי חשבון אחר.
  • INVALID_ID_TOKEN: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.

שנה סיסמא

אתה יכול לשנות סיסמה של משתמש על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth setAccountInfo .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
idToken חוּט אסימון Firebase Auth ID עבור המשתמש.
סיסמה חוּט הסיסמה החדשה של המשתמש.
returnSecureToken בוליאני האם להחזיר תעודה מזהה ולרענן אסימון או לא.
מטען תגובה
שם הנכס סוּג תיאור
זיהוי מקומי חוּט ה-uid של המשתמש הנוכחי.
אימייל חוּט כתובת האימייל של המשתמש.
passwordHash חוּט גרסת Hash של סיסמה.
providerUserInfo רשימה של אובייקטי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "providerId" ו-"federatedId".
idToken חוּט אסימון Firebase Auth ID חדש למשתמש.
refreshToken חוּט אסימון רענון של Firebase Auth.
פג תוקף ב חוּט מספר השניות שבהן פג תוקפו של אסימון הזיהוי.

בקשה לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את האסימון החדש של Firebase ID ואסימון הרענון המשויכים למשתמש.

תגובה לדוגמה

{
  "localId": "tRcfmLH7o2...",
  "email": "[user@example.com]",
  "passwordHash": "...",
  "providerUserInfo": [
    {
      "providerId": "password",
      "federatedId": "[user@example.com]"
    }
  ],
  "idToken": "[NEW_ID_TOKEN]",
  "refreshToken": "[NEW_REFRESH_TOKEN]",
  "expiresIn": "3600"
}

קודי שגיאה נפוצים

  • INVALID_ID_TOKEN: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • WEAK_PASSWORD: הסיסמה חייבת להיות באורך של 6 תווים או יותר.

עדכן פרופיל

אתה יכול לעדכן פרופיל משתמש (שם תצוגה / כתובת אתר של תמונה) על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth setAccountInfo .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
idToken חוּט אסימון Firebase Auth ID עבור המשתמש.
הצג שם חוּט שם התצוגה החדש של המשתמש.
photoUrl חוּט כתובת האתר החדשה של התמונה של המשתמש.
deleteAttribute רשימת מחרוזות רשימת המאפיינים למחיקה, "DISPLAY_NAME" או "PHOTO_URL". זה יבטל את הערכים האלה.
returnSecureToken בוליאני האם להחזיר תעודה מזהה ולרענן אסימון או לא.
מטען תגובה
שם הנכס סוּג תיאור
זיהוי מקומי חוּט ה-uid של המשתמש הנוכחי.
אימייל חוּט כתובת האימייל של המשתמש.
הצג שם חוּט שם התצוגה החדש של המשתמש.
photoUrl חוּט כתובת האתר החדשה של התמונה של המשתמש.
passwordHash חוּט גרסת Hash של סיסמה.
providerUserInfo רשימה של אובייקטי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "providerId" ו-"federatedId".
idToken חוּט אסימון Firebase Auth ID חדש למשתמש.
refreshToken חוּט אסימון רענון של Firebase Auth.
פג תוקף ב חוּט מספר השניות שבהן פג תוקפו של אסימון הזיהוי.

בקשה לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK .

תגובה לדוגמה

{
  "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"
}

קודי שגיאה נפוצים

  • INVALID_ID_TOKEN: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.

קבל נתוני משתמש

אתה יכול לקבל נתונים של משתמש על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth getAccountInfo .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:lookup?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
idToken חוּט אסימון ה-Firebase ID של החשבון.
מטען תגובה
שם הנכס סוּג תיאור
משתמשים רשימה של אובייקטי JSON החשבון המשויך לאסימון ה-Firebase ID הנתון. בדוק למטה לפרטים נוספים.
עומס תגובות (תוכן מערך users )
שם הנכס סוּג תיאור
זיהוי מקומי חוּט ה-uid של המשתמש הנוכחי.
אימייל חוּט האימייל של החשבון.
emailVerified בוליאני האם האימייל של החשבון אומת או לא.
הצג שם חוּט שם התצוגה של החשבון.
providerUserInfo רשימת אובייקטי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "providerId" ו-"federatedId".
photoUrl חוּט כתובת האתר של התמונה עבור החשבון.
passwordHash חוּט גרסת Hash של סיסמה.
PasswordUpdatedAt לְהַכפִּיל חותמת הזמן, באלפיות שניות, שסיסמת החשבון שונתה לאחרונה.
תקףמאז חוּט חותמת הזמן, בשניות, המסמנת גבול, שלפניה אסימון מזהה Firebase נחשב מבוטל.
נָכֶה בוליאני בין אם החשבון מושבת או לא.
lastLoginAt חוּט חותמת הזמן, באלפיות שניות, שבה החשבון התחבר לאחרונה.
נוצר ב חוּט חותמת הזמן, באלפיות שניות, שבה נוצר החשבון.
customAuth בוליאני האם החשבון מאומת על ידי המפתח.

בקשה לדוגמא

curl 'https://identitytoolkit.googleapis.com/v1/accounts:lookup?key=[API_KEY]' \
-H 'Content-Type: application/json' --data-binary '{"idToken":"[FIREBASE_ID_TOKEN]"}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה תכיל את כל פרטי המשתמש המשויכים לחשבון.

תגובה לדוגמה

{
  "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
    }
  ]
}

קודי שגיאה נפוצים

  • INVALID_ID_TOKEN: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • USER_NOT_FOUND: אין רשומת משתמש התואמת למזהה זה. ייתכן שהמשתמש נמחק.

אתה יכול לקשר דוא"ל/סיסמה למשתמש נוכחי על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth setAccountInfo .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
idToken חוּט אסימון Firebase ID של החשבון שאליו אתה מנסה לקשר את האישור.
אימייל חוּט האימייל לקישור לחשבון.
סיסמה חוּט הסיסמה החדשה של החשבון.
returnSecureToken חוּט האם להחזיר תעודה מזהה ולרענן אסימון או לא. תמיד צריך להיות נכון.
מטען תגובה
שם הנכס סוּג תיאור
זיהוי מקומי חוּט ה-uid של המשתמש הנוכחי.
אימייל חוּט האימייל של החשבון.
הצג שם חוּט שם התצוגה של החשבון.
photoUrl חוּט כתובת האתר של התמונה עבור החשבון.
passwordHash חוּט גרסת Hash של סיסמה.
providerUserInfo רשימה של אובייקטי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "providerId" ו-"federatedId".
emailVerified בוליאני האם האימייל של החשבון אומת או לא.
idToken חוּט אסימון Firebase Auth ID חדש למשתמש.
refreshToken חוּט אסימון רענון של Firebase Auth.
פג תוקף ב חוּט מספר השניות שבהן פג תוקפו של אסימון הזיהוי.

בקשה לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את אסימון Firebase ID ואסימון הרענון המשויכים למשתמש המאומת.

תגובה לדוגמה

{
  "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
}

קודי שגיאה נפוצים

  • CREDENTIAL_TOO_OLD_LOGIN_AGAIN: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • TOKEN_EXPIRED: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • INVALID_ID_TOKEN: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • WEAK_PASSWORD: הסיסמה חייבת להיות באורך של 6 תווים או יותר.

אתה יכול לקשר אישור OAuth למשתמש על ידי הנפקת בקשת HTTP POST לנקודת הקצה Auth verifyAssertion .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
idToken חוּט אסימון Firebase ID של החשבון שאליו אתה מנסה לקשר את האישור.
בקשהUri חוּט ה-URI אליו ה-IDP מפנה את המשתמש בחזרה.
postBody חוּט מכיל את האישורים של OAuth (אסימון מזהה או אסימון גישה) ומזהה הספק שמנפיק את האישור.
returnSecureToken בוליאני האם להחזיר תעודה מזהה ולרענן אסימון או לא. תמיד צריך להיות נכון.
returnIdpCredential בוליאני האם לאלץ את החזרת האישורים של OAuth על השגיאות הבאות: FEDERATED_USER_ID_ALREADY_LINKED ו-EMAIL_EXISTS.
מטען תגובה
שם הנכס סוּג תיאור
federatedId חוּט המזהה הייחודי מזהה את חשבון IdP.
providerId חוּט מזהה הספק המקושר (למשל "google.com" עבור ספק Google).
זיהוי מקומי חוּט ה-uid של המשתמש המאומת.
emailVerified בוליאני האם דוא"ל הכניסה מאומת.
אימייל חוּט האימייל של החשבון.
oauthIdToken חוּט אסימון הזיהוי של OIDC אם זמין.
oauthAccessToken חוּט אסימון הגישה של OAuth אם זמין.
oauthTokenSecret חוּט סוד אסימון OAuth 1.0 אם זמין.
rawUserInfo חוּט תגובת ה-JSON המחרוזת המכילה את כל נתוני ה-IDP התואמים לאישורי ה-OAuth שסופקו.
שם פרטי חוּט השם הפרטי של החשבון.
שם משפחה חוּט שם המשפחה של החשבון.
שם מלא חוּט השם המלא של החשבון.
הצג שם חוּט שם התצוגה של החשבון.
photoUrl חוּט כתובת האתר של התמונה עבור החשבון.
idToken חוּט אסימון Firebase Auth ID עבור המשתמש המאומת.
refreshToken חוּט אסימון רענון של Firebase Auth עבור המשתמש המאומת.
פג תוקף ב חוּט מספר השניות שבהן פג תוקפו של אסימון הזיהוי.

בקשה לדוגמה עם אסימון מזהה 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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את אסימון Firebase 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\", ...}"
}

בקשה לדוגמה עם אסימון גישה ל-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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את אסימון Firebase ID ואסימון הרענון המשויכים למשתמש המאומת.

תגובה לדוגמה עם אסימון גישה ל-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\", ...}"
}

בקשה לדוגמא עם אישורי 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}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK . התגובה מכילה את אסימון Firebase ID ואסימון הרענון המשויכים למשתמש המאומת.

תגובה לדוגמה עם אישור OAuth 1.0 של Twitter

{
  "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\", ...}"
}

קודי שגיאה נפוצים

  • OPERATION_NOT_ALLOWED: הספק המתאים מושבת עבור פרויקט זה.
  • INVALID_IDP_RESPONSE: אישור האישור שסופק שגוי או שפג תוקפו.
  • INVALID_ID_TOKEN: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • EMAIL_EXISTS: כתובת האימייל כבר נמצאת בשימוש על ידי חשבון אחר.
  • FEDERATED_USER_ID_ALREADY_LINKED: אישור זה כבר משויך לחשבון משתמש אחר.

אתה יכול לבטל קישור בין ספק למשתמש נוכחי על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth setAccountInfo .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
idToken חוּט אסימון ה-Firebase ID של החשבון.
deleteProvider רשימת מחרוזות רשימת מזהי הספקים שיש לבטל קישור, למשל: 'google.com', 'סיסמה' וכו'.
מטען תגובה
שם הנכס סוּג תיאור
זיהוי מקומי חוּט ה-uid של המשתמש הנוכחי.
אימייל חוּט האימייל של החשבון.
הצג שם חוּט שם התצוגה של החשבון.
photoUrl חוּט כתובת האתר של התמונה עבור החשבון.
passwordHash חוּט גרסת Hash של הסיסמה.
providerUserInfo רשימה של אובייקטי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "providerId" ו-"federatedId".
emailVerified בוליאני האם האימייל של החשבון אומת או לא.

בקשה לדוגמא

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]"]}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK .

תגובה לדוגמה

{
  "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"
}

קודי שגיאה נפוצים

  • INVALID_ID_TOKEN: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.

שלח אימות בדוא"ל

אתה יכול לשלוח אימות דוא"ל עבור המשתמש הנוכחי על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth getOobConfirmationCode .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:sendOobCode?key=[API_KEY]
כותרות אופציונליות
שם הנכס תיאור
X-Firebase-Locale קוד השפה המתאים למקום של המשתמש. מעבר זה יגרום לוקליזציה של אימות הדוא"ל שנשלח למשתמש.
בקש מטען גוף
שם הנכס סוּג תיאור
סוג בקשה חוּט סוג קוד האישור שיש לשלוח. תמיד צריך להיות "VERIFY_EMAIL".
idToken חוּט אסימון Firebase ID של המשתמש לאימות.
מטען תגובה
שם הנכס סוּג תיאור
אימייל חוּט האימייל של החשבון.

בקשה לדוגמא

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]"}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK .

תגובה לדוגמה

{
  "email": "user@example.com"
}

קודי שגיאה נפוצים

  • INVALID_ID_TOKEN: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • USER_NOT_FOUND: אין רשומת משתמש התואמת למזהה זה. ייתכן שהמשתמש נמחק.

אשר את אימות האימייל

אתה יכול לאשר קוד אימות בדוא"ל על ידי הנפקת בקשת HTTP POST לנקודת הקצה Auth setAccountInfo .

שיטה: POST

סוג תוכן: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
oobCode חוּט קוד הפעולה שנשלח לאימייל של המשתמש לצורך אימות דוא"ל.
מטען תגובה
שם הנכס סוּג תיאור
אימייל חוּט האימייל של החשבון.
הצג שם חוּט שם התצוגה של החשבון.
photoUrl חוּט כתובת האתר של התמונה עבור החשבון.
passwordHash חוּט ה-hash של הסיסמה.
providerUserInfo רשימה של אובייקטי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "providerId" ו-"federatedId".
emailVerified בוליאני האם האימייל של החשבון אומת או לא.

בקשה לדוגמא

curl 'https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]' \
-H 'Content-Type: application/json' --data-binary '{"oobCode":"[VERIFICATION_CODE]"}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK .

תגובה לדוגמה

{
  "localId": "FhyStE...",
  "email": "user@example.com",
  "passwordHash": "...",
  "providerUserInfo": [
    {
      "providerId": "password",
      "federatedId": "user@example.com"
    }
  ]
}

קודי שגיאה נפוצים

  • EXPIRED_OOB_CODE: פג תוקף קוד הפעולה.
  • INVALID_OOB_CODE: קוד הפעולה אינו חוקי. זה יכול לקרות אם הקוד פגום, פג תוקפו או שכבר נעשה בו שימוש.
  • USER_DISABLED: חשבון המשתמש הושבת על ידי מנהל מערכת.
  • EMAIL_NOT_FOUND: אין רשומת משתמש התואמת למזהה זה. ייתכן שהמשתמש נמחק.

מחק חשבון

אתה יכול למחוק משתמש נוכחי על ידי הוצאת בקשת HTTP POST לנקודת הקצה Auth deleteAccount .

שיטה: POST

סוג תוכן: application/json

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:delete?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
idToken חוּט אסימון Firebase ID של המשתמש שיש למחוק.
מטען תגובה
שם הנכס סוּג תיאור

בקשה לדוגמא

curl 'https://identitytoolkit.googleapis.com/v1/accounts:delete?key=[API_KEY]' \
-H 'Content-Type: application/json' --data-binary '{"idToken":"[FIREBASE_ID_TOKEN]"}'

בקשה מוצלחת מסומנת על ידי קוד מצב HTTP 200 OK .

קודי שגיאה נפוצים

  • INVALID_ID_TOKEN: האישור של המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • USER_NOT_FOUND: אין רשומת משתמש התואמת למזהה זה. ייתכן שהמשתמש נמחק.

אמולטור אימות Firebase

חבילת האמולטור המקומית של Firebase כוללת אמולטור אימות , שניתן להשתמש בו ליצירת אב טיפוס מקומי ובדיקה של זרימות אימות. האמולטור חושף את נקודות הקצה הבאות של REST.

נקה חשבונות משתמש

הסר את כל החשבונות בפרויקט שצוין, ללא קשר למדינה.

שיטה: מחק

נקודת קצה

שים לב ש 9099 היא יציאת ברירת המחדל עבור אמולטור האימות. בדוק את פלט המסוף עבור היציאה בפועל שבה נעשה שימוש.

http://localhost:9099/emulator/v1/projects/{project-id}/accounts

קבל תצורת אמולטור

קבל תצורה ספציפית של אמולטור לפרויקט שצוין.

שיטה: קבל

נקודת קצה

שים לב ש- 9099 הוא יציאת ברירת המחדל עבור אמולטור האימות. בדוק את פלט המסוף עבור היציאה בפועל המשמשת.

http://localhost:9099/emulator/v1/projects/{project-id}/config
עומס תגובה
שם הנכס סוּג תיאור
להתחבר לְהִתְנַגֵד אובייקט תצורת סימן המכיל מקש יחיד, allowDuplicateEmails (בוליאני).

תצורת אמולטור תיקון

עדכן תצורה ספציפית של אמולטור לפרויקט שצוין.

שיטה: תיקון

נקודת קצה

שים לב ש- 9099 הוא יציאת ברירת המחדל עבור אמולטור האימות. בדוק את פלט המסוף עבור היציאה בפועל המשמשת.

סוג תוכן: יישום/JSON

http://localhost:9099/emulator/v1/projects/{project-id}/config
בקש עומס גוף
שם הנכס סוּג תיאור
להתחבר לְהִתְנַגֵד אובייקט תצורת סימן רצוי עם מקש יחיד, allowDuplicateEmails (בוליאני).
עומס תגובה
שם הנכס סוּג תיאור
להתחבר לְהִתְנַגֵד אובייקט התצורה של סימן לאחר הקנה עם מקש יחיד, allowDuplicateEmails (בוליאני).

אחזר קודי אימות מחוץ ללהקה

אם זורם האימות שאתה בודק יפיק בדרך כלל קודי פס (למשל, קודי אימות דוא"ל, קודי איפוס סיסמא), האמולטור מאחסן קודים כאלה באופן פנימי עד להשתמש בהם.

שיטה: קבל

נקודת קצה

שים לב ש- 9099 הוא יציאת ברירת המחדל עבור אמולטור האימות. בדוק את פלט המסוף עבור היציאה בפועל המשמשת.

http://localhost:9099/emulator/v1/projects/{project-id}/oobCodes
עומס תגובה
שם הנכס סוּג תיאור
OOBCODES מַעֲרָך מערך של אובייקטים המכילים פרטים על כל קודי האישור הממתינים. כל אובייקט מכיל email (מחרוזת), oobCode (מחרוזת), oobLink (מחרוזת) ו- requestType (מחרוזת)

אחזר קודי אימות SMS

אם אתה בודק זרימת אימות טלפון/SMS, האמולטור מאחסן קודי SMS כאלה באופן פנימי עד להשתמש בהם.

שיטה: קבל

נקודת קצה

שים לב ש- 9099 הוא יציאת ברירת המחדל עבור אמולטור האימות. בדוק את פלט המסוף עבור היציאה בפועל המשמשת.

http://localhost:9099/emulator/v1/projects/{project-id}/verificationCodes
עומס תגובה
שם הנכס סוּג תיאור
אימות קודי מַעֲרָך מערך של אובייקטים המכילים פרטים של כל קודי האימות הממתינים. כל אובייקט מכיל phoneNumber (מחרוזת) ו- sessionCode (מחרוזת).

תגובת שגיאה

פורמט תגובת שגיאה

בכל עת שתוחזר שגיאה משרת Backend עבור כל אחד מממשקי ה- API שלמעלה, לתגובה תהיה הפורמט הבא.

תגובה לדוגמא

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "invalid",
        "message": "CREDENTIAL_TOO_OLD_LOGIN_AGAIN"
      }
    ],
    "code": 400,
    "message": "CREDENTIAL_TOO_OLD_LOGIN_AGAIN"
  }
}

קוד השגיאה מתקבל משדה ההודעה. כל קודי השגיאה לעיל מתייחסים לתוכן שדה ההודעה.

,

שימוש ב- API

אתה יכול לשאול את ה- Authbase Authend באמצעות API של REST. זה יכול לשמש לפעולות שונות כגון יצירת משתמשים חדשים, חתימה על קיימים ועריכה או מחיקה של משתמשים אלה.

לאורך כל מסמך זה, API_KEY מתייחס למפתח ה- API של האינטרנט, אותו ניתן להשיג בדף הגדרות הפרויקט במסוף הניהול שלך.

החלף אסימון מותאם אישית למזהה ולרענן אסימון

באפשרותך להחליף אסימון Auth מותאם אישית עבור תעודת זהות ולרענן אסימון על ידי הנפקת בקשת POST HTTP ל- Auth verifyCustomToken Point.

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:signInWithCustomToken?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
אֲסִימוֹן חוּט אסימון מותאם אישית של Auth Firebase ממנו ניתן ליצור זוג אסימון מזהה ורענן.
ReturnSecuretoken בוליאני בין אם להחזיר תעודת זהות ולרענן אסימון או לא. תמיד צריך להיות נכון.
עומס תגובה
שם הנכס סוּג תיאור
idtoken חוּט אסימון מזהה של Auth Firebase שנוצר מהאסימון המותאם אישית שסופק.
אושר רענן חוּט אסימון רענון של Auth Firebase שנוצר מהאסימון המותאם אישית המסופק.
פג תוקף ב חוּט מספר השניות בהן תוקף אסימון המזהה פג.

בקשת לדוגמא

curl 'https://identitytoolkit.googleapis.com/v1/accounts:signInWithCustomToken?key=[API_KEY]' \
-H 'Content-Type: application/json' \
--data-binary '{"token":"[CUSTOM_TOKEN]","returnSecureToken":true}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase ID ואסימון רענון המשויך לאסימון המותאם אישית.

תגובה לדוגמא

{
  "idToken": "[ID_TOKEN]",
  "refreshToken": "[REFRESH_TOKEN]",
  "expiresIn": "3600"
}

קודי שגיאה נפוצים

  • Invalid_Custom_Token: פורמט האסימון המותאם אישית אינו נכון או שהאסימון אינו חוקי מסיבה כלשהי (למשל פג תוקף, חתימה לא חוקית וכו ')
  • Redantiment_mismatch: האסימון המותאם אישית מתאים לפרויקט Firebase אחר.

החלף אסימון רענון לאסימון תעודת זהות

אתה יכול לרענן אסימון מזהה Firebase על ידי הנפקת בקשת POST HTTP ל- securetoken.googleapis.com נקודת הקצה.

שיטה: הודעה

סוג תוכן: יישום/x-www-form-urlencoded

נקודת קצה
https://securetoken.googleapis.com/v1/token?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
Grant_Type חוּט סוג המענק של אסימון הרענון, תמיד "רענן_טוקן".
רענן_טוקן חוּט אסימון מרענן של Auth Firebase.
עומס תגובה
שם הנכס סוּג תיאור
פג תוקף ב חוּט מספר השניות בהן תוקף אסימון המזהה פג.
Token_Type חוּט סוג אסימון הרענון, תמיד "נושא".
רענן_טוקן חוּט אסימון הרענון של Auth Firebase המסופק בבקשה או אסימון רענון חדש.
id_token חוּט אסימון מזהה של Auth Auth.
זהות המשתמש חוּט ה- UID התואם לאסימון ה- ID שסופק.
project_id חוּט מזהה פרויקט Firebase שלך.

בקשת לדוגמא

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]'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase Id והמרענן החדש.

תגובה לדוגמא

{
  "expires_in": "3600",
  "token_type": "Bearer",
  "refresh_token": "[REFRESH_TOKEN]",
  "id_token": "[ID_TOKEN]",
  "user_id": "tRcfmLH7o2XrNELi...",
  "project_id": "1234567890"
}

קודי שגיאה נפוצים

  • TOKEN_EXPIER: אישור המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • User_disabled: חשבון המשתמש הושבת על ידי מנהל מערכת.
  • User_not_found: המשתמש המתאים לאסימון הרענון לא נמצא. סביר להניח שהמשתמש נמחק.
  • מפתח API אינו תקף. אנא העבירו מפתח API תקף. (מפתח API לא חוקי המסופק)
  • Invalid_refresh_token: מסופק אסימון רענון לא חוקי.
  • העומס הלא חוקי של JSON שהתקבל. שם לא ידוע \ "refresh_tokens \": לא ניתן לאגד את פרמטר השאילתה. לא ניתן היה למצוא שדה 'reghesh_tokens' בהודעת בקשה.
  • Invalid_grant_type: סוג המענק שצוין אינו חוקי.
  • חסר_רף_טוקן: אין אסימון לרענון.
  • Project_number_mismatch: מספר הפרויקט של אסימון הרענון אינו תואם לזה של מפתח ה- API המסופק.

הירשם באמצעות דוא"ל / סיסמה

באפשרותך ליצור משתמש חדש בדוא"ל וסיסמא על ידי הנפקת בקשת POST HTTP לנקודת הקצה של ה- signupNewUser .

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
אימייל חוּט הדוא"ל למשתמש ליצור.
סיסמה חוּט הסיסמה של המשתמש ליצור.
ReturnSecuretoken בוליאני בין אם להחזיר תעודת זהות ולרענן אסימון או לא. תמיד צריך להיות נכון.
עומס תגובה
שם הנכס סוּג תיאור
idtoken חוּט אסימון מזהה Auth Firebase עבור המשתמש החדש שנוצר.
אימייל חוּט הדוא"ל למשתמש שנוצר לאחרונה.
אושר רענן חוּט אסימון מרענן של Auth Firebase עבור המשתמש החדש שנוצר.
פג תוקף ב חוּט מספר השניות בהן תוקף אסימון המזהה פג.
מקומי חוּט ה- UID של המשתמש החדש שנוצר.

בקשת לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase ID ואסימון רענון המשויך לחשבון החדש.

תגובה לדוגמא

{
  "idToken": "[ID_TOKEN]",
  "email": "[user@example.com]",
  "refreshToken": "[REFRESH_TOKEN]",
  "expiresIn": "3600",
  "localId": "tRcfmLH7..."
}

קודי שגיאה נפוצים

  • דוא"ל_EXISTS: כתובת הדוא"ל כבר נמצאת בשימוש על ידי חשבון אחר.
  • הפעלה_נוט_ילוי: כניסה לסיסמה מושבתת לפרויקט זה.
  • Tiore_many_attempts_try_later: חסמנו את כל הבקשות מהמכשיר הזה בגלל פעילות חריגה. נסה שוב מאוחר יותר.

היכנס באמצעות דוא"ל / סיסמה

אתה יכול להירשם למשתמש עם דוא"ל וסיסמא על ידי הנפקת בקשת POST HTTP לנקודת הקצה של verifyPassword .

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
אימייל חוּט הדוא"ל שהמשתמש נכנס אליו.
סיסמה חוּט הסיסמה לחשבון.
ReturnSecuretoken בוליאני בין אם להחזיר תעודת זהות ולרענן אסימון או לא. תמיד צריך להיות נכון.
עומס תגובה
שם הנכס סוּג תיאור
idtoken חוּט אסימון מזהה Auth Firebase עבור המשתמש המאומת.
אימייל חוּט הדוא"ל למשתמש המאומת.
אושר רענן חוּט אסימון מרענן של Auth Firebase עבור המשתמש המאומת.
פג תוקף ב חוּט מספר השניות בהן תוקף אסימון המזהה פג.
מקומי חוּט ה- UID של המשתמש המאומת.
רשום בוליאני האם הדוא"ל מיועד לחשבון קיים.

בקשת לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase ID ואסימון רענון המשויך לחשבון הדוא"ל/סיסמא הקיים.

תגובה לדוגמא

{
  "localId": "ZY1rJK0eYLg...",
  "email": "[user@example.com]",
  "displayName": "",
  "idToken": "[ID_TOKEN]",
  "registered": true,
  "refreshToken": "[REFRESH_TOKEN]",
  "expiresIn": "3600"
}

קודי שגיאה נפוצים

  • דוא"ל_נוט_אונד: אין רשומת משתמש המתאימה למזהה זה. ייתכן שהמשתמש נמחק.
  • Invalid_Password: הסיסמה אינה חוקית או שלמשתמש אין סיסמה.
  • User_disabled: חשבון המשתמש הושבת על ידי מנהל מערכת.

היכנס בעילום שם

אתה יכול להירשם למשתמש באופן אנונימי על ידי הנפקת בקשת POST HTTP לנקודת הקצה של ה- signupNewUser .

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
ReturnSecuretoken בוליאני בין אם להחזיר תעודת זהות ולרענן אסימון או לא. תמיד צריך להיות נכון.
עומס תגובה
שם הנכס סוּג תיאור
idtoken חוּט אסימון מזהה Auth Firebase עבור המשתמש החדש שנוצר.
אימייל חוּט מכיוון שהמשתמש אנונימי, זה אמור להיות ריק.
אושר רענן חוּט אסימון מרענן של Auth Firebase עבור המשתמש החדש שנוצר.
פג תוקף ב חוּט מספר השניות בהן תוקף אסימון המזהה פג.
מקומי חוּט ה- UID של המשתמש החדש שנוצר.

בקשת לדוגמא

curl 'https://identitytoolkit.googleapis.com/v1/accounts:signUp?key=[API_KEY]' \
-H 'Content-Type: application/json' --data-binary '{"returnSecureToken":true}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase ID ואסימון רענון המשויך למשתמש האנונימי.

תגובה לדוגמא

{
  "idToken": "[ID_TOKEN]",
  "email": "",
  "refreshToken": "[REFRESH_TOKEN]",
  "expiresIn": "3600",
  "localId": "Jws4SVjpT..."
}

קודי שגיאה נפוצים

  • הפעלה_נוט_ילוי: כניסה למשתמש אנונימית מושבתת לפרויקט זה.

היכנס עם אישור OAuth

אתה יכול להירשם למשתמש עם אישור OAuth על ידי הנפקת בקשת POST HTTP לנקודת הקצה של verifyAssertion .

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
בקשה חוּט ה- URI אליו ה- IDP מפנה את המשתמש בחזרה.
לאחר מכן חוּט מכיל את תעודת OAuth (אסימון תעודת זהות או אסימון גישה) ומזהה ספק שמנפיק את האישורים.
ReturnSecuretoken בוליאני בין אם להחזיר תעודת זהות ולרענן אסימון או לא. תמיד צריך להיות נכון.
RETURNIDPREDENTION בוליאני האם לאלץ את החזרת תעודת OAuth על השגיאות הבאות: federated_user_id_already_linked ו- imail_exists.
עומס תגובה
שם הנכס סוּג תיאור
FederatedId חוּט המזהה הייחודי מזהה את חשבון IDP.
Providerid חוּט מזהה הספק המקושר (למשל "Google.com" עבור ספק Google).
מקומי חוּט ה- UID של המשתמש המאומת.
Imagiverified בוליאני האם אומת הדוא"ל של הכניסה מאומת.
אימייל חוּט דוא"ל החשבון.
Oauthidtoken חוּט אסימון ה- OIDC ID אם זמין.
OauthaccessToken חוּט אסימון ה- OAuth Access אם זמין.
Oauthtokensecret חוּט סוד האסימון OAuth 1.0 אם זמין.
RAWUSERINFO חוּט תגובת ה- JSON המיתרים המכילה את כל נתוני ה- IDP המתאימים לתעודת OAUTH המסופקת.
שם פרטי חוּט השם הפרטי לחשבון.
שם משפחה חוּט שם המשפחה של החשבון.
שם מלא חוּט השם המלא לחשבון.
הצג שם חוּט שם התצוגה של החשבון.
פוטורל חוּט כתובת האתר של הצילום לחשבון.
idtoken חוּט אסימון מזהה Auth Firebase עבור המשתמש המאומת.
אושר רענן חוּט אסימון מרענן של Auth Firebase עבור המשתמש המאומת.
פג תוקף ב חוּט מספר השניות בהן תוקף אסימון המזהה פג.
אישור צורך בוליאני האם כבר קיים חשבון אחר עם אותו תעודה. המשתמש יצטרך להיכנס לחשבון המקורי ואז לקשר אליו את האישור הנוכחי.

בקשת לדוגמא עם אסימון מזהה 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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase 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\", ...}"
}

בקשת לדוגמא עם אסימון גישה ל- 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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase Id ואסימון הרענון המשויך למשתמש המאומת.

תגובה לדוגמא עם אסימון גישה של 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\", ...}"
}

בקשת לדוגמא עם תעודת טוויטר 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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase Id ואסימון הרענון המשויך למשתמש המאומת.

תגובה לדוגמא עם תעודת טוויטר 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\", ...}"
}

קודי שגיאה נפוצים

  • Operation_Not_Allowed: הספק המתאים מושבת לפרויקט זה.
  • Invalid_idp_response: אישור ה- Auth המסופק אינו מוטל או שפג תוקפו.

להביא ספקי דוא"ל

אתה יכול להסתכל על כל הספקים המשויכים לדוא"ל שצוין על ידי הנפקת בקשת POST HTTP ל- Auth createAuthUri נקודת הקצה.

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:createAuthUri?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
מזהה חוּט כתובת הדוא"ל של המשתמש
המשך חוּט ה- URI אליו ה- IDP מפנה את המשתמש בחזרה. במקרה זה, זהו רק כתובת האתר הנוכחית.
עומס תגובה
שם הנכס סוּג תיאור
כל הסובלים רשימת המיתרים רשימת הספקים שהמשתמש נכנס אליו בעבר.
רשום בוליאני האם הדוא"ל מיועד לחשבון קיים

בקשת לדוגמא

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]"}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את רשימת הספקים הקשורים לדוא"ל.

תגובה לדוגמא

{
  "allProviders": [
    "password",
    "google.com"
  ],
  "registered": true
}

קודי שגיאה נפוצים

  • Invalid_email: כתובת הדוא"ל מעוצבת בצורה לא טובה.

שלח אימייל לאיפוס סיסמה

באפשרותך לשלוח דוא"ל לאפס סיסמה על ידי הנפקת בקשת POST HTTP ל- Auth getOobConfirmationCode Point.

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:sendOobCode?key=[API_KEY]
כותרות אופציונליות
שם הנכס תיאור
X-firebase-locale קוד השפה המתאים לאזור המשתמש. העברת זה ייקל את הדוא"ל לאיפוס הסיסמה שנשלח למשתמש.
בקש עומס גוף
שם הנכס סוּג תיאור
סוג בקשה חוּט סוג קוד ה- OOB לחזור. צריך להיות "סיסמא_שט" לאיפוס סיסמא.
אימייל חוּט כתובת הדוא"ל של המשתמש.
עומס תגובה
שם הנכס סוּג תיאור
אימייל חוּט כתובת הדוא"ל של המשתמש.

בקשת לדוגמא

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]"}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK .

תגובה לדוגמא

{
 "email": "[user@example.com]"
}

קודי שגיאה נפוצים

  • דוא"ל_נוט_אונד: אין רשומת משתמש המתאימה למזהה זה. ייתכן שהמשתמש נמחק.

אמת את קוד איפוס הסיסמה

באפשרותך לאמת קוד איפוס סיסמא על ידי הנפקת בקשת POST HTTP לנקודת הקצה של resetPassword .

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
OOBCODE חוּט קוד הפעולה של הדוא"ל שנשלח לדוא"ל המשתמש לאיפוס הסיסמה.
עומס תגובה
שם הנכס סוּג תיאור
אימייל חוּט כתובת הדוא"ל של המשתמש.
סוג בקשה חוּט סוג קוד הפעולה בדוא"ל. צריך להיות "סיסמא_שט".

בקשת לדוגמא

curl 'https://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]' \
-H 'Content-Type: application/json' --data-binary '{"oobCode":"[PASSWORD_RESET_CODE]"}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK .

תגובה לדוגמא

{
  "email": "[user@example.com]",
  "requestType": "PASSWORD_RESET"
}

קודי שגיאה נפוצים

  • הפעלה_נוט_ילוי: כניסה לסיסמה מושבתת לפרויקט זה.
  • פג תוקף_או_קוד: קוד הפעולה פג.
  • Invalid_oob_code: קוד הפעולה אינו חוקי. זה יכול לקרות אם הקוד מוטל, פג או כבר נעשה בו שימוש.

אשר איפוס סיסמא

באפשרותך להחיל שינוי איפוס סיסמה על ידי הנפקת בקשת POST HTTP לנקודת הקצה של resetPassword .

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:resetPassword?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
OOBCODE חוּט קוד הפעולה של הדוא"ל שנשלח לדוא"ל המשתמש לאיפוס הסיסמה.
סיסמה חדשה חוּט הסיסמה החדשה של המשתמש.
עומס תגובה
שם הנכס סוּג תיאור
אימייל חוּט כתובת הדוא"ל של המשתמש.
סוג בקשה חוּט סוג קוד הפעולה בדוא"ל. צריך להיות "סיסמא_שט".

בקשת לדוגמא

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]"}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK .

תגובה לדוגמא

{
  "email": "[user@example.com]",
  "requestType": "PASSWORD_RESET"
}

קודי שגיאה נפוצים

  • הפעלה_נוט_ילוי: כניסה לסיסמה מושבתת לפרויקט זה.
  • פג תוקף_או_קוד: קוד הפעולה פג.
  • Invalid_oob_code: קוד הפעולה אינו חוקי. זה יכול לקרות אם הקוד מוטל, פג או כבר נעשה בו שימוש.
  • User_disabled: חשבון המשתמש הושבת על ידי מנהל מערכת.

שנה כתובת אימייל

אתה יכול לשנות את דוא"ל המשתמש על ידי הנפקת בקשת POST HTTP ל- Auth setAccountInfo נקודת הקצה.

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
כותרות אופציונליות
שם הנכס תיאור
X-firebase-locale קוד השפה המתאים לאזור המשתמש. העברת זה יקם את ביטול שינוי הדוא"ל שנשלח למשתמש.
בקש עומס גוף
שם הנכס סוּג תיאור
idtoken חוּט אסימון מזהה Auth Firebase עבור המשתמש.
אימייל חוּט הדוא"ל החדש של המשתמש.
ReturnSecuretoken בוליאני בין אם להחזיר תעודת זהות ולרענן אסימון או לא.
עומס תגובה
שם הנכס סוּג תיאור
מקומי חוּט ה- UID של המשתמש הנוכחי.
אימייל חוּט כתובת הדוא"ל של המשתמש.
סיסמאאש חוּט גרסת hash של הסיסמה.
provideruserinfo רשימת חפצי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "ProbiderId" ו- "FederatedId".
idtoken חוּט אסימון מזהה חדש של FireBase Auth עבור המשתמש.
אושר רענן חוּט אסימון מרענן של Auth Firebase.
פג תוקף ב חוּט מספר השניות בהן תוקף אסימון המזהה פג.

בקשת לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- FireBase Id והמרענון החדש המשויך למשתמש.

תגובה לדוגמא

{
  "localId": "tRcfmLH7o2...",
  "email": "[user@example2.com]",
  "passwordHash": "...",
  "providerUserInfo": [
    {
      "providerId": "password",
      "federatedId": "[user@example2.com]"
    }
  ],
  "idToken": "[NEW_ID_TOKEN]",
  "refreshToken": "[NEW_REFRESH_TOKEN]",
  "expiresIn": "3600"
}

קודי שגיאה נפוצים

  • דוא"ל_EXISTS: כתובת הדוא"ל כבר נמצאת בשימוש על ידי חשבון אחר.
  • Invalid_id_token: אישור המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.

שנה סיסמא

באפשרותך לשנות את סיסמת המשתמש על ידי הנפקת בקשת POST HTTP ל- AUTH setAccountInfo נקודת הקצה.

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
idtoken חוּט אסימון מזהה Auth Firebase עבור המשתמש.
סיסמה חוּט הסיסמה החדשה של המשתמש.
ReturnSecuretoken בוליאני בין אם להחזיר תעודת זהות ולרענן אסימון או לא.
עומס תגובה
שם הנכס סוּג תיאור
מקומי חוּט ה- UID של המשתמש הנוכחי.
אימייל חוּט כתובת הדוא"ל של המשתמש.
סיסמאאש חוּט גרסת hash של סיסמא.
provideruserinfo רשימת חפצי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "ProbiderId" ו- "FederatedId".
idtoken חוּט אסימון מזהה חדש של FireBase Auth עבור המשתמש.
אושר רענן חוּט אסימון מרענן של Auth Firebase.
פג תוקף ב חוּט מספר השניות בהן תוקף אסימון המזהה פג.

בקשת לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- FireBase Id והמרענון החדש המשויך למשתמש.

תגובה לדוגמא

{
  "localId": "tRcfmLH7o2...",
  "email": "[user@example.com]",
  "passwordHash": "...",
  "providerUserInfo": [
    {
      "providerId": "password",
      "federatedId": "[user@example.com]"
    }
  ],
  "idToken": "[NEW_ID_TOKEN]",
  "refreshToken": "[NEW_REFRESH_TOKEN]",
  "expiresIn": "3600"
}

קודי שגיאה נפוצים

  • Invalid_id_token: אישור המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • WEAD_PASSWORD: הסיסמה חייבת להיות באורך של 6 תווים או יותר.

עדכן פרופיל

באפשרותך לעדכן את פרופיל המשתמש (שם תצוגה / כתובת אתר תמונה) על ידי הנפקת בקשת POST HTTP ל- AUTH setAccountInfo נקודת הקצה.

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
idtoken חוּט אסימון מזהה Auth Firebase עבור המשתמש.
הצג שם חוּט שם התצוגה החדש של המשתמש.
פוטורל חוּט כתובת אתר הצילום החדשה של המשתמש.
deleteattribute רשימת המיתרים רשימת התכונות למחוק, "Display_Name" או "Photo_url". זה יבטל ערכים אלה.
ReturnSecuretoken בוליאני בין אם להחזיר תעודת זהות ולרענן אסימון או לא.
עומס תגובה
שם הנכס סוּג תיאור
מקומי חוּט ה- UID של המשתמש הנוכחי.
אימייל חוּט כתובת הדוא"ל של המשתמש.
הצג שם חוּט שם התצוגה החדש של המשתמש.
פוטורל חוּט כתובת אתר הצילום החדשה של המשתמש.
סיסמאאש חוּט גרסת hash של סיסמא.
provideruserinfo רשימת חפצי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "ProbiderId" ו- "FederatedId".
idtoken חוּט אסימון מזהה חדש של FireBase Auth עבור המשתמש.
אושר רענן חוּט אסימון מרענן של Auth Firebase.
פג תוקף ב חוּט מספר השניות בהן תוקף אסימון המזהה פג.

בקשת לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK .

תגובה לדוגמא

{
  "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"
}

קודי שגיאה נפוצים

  • Invalid_id_token: אישור המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.

קבל נתוני משתמש

אתה יכול לקבל נתוני משתמש על ידי הנפקת בקשת POST HTTP ל- Auth getAccountInfo נקודת הקצה.

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:lookup?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
idtoken חוּט אסימון מזהה Firebase של החשבון.
עומס תגובה
שם הנכס סוּג תיאור
משתמשים רשימת חפצי JSON החשבון המשויך לאסימון מזהה Firebase הנתון. בדוק למטה לקבלת פרטים נוספים.
מעמיס תגובה (תוכן מערך users )
שם הנכס סוּג תיאור
מקומי חוּט ה- UID של המשתמש הנוכחי.
אימייל חוּט דוא"ל החשבון.
Imagiverified בוליאני האם אומת הדוא"ל של החשבון אומת או לא.
הצג שם חוּט שם התצוגה של החשבון.
provideruserinfo רשימת חפצי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "ProbiderId" ו- "FederatedId".
פוטורל חוּט כתובת האתר של הצילום לחשבון.
סיסמאאש חוּט גרסת hash של סיסמא.
סיסמה UpdatedAt לְהַכפִּיל חותמת הזמן, באלפיות השנייה, כי סיסמת החשבון השתנתה לאחרונה.
תוקף חוּט חותמת הזמן, בשניות, המסמנת גבול, שלפני אסימון ה- Firebase Id נחשב לבוטל.
נָכֶה בוליאני בין אם החשבון מושבת או לא.
LastLoginat חוּט חותמת הזמן, באלפיות השנייה, שהחשבון התחבר לאחרונה.
נוצר ב חוּט חותמת הזמן, באלפיות השנייה, שהחשבון נוצר בו.
CustomAuth בוליאני האם החשבון מאומת על ידי היזם.

בקשת לדוגמא

curl 'https://identitytoolkit.googleapis.com/v1/accounts:lookup?key=[API_KEY]' \
-H 'Content-Type: application/json' --data-binary '{"idToken":"[FIREBASE_ID_TOKEN]"}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה תכיל את כל פרטי המשתמש המשויכים לחשבון.

תגובה לדוגמא

{
  "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
    }
  ]
}

קודי שגיאה נפוצים

  • Invalid_id_token: אישור המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • User_not_found: אין רשומת משתמש המתאימה למזהה זה. ייתכן שהמשתמש נמחק.

באפשרותך לקשר דוא"ל/סיסמה למשתמש הנוכחי על ידי הנפקת בקשת POST HTTP ל- AUTH setAccountInfo נקודת הקצה.

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
idtoken חוּט אסימון מזהה Firebase של החשבון אליו אתה מנסה לקשר את האישורים.
אימייל חוּט הדוא"ל לקישור לחשבון.
סיסמה חוּט הסיסמה החדשה של החשבון.
ReturnSecuretoken חוּט בין אם להחזיר תעודת זהות ולרענן אסימון או לא. תמיד צריך להיות נכון.
עומס תגובה
שם הנכס סוּג תיאור
מקומי חוּט ה- UID של המשתמש הנוכחי.
אימייל חוּט דוא"ל החשבון.
הצג שם חוּט שם התצוגה של החשבון.
פוטורל חוּט כתובת האתר של הצילום לחשבון.
סיסמאאש חוּט גרסת hash של סיסמא.
provideruserinfo רשימת חפצי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "ProbiderId" ו- "FederatedId".
Imagiverified בוליאני האם אומת הדוא"ל של החשבון אומת או לא.
idtoken חוּט אסימון מזהה חדש של FireBase Auth עבור המשתמש.
אושר רענן חוּט אסימון מרענן של Auth Firebase.
פג תוקף ב חוּט מספר השניות בהן תוקף אסימון המזהה פג.

בקשת לדוגמא

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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase Id ואסימון הרענון המשויך למשתמש המאומת.

תגובה לדוגמא

{
  "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
}

קודי שגיאה נפוצים

  • Redential_too_old_login_again: תעודת המשתמש כבר לא תקפה. על המשתמש להיכנס שוב.
  • TOKEN_EXPIER: אישור המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • Invalid_id_token: אישור המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • WEAD_PASSWORD: הסיסמה חייבת להיות באורך של 6 תווים או יותר.

אתה יכול לקשר תעודת OAUTH למשתמש על ידי הנפקת בקשת POST HTTP לנקודת הקצה של verifyAssertion .

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:signInWithIdp?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
idtoken חוּט אסימון מזהה Firebase של החשבון אליו אתה מנסה לקשר את האישורים.
בקשה חוּט ה- URI אליו ה- IDP מפנה את המשתמש בחזרה.
לאחר מכן חוּט מכיל את תעודת OAuth (אסימון תעודת זהות או אסימון גישה) ומזהה ספק שמנפיק את האישורים.
ReturnSecuretoken בוליאני בין אם להחזיר תעודת זהות ולרענן אסימון או לא. תמיד צריך להיות נכון.
RETURNIDPREDENTION בוליאני האם לאלץ את החזרת תעודת OAuth על השגיאות הבאות: federated_user_id_already_linked ו- imail_exists.
עומס תגובה
שם הנכס סוּג תיאור
FederatedId חוּט המזהה הייחודי מזהה את חשבון IDP.
Providerid חוּט מזהה הספק המקושר (למשל "Google.com" עבור ספק Google).
מקומי חוּט ה- UID של המשתמש המאומת.
Imagiverified בוליאני האם אומת הדוא"ל של Signin מאומת.
אימייל חוּט דוא"ל החשבון.
Oauthidtoken חוּט אסימון ה- OIDC ID אם זמין.
OauthaccessToken חוּט אסימון ה- OAuth Access אם זמין.
Oauthtokensecret חוּט סוד האסימון OAuth 1.0 אם זמין.
RAWUSERINFO חוּט תגובת ה- JSON המיתרים המכילה את כל נתוני ה- IDP המתאימים לתעודת OAUTH המסופקת.
שם פרטי חוּט השם הפרטי לחשבון.
שם משפחה חוּט שם המשפחה של החשבון.
שם מלא חוּט השם המלא לחשבון.
הצג שם חוּט שם התצוגה של החשבון.
פוטורל חוּט כתובת האתר של הצילום לחשבון.
idtoken חוּט אסימון מזהה Auth Firebase עבור המשתמש המאומת.
אושר רענן חוּט אסימון מרענן של Auth Firebase עבור המשתמש המאומת.
פג תוקף ב חוּט מספר השניות בהן תוקף אסימון המזהה פג.

בקשת לדוגמא עם אסימון מזהה 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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase 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\", ...}"
}

בקשת לדוגמא עם אסימון גישה ל- 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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase Id ואסימון הרענון המשויך למשתמש המאומת.

תגובה לדוגמא עם אסימון גישה של 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\", ...}"
}

בקשת לדוגמא עם תעודת טוויטר 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}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK . התגובה מכילה את אסימון ה- Firebase Id ואסימון הרענון המשויך למשתמש המאומת.

תגובה לדוגמא עם תעודת טוויטר 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\", ...}"
}

קודי שגיאה נפוצים

  • Operation_Not_Allowed: הספק המתאים מושבת לפרויקט זה.
  • Invalid_idp_response: אישור ה- Auth המסופק אינו מוטל או שפג תוקפו.
  • Invalid_id_token: אישור המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • דוא"ל_EXISTS: כתובת הדוא"ל כבר נמצאת בשימוש על ידי חשבון אחר.
  • Federated_user_id_already_linked: אישור זה כבר משויך לחשבון משתמש אחר.

אתה יכול לבטל קישור של ספק ממשתמש נוכחי על ידי הנפקת בקשת POST HTTP ל- AUTH setAccountInfo נקודת הקצה.

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
idtoken חוּט אסימון מזהה Firebase של החשבון.
DeletEprovider רשימת המיתרים רשימת מזהי הספק ל- Unllink, למשל: 'google.com', 'סיסמה' וכו '.
עומס תגובה
שם הנכס סוּג תיאור
מקומי חוּט ה- UID של המשתמש הנוכחי.
אימייל חוּט דוא"ל החשבון.
הצג שם חוּט שם התצוגה של החשבון.
פוטורל חוּט כתובת האתר של הצילום לחשבון.
סיסמאאש חוּט גרסת hash של הסיסמה.
provideruserinfo רשימת חפצי JSON רשימה של כל אובייקטי הספק המקושרים המכילים "ProbiderId" ו- "FederatedId".
Imagiverified בוליאני האם אומת הדוא"ל של החשבון אומת או לא.

בקשת לדוגמא

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]"]}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK .

תגובה לדוגמא

{
  "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"
}

קודי שגיאה נפוצים

  • Invalid_id_token: אישור המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.

שלח אימות דוא"ל

אתה יכול לשלוח אימות דוא"ל למשתמש הנוכחי על ידי הנפקת בקשת POST HTTP ל- Auth getOobConfirmationCode נקודת קצה.

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:sendOobCode?key=[API_KEY]
כותרות אופציונליות
שם הנכס תיאור
X-firebase-locale קוד השפה המתאים לאזור המשתמש. העברת זה ייקל את אימות הדוא"ל שנשלח למשתמש.
בקש עומס גוף
שם הנכס סוּג תיאור
סוג בקשה חוּט סוג קוד האישור שיש לשלוח. צריך תמיד להיות "verify_email".
idtoken חוּט אסימון מזהה Firebase של המשתמש לאמת.
עומס תגובה
שם הנכס סוּג תיאור
אימייל חוּט דוא"ל החשבון.

בקשת לדוגמא

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]"}'

בקשה מוצלחת מסומנת על ידי קוד סטטוס HTTP 200 OK .

תגובה לדוגמא

{
  "email": "user@example.com"
}

קודי שגיאה נפוצים

  • Invalid_id_token: אישור המשתמש אינו תקף עוד. על המשתמש להיכנס שוב.
  • User_not_found: אין רשומת משתמש המתאימה למזהה זה. ייתכן שהמשתמש נמחק.

אשר אימות דוא"ל

באפשרותך לאשר קוד אימות דוא"ל על ידי הנפקת בקשת POST HTTP ל- AUTH setAccountInfo נקודת הקצה.

שיטה: הודעה

סוג תוכן: יישום/JSON

נקודת קצה
https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]
בקש עומס גוף
שם הנכס סוּג תיאור
OOBCODE חוּט קוד הפעולה שנשלח לדוא"ל המשתמש לאימות דוא"ל.
עומס תגובה
שם הנכס סוּג תיאור
אימייל חוּט דוא"ל החשבון.
הצג שם חוּט The display name for the account.
photoUrl חוּט The photo Url for the account.
passwordHash חוּט The password hash.
providerUserInfo List of JSON objects List of all linked provider objects which contain "providerId" and "federatedId".
emailVerified בוליאני Whether or not the account's email has been verified.

Sample request

curl 'https://identitytoolkit.googleapis.com/v1/accounts:update?key=[API_KEY]' \
-H 'Content-Type: application/json' --data-binary '{"oobCode":"[VERIFICATION_CODE]"}'

A successful request is indicated by a 200 OK HTTP status code.

Sample response

{
  "localId": "FhyStE...",
  "email": "user@example.com",
  "passwordHash": "...",
  "providerUserInfo": [
    {
      "providerId": "password",
      "federatedId": "user@example.com"
    }
  ]
}

Common error codes

  • EXPIRED_OOB_CODE: The action code has expired.
  • INVALID_OOB_CODE: The action code is invalid. This can happen if the code is malformed, expired, or has already been used.
  • USER_DISABLED: The user account has been disabled by an administrator.
  • EMAIL_NOT_FOUND: There is no user record corresponding to this identifier. The user may have been deleted.

מחק חשבון

You can delete a current user by issuing an HTTP POST request to the Auth deleteAccount endpoint.

Method: POST

Content-Type: application/json

Endpoint
https://identitytoolkit.googleapis.com/v1/accounts:delete?key=[API_KEY]
Request Body Payload
שם הנכס סוּג תיאור
idToken חוּט The Firebase ID token of the user to delete.
Response Payload
שם הנכס סוּג תיאור

Sample request

curl 'https://identitytoolkit.googleapis.com/v1/accounts:delete?key=[API_KEY]' \
-H 'Content-Type: application/json' --data-binary '{"idToken":"[FIREBASE_ID_TOKEN]"}'

A successful request is indicated by a 200 OK HTTP status code.

Common error codes

  • INVALID_ID_TOKEN:The user's credential is no longer valid. The user must sign in again.
  • USER_NOT_FOUND: There is no user record corresponding to this identifier. The user may have been deleted.

Firebase Authentication Emulator

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

נקודת קצה

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

נקודת קצה

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}/config
Response Payload
שם הנכס סוּג תיאור
להתחבר לְהִתְנַגֵד signIn configuration object containing a single key, allowDuplicateEmails (boolean).

Patch emulator configuration

Update emulator-specific configuration for the specified project.

Method: PATCH

נקודת קצה

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}/config
Request Body Payload
שם הנכס סוּג תיאור
להתחבר לְהִתְנַגֵד Desired signIn configuration object with single key, allowDuplicateEmails (boolean).
Response Payload
שם הנכס סוּג תיאור
להתחבר לְהִתְנַגֵד 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

נקודת קצה

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}/oobCodes
Response Payload
שם הנכס סוּג תיאור
oobCodes מַעֲרָך 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

נקודת קצה

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}/verificationCodes
Response Payload
שם הנכס סוּג תיאור
verificationCodes מַעֲרָך 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.