במסמך הזה מפורטים חלק מקודי השגיאות והודעות השגיאה שמתקבלים מ-Google APIs. השגיאות המפורטות כאן הן במיוחד בדומיין הגלובלי (או בדומיין ברירת המחדל) של Google APIs. ממשקי API רבים מגדירים גם דומיינים משלהם, שמזהים שגיאות ספציפיות ל-API שלא בדומיין הגלובלי. בשגיאות האלה, הערך של המאפיין domain
בתגובת JSON יהיה ערך ספציפי ל-API, כמו youtube.parameter
.
בדף זה מפורטות שגיאות לפי קודי מצבים של HTTP, כפי שהם מוגדרים ב-RFC 7231.
תגובת ה-JSON לדוגמה שמופיעה כאן מדגימה את אופן הדיווח על שגיאה גלובלית:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalidParameter",
"message": "Invalid string value: 'asdf'. Allowed values: [mostpopular]",
"locationType": "parameter",
"location": "chart"
}
],
"code": 400,
"message": "Invalid string value: 'asdf'. Allowed values: [mostpopular]"
}
}
שגיאות
- MOVED_PERMANENTLY (301)
- SEE_OTHER (303)
- NOT_MODIFIED (304)
- TEMPORARY_REDIRECT (307)
- BAD_REQUEST (400)
- UNAUTHORIZED (401)
- PAYMENT_REQUIRED (402)
- FORBIDDEN (403)
- NOT_FOUND (404)
- METHOD_NOT_ALLOWED (405)
- CONFLICT (409)
- GONE (410)
- PRECONDITION_FAILED (412)
- REQUEST_ENTITY_TOO_LARGE (413)
- REQUESTED_RANGE_NOT_SATISFIABLE (416)
- EXPECTATION_FAILED (417)
- PRECONDITION_REQUIRED (428)
- TOO_MANY_REQUESTS (429)
- INTERNAL_SERVER_ERROR (500)
- NOT_IMPLEMENTED (501)
- SERVICE_UNAVAILABLE (503)
MOVED_PERMANENTLY (301)
קוד שגיאה |
התיאור |
movedPermanently |
הבקשה הזו ובקשות עתידיות לאותה פעולה צריכות להישלח לכתובת ה-URL שצוינה בכותרת Location של התגובה הזו, במקום לכתובת ה-URL שאליה נשלחה הבקשה. |
SEE_OTHER (303)
קוד שגיאה |
התיאור |
seeOther |
הבקשה טופלה. כדי לקבל את התגובה צריך לשלוח בקשת GET לכתובת ה-URL שצוינה בכותרת Location . |
mediaDownloadRedirect |
הבקשה טופלה. כדי לקבל את התגובה צריך לשלוח בקשת GET לכתובת ה-URL שצוינה בכותרת Location . |
NOT_MODIFIED (304)
קוד שגיאה |
התיאור |
notModified |
אין עמידה בתנאי שהוגדר לכותרת If-None-Match. תגובה זו מציינת שהמסמך המבוקש לא השתנה ויש לאחזר תגובה שנשמרה במטמון. צריך לבדוק את הערך של כותרת בקשת ה-HTTP If-None-Match . |
TEMPORARY_REDIRECT (307)
קוד שגיאה |
התיאור |
temporaryRedirect |
כדי שהבקשה תטופל צריך לשלוח אותה מחדש לכתובת ה-URL שצוינה בכותרת Location של התגובה הזו. |
BAD_REQUEST (400)
קוד שגיאה |
התיאור |
badRequest |
בקשת ה-API לא תקינה או שנוצרה באופן שגוי, וכתוצאה מכך שרת ה-API לא הבין את הבקשה. |
badBinaryDomainRequest |
הבקשה בדומיין הבינארי לא תקינה. |
badContent |
אין תמיכה בסוג התוכן של נתוני הבקשה, או בסוג התוכן של חלק מבקשה שמורכבת מחלקים מרובים. |
badLockedDomainRequest |
הבקשה בדומיין הנעול לא תקינה. |
corsRequestWithXOrigin |
בקשת ה-CORS מכילה כותרת XD3 X-Origin, שמציינת בקשת CORS לא טובה. |
endpointConstraintMismatch |
הבקשה נכשלה כי היא לא תאמה ל-API שצוין. צריך לבדוק את הערך של נתיב כתובת ה-URL ולוודא שהוא נכון. |
invalid |
הבקשה נכשלה כי היא הכילה ערך לא תקין. הערך יכול להיות ערך פרמטר, ערך כותרת או ערך מאפיין. |
invalidAltValue |
ערך הפרמטר alt מציין פורמט פלט לא ידוע. |
invalidParameter |
הבקשה נכשלה כי היא הכילה פרמטר או ערך פרמטר לא תקינים. כדאי לעיין במסמכי התיעוד בנושא API כדי לקבוע באילו פרמטרים אפשר להשתמש בבקשה שלכם. |
invalidQuery |
הבקשה לא תקינה. כדאי לעיין במסמכי התיעוד בנושא API כדי לקבוע אילו פרמטרים נתמכים בבקשה, ולבדוק אם הבקשה מכילה שילוב לא תקין של פרמטרים או ערך לא תקין של פרמטר. צריך לבדוק את הערך בפרמטר q בבקשה שלכם. |
keyExpired |
מפתח ה-API שצוין בבקשה פג תוקף, כלומר שרת ה-API לא יכול לבדוק את מגבלת המכסה של האפליקציה שממנה נשלחה הבקשה. היכנסו אל Google Developers Console למידע נוסף או כדי לקבל מפתח חדש. |
keyInvalid |
מפתח ה-API שצוין בבקשה לא תקין, כלומר שרת ה-API לא יכול לבדוק את מגבלת המכסה של האפליקציה שממנה נשלחה הבקשה. צריך להשתמש ב-Google Developers Console כדי למצוא את מפתח ה-API או כדי לקבל מפתח כזה. |
lockedDomainCreationFailure |
אסימון ה-OAuth התקבל במחרוזת השאילתה, שה-API הזה לא מתיר שימוש בפורמטים שאינם JSON או XML לתגובות. אם אפשר, עדיף במקום זאת לשלוח את אסימון ה-OAuth בכותרת Authorization. |
notDownload |
אפשר לשלוח בקשות להורדות של מדיה רק לנתיבי /download/* של כתובות URL. צריך לשלוח את הבקשה מחדש לאותו נתיב, אבל בלי הקידומת /download . |
notUpload |
הבקשה נכשלה כי היא לא בקשת העלאה. ניתן לשלוח למזהי ה-URI /upload/* רק בקשות העלאה. צריך לשלוח מחדש את מחדש לאותו נתיב, אבל בלי הקידומת /upload . |
parseError |
שרת ה-API לא יכול לנתח את תוכן הבקשה. |
required |
בבקשת ה-API חסר מידע נדרש, שיכול להיות פרמטר או מאפיין משאב. |
tooManyParts |
הבקשה מרובת החלקים נכשלה כי יש בה יותר מדי חלקים. |
unknownApi |
ממשק ה-API שאליו הבקשה מתקשרת לא מזוהה. |
unsupportedMediaProtocol |
הלקוח משתמש בפרוטוקול מדיה שאינו נתמך. |
unsupportedOutputFormat |
ערך הפרמטר alt מציין פורמט פלט שאינו נתמך בשירות הזה. צריך לבדוק את ערך הפרמטר alt בבקשה. |
wrongUrlForUpload |
הבקשה היא בקשת העלאה, אבל היא נכשלה כי היא לא נשלחה למזהה ה-URI הנכון. צריך לשלוח בקשות העלאה למזהי URI שמכילים את הקידומת /upload/* . צריך לשלוח מחדש את הבקשה לאותו נתיב, אבל עם הקידומת /upload . |
UNAUTHORIZED (401)
קוד שגיאה |
התיאור |
unauthorized |
המשתמש לא מורשה להגיש את הבקשה. |
authError |
פרטי הכניסה להרשאה שצוינו בבקשה לא תקינים. צריך לבדוק את הערך של כותרת בקשת ה-HTTP Authorization . |
expired |
פג תוקף הסשן. צריך לבדוק את הערך של כותרת בקשת ה-HTTP Authorization . |
lockedDomainExpired |
הבקשה נכשלה כי פג תוקפו של דומיין נעול שהיה בתוקף. |
required |
כדי לבצע את בקשת ה-API הזו המשתמשים חייבים להתחבר לחשבון. צריך לבדוק את הערך של כותרת בקשת ה-HTTP Authorization . |
PAYMENT_REQUIRED (402)
קוד שגיאה |
התיאור |
dailyLimitExceeded402 |
הגעתם למגבלת התקציב היומי שהמפַתח הגדיר. |
quotaExceeded402 |
לפעולה המבוקשת נדרשים יותר משאבים ממה שהמכסה מאפשרת. כדי להשלים את הפעולה נדרש תשלום. |
user402 |
הפעולה המבוקשת מחייבת סוג כלשהו של תשלום מהמשתמשים המאומתים. |
FORBIDDEN (403)
קוד שגיאה |
התיאור |
forbidden |
הפעולה המבוקשת אסורה ואי אפשר להשלים אותה. |
accessNotConfigured |
לפרויקט שלכם לא הוגדרה גישה ל-API הזה. צריך להפעיל את ה-API בפרויקט ב-Google Developers Console. |
accessNotConfigured |
הפרויקט נחסם בגלל התנהגות פוגעת. למידע נוסף: http://support.google.com/code/go/developer_compliance. |
accessNotConfigured |
הפרויקט סומן למחיקה. |
accountDeleted |
חשבון המשתמש המשויך לפרטי הכניסה של הרשאת הבקשה נמחק. צריך לבדוק את הערך של כותרת בקשת ה-HTTP Authorization . |
accountDisabled |
חשבון המשתמש המשויך לפרטי הכניסה של הרשאת הבקשה הושבת. צריך לבדוק את הערך של כותרת בקשת ה-HTTP Authorization . |
accountUnverified |
כתובת האימייל של המשתמש שהגיש את הבקשה לא מאומתת. צריך לבדוק את הערך של כותרת בקשת ה-HTTP Authorization . |
concurrentLimitExceeded |
הבקשה נכשלה כי הגעתם למגבלת השימוש בו-זמנית (concurrent). |
dailyLimitExceeded |
הגעתם למגבלת המכסה היומית של ה-API. |
dailyLimitExceeded |
הגעתם למגבלת המכסה היומית, והפרויקט נחסם עקב התנהלות פוגעת. כדי לפתור את הבעיה, כדאי לעיין בטופס התמיכה בנושא תאימות ל-Google APIs. |
dailyLimitExceededUnreg |
הבקשה נכשלה כי הגעתם למגבלה היומית לשימוש לא מאומת ב-API. כדי להמשיך להשתמש ב-API צריך להירשם דרך Google Developers Console. |
downloadServiceForbidden |
ה-API לא תומך בשירות הורדה. |
insufficientAudience |
אי אפשר להשלים את הבקשה לקהל הזה. |
insufficientAuthorizedParty |
אי אפשר להשלים את הבקשה לאפליקציה הזו. |
insufficientPermissions |
למשתמש המאומת אין מספיק הרשאות לביצוע הבקשה הזו. |
limitExceeded |
אי אפשר להשלים את הבקשה בגלל מגבלות גישה או הגבלות קצב של יצירת בקשות. |
lockedDomainForbidden |
ה-API הזה לא תומך בדומיינים נעולים. |
quotaExceeded |
לפעולה המבוקשת נדרשים יותר משאבים ממה שהמכסה מאפשרת. |
rateLimitExceeded |
נשלחו יותר מדי בקשות בפרק זמן נתון. |
rateLimitExceededUnreg |
חרגתם מהגבלת הקצב של יצירת בקשות. כדי להמשיך להתקשר ל-API עליכם לרשום את האפליקציה. צריך להירשם דרך Google Developers Console. |
responseTooLarge |
המשאב המבוקש גדול מדי ולא ניתן להחזרה. |
servingLimitExceeded |
כבר הגעתם להגבלת הקצב הכללית של יצירת בקשות כפי שצוינה ל-API. |
sslRequired |
כדי לבצע את הפעולה הזו נדרש SSL. |
unknownAuth |
שרת ה-API לא מזהה את ה-Scheme של ההרשאה שנעשה בו שימוש לבקשה. צריך לבדוק את הערך של כותרת בקשת ה-HTTP Authorization . |
userRateLimitExceeded |
הבקשה נכשלה כי הגעתם להגבלת קצב של יצירת בקשות לכל משתמש. |
userRateLimitExceededUnreg |
הבקשה נכשלה כי הגעתם להגבלת קצב של יצירת בקשות לכל משתמש, ומפתח הלקוח לא זוהה בבקשה. כדי ליצור פרויקט לאפליקציה, צריך להשתמש ב-Google Developer Console (https://console.developers.google.com). |
variableTermExpiredDailyExceeded |
הבקשה נכשלה כי פג תוקפה של מכסה לתקופה משתנה וכי הגעתם למגבלה היומית. |
variableTermLimitExceeded |
הבקשה נכשלה כי הגעתם למגבלת המכסה לתקופה משתנה. |
NOT_FOUND (404)
קוד שגיאה |
התיאור |
notFound |
הפעולה המבוקשת נכשלה כי לא נמצא משאב המשויך לבקשה. |
notFound |
לא נמצא משאב המשויך לבקשה. אם לא השתמשתם ב-API הזה במהלך השבועיים האחרונים, צריך לפרוס מחדש את האפליקציה App Engine ולנסות להתקשר אליה שוב. |
unsupportedProtocol |
אין תמיכה בפרוטוקול שנעשה בו שימוש בבקשה. |
METHOD_NOT_ALLOWED (405)
קוד שגיאה |
התיאור |
httpMethodNotAllowed |
אין תמיכה בשיטת ה-HTTP המשויכת לבקשה. |
CONFLICT (409)
קוד שגיאה |
התיאור |
conflict |
אי אפשר להשלים את בקשת ה-API כי הפעולה המבוקשת מתנגשת עם פריט קיים. לדוגמה, בקשה שמנסה ליצור פריט כפול תיצור התנגשות, למרות שפריטים כפולים בדרך כלל מזוהים עם שגיאות יותר ספציפיות. |
duplicate |
הפעולה המבוקשת נכשלה כי היא ניסתה ליצור משאב שכבר קיים. |
GONE (410)
קוד שגיאה |
התיאור |
deleted |
הבקשה נכשלה כי המשאב המשויך לבקשה נמחק. |
PRECONDITION_FAILED (412)
קוד שגיאה |
התיאור |
conditionNotMet |
אין עמידה בתנאי שהוגדר בכותרת בקשת ה-HTTP If-Match או If-None-Match של הבקשה. פרטים נוספים מופיעים בקטע ETag שבמפרט ה-HTTP. צריך לבדוק את הערך של כותרת בקשת ה-HTTP If-Match . |
REQUEST_ENTITY_TOO_LARGE (413)
קוד שגיאה |
התיאור |
backendRequestTooLarge |
הבקשה גדולה מדי. |
batchSizeTooLarge |
הבקשה באצווה מכילה יותר מדי אלמנטים. |
uploadTooLarge |
הבקשה נכשלה כי הנתונים שנשלחו בבקשה גדולים מדי. |
REQUESTED_RANGE_NOT_SATISFIABLE (416)
קוד שגיאה |
התיאור |
requestedRangeNotSatisfiable |
בבקשה צוין טווח שאי אפשר לספק אותו. |
EXPECTATION_FAILED (417)
קוד שגיאה |
התיאור |
expectationFailed |
השרת לא יכול לעמוד בציפיות לקוח. |
PRECONDITION_REQUIRED (428)
קוד שגיאה |
התיאור |
preconditionRequired |
הבקשה מחייבת תנאי מקדים שלא צוין. כדי שהבקשה תאושר, צריך לספק עם הבקשה כותרת If-Match או If-None-Match . |
TOO_MANY_REQUESTS (429)
קוד שגיאה |
התיאור |
rateLimitExceeded |
יותר מדי בקשות נשלחו בפרק זמן נתון. |
INTERNAL_SERVER_ERROR (500)
קוד שגיאה |
התיאור |
internalError |
הבקשה נכשלה בגלל שגיאה פנימית. |
NOT_IMPLEMENTED (501)
קוד שגיאה |
התיאור |
notImplemented |
הפעולה המבוקשת לא יושמה. |
unsupportedMethod |
הבקשה נכשלה כי היא מנסה להפעיל שיטה או פעולה לא ידועות. |
SERVICE_UNAVAILABLE (503)
קוד שגיאה |
התיאור |
backendError |
אירעה שגיאה בקצה העורפי. |
backendNotConnected |
הבקשה נכשלה בגלל שגיאה בחיבור. |
notReady |
שרת ה-API לא מוכן לקבלת בקשות. |