เมื่อคำขอ API สำเร็จ API จะแสดงรหัสสถานะ 200 OK พร้อมกับข้อมูลที่ขอในเนื้อความของการตอบกลับ หากเกิดข้อผิดพลาด API
จะแสดงรหัสข้อผิดพลาดมาตรฐานอย่างใดอย่างหนึ่งที่กำหนดโดย Google APIs ซึ่งแมปกับ
รหัสสถานะ HTTP และเนื้อหาการตอบกลับที่มีข้อมูลข้อผิดพลาด เมื่อพบข้อผิดพลาด ให้ตรวจสอบฟิลด์ message และ status ในเนื้อหาการตอบกลับ JSON
เพื่อดูรายละเอียดที่เฉพาะเจาะจงซึ่งจะช่วยในการแก้ไขข้อบกพร่อง
รูปแบบข้อผิดพลาด
หากคำขอทำให้เกิดข้อผิดพลาด API จะแสดงรหัสสถานะ HTTP ที่เหมาะสม
และเนื้อความการตอบกลับ JSON การตอบกลับข้อผิดพลาดมีออบเจ็กต์ error
ที่มีโครงสร้างดังนี้
{
"error": {
"code": 403,
"message": "User does not have sufficient permissions for this property.",
"status": "PERMISSION_DENIED"
}
}
ออบเจ็กต์ error มีฟิลด์ต่อไปนี้
| ช่อง | คำอธิบาย |
|---|---|
| รหัส | รหัสสถานะ HTTP เช่น 400, 401, 403, 429 หรือ 500 |
| ข้อความ | คำอธิบายข้อผิดพลาดสั้นๆ |
| สถานะ | รหัสข้อผิดพลาด Canonical เช่น INVALID_ARGUMENT, UNAUTHENTICATED, PERMISSION_DENIED, RESOURCE_EXHAUSTED หรือ INTERNAL |
ข้อผิดพลาดที่พบบ่อย
ตารางต่อไปนี้แสดงข้อผิดพลาดที่พบบ่อยซึ่ง API ส่งคืน
| รหัสสถานะ HTTP | รหัส Canonical | เหตุผล | คำอธิบาย |
|---|---|---|---|
| 400 | INVALID_ARGUMENT |
คำขอไม่ถูกต้อง | คำขอมีรูปแบบไม่ถูกต้อง ซึ่งอาจเกิดจากพารามิเตอร์ที่ขาดหายไปหรือไม่ถูกต้อง เช่น ช่วงวันที่ไม่ถูกต้องหรือตัวกรองที่มีรูปแบบไม่ถูกต้อง |
| 401 | UNAUTHENTICATED |
ข้อมูลรับรองไม่ถูกต้อง | คำขอไม่มีข้อมูลรับรองการตรวจสอบสิทธิ์ที่ถูกต้องสำหรับทรัพยากรเป้าหมาย กรณีนี้อาจเกิดขึ้นหากไม่มีโทเค็นเพื่อการเข้าถึง OAuth 2.0 โทเค็นไม่ถูกต้อง หรือโทเค็นหมดอายุ ทำตามวิธีการในการตรวจสอบสิทธิ์ด้วย OAuth 2.0 เพื่อรับโทเค็นที่ถูกต้อง |
| 403 | PERMISSION_DENIED |
สิทธิ์ไม่เพียงพอ | ผู้ใช้ที่ตรวจสอบสิทธิ์แล้วไม่มีสิทธิ์เข้าถึงพร็อพเพอร์ตี้ Google Analytics ที่ขอ |
| 429 | RESOURCE_EXHAUSTED |
เกินโควต้าแล้ว | คำขอถูกปฏิเสธเนื่องจากถึงขีดจำกัดโควต้า API แล้ว ดูข้อมูลเพิ่มเติมได้ที่ขีดจำกัดและโควต้าของ Data API คุณอาจใช้เกินขีดจำกัดต่อโปรเจกต์หรือต่อพร็อพเพอร์ตี้ |
| 500 | INTERNAL |
ข้อผิดพลาดภายในเซิร์ฟเวอร์ | เกิดข้อผิดพลาดเกี่ยวกับเซิร์ฟเวอร์ที่ไม่คาดคิด โดยปกติแล้วปัญหานี้จะเกิดขึ้นเพียงชั่วคราว เราขอแนะนำให้ลองส่งคำขออีกครั้งโดยใช้ Exponential Backoff คุณควรใช้ Exponential Backoff กับขีดจำกัดการลองใหม่เพื่อไม่ให้เกินโควต้าข้อผิดพลาดเกี่ยวกับเซิร์ฟเวอร์ |
| 503 | UNAVAILABLE |
ไม่สามารถให้บริการได้ | บริการนี้ไม่พร้อมใช้งานชั่วคราว โดยปกติแล้วปัญหานี้จะเกิดขึ้นเพียงชั่วคราว เราขอแนะนำให้ลองส่งคำขออีกครั้งโดยใช้ Exponential Backoff คุณควรใช้ Exponential Backoff กับขีดจำกัดการลองใหม่เพื่อไม่ให้เกินโควต้าข้อผิดพลาดเกี่ยวกับเซิร์ฟเวอร์ |