שימוש ב-API
אתה יכול לשאול את הקצה האחורי של Firebase Auth דרך REST API. זה יכול לשמש לפעולות שונות כגון יצירת משתמשים חדשים, כניסה לקיימים ועריכה או מחיקה של משתמשים אלו.
בכל מסמך זה, API_KEY
מתייחס למפתח ה-API של האינטרנט, אותו ניתן להשיג בדף הגדרות הפרויקט במסוף הניהול שלך.
החלף אסימון מותאם אישית עבור מזהה ורענן אסימון
אתה יכול להחליף אסימון Auth מותאם אישית עבור מזהה ולרענן אסימון על ידי הנפקת בקשת HTTP POST
לנקודת הקצה Auth verifyCustomToken
.
שיטה: POST
סוג תוכן: application/json
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
אתה יכול לקשר אישור OAuth למשתמש על ידי הנפקת בקשת HTTP POST
לנקודת הקצה Auth verifyAssertion
.
שיטה: POST
סוג תוכן: application/json
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
Endpointhttps://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
אתה יכול לקשר תעודת 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
Endpointhttps://identitytoolkit.googleapis.com/v1/accounts:delete?key=[API_KEY]Request Body Payload
שם הנכס | סוּג | תיאור |
---|---|---|
idToken | חוּט | The Firebase ID token of the user to delete. |
שם הנכס | סוּג | תיאור |
---|
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}/configResponse 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}/configRequest Body Payload
שם הנכס | סוּג | תיאור |
---|---|---|
להתחבר | לְהִתְנַגֵד | Desired signIn configuration object with single key, allowDuplicateEmails (boolean). |
שם הנכס | סוּג | תיאור |
---|---|---|
להתחבר | לְהִתְנַגֵד | 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}/oobCodesResponse 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}/verificationCodesResponse 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.