การตอบกลับข้อผิดพลาด

เมื่อคำขอ 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
ข้อความ คำอธิบายข้อผิดพลาดโดยย่อ
สถานะ รหัสข้อผิดพลาดตามรูปแบบบัญญัติ เช่น INVALID_ARGUMENT, UNAUTHENTICATED, PERMISSION_DENIED, RESOURCE_EXHAUSTED หรือ INTERNAL

ข้อผิดพลาดที่พบบ่อย

ตารางต่อไปนี้แสดงข้อผิดพลาดที่พบบ่อยซึ่ง API ส่งคืน

รหัสสถานะ HTTP Canonical Code เหตุผล คำอธิบาย
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 กับขีดจำกัดการลองใหม่เพื่อไม่ให้เกินโควต้าข้อผิดพลาดของเซิร์ฟเวอร์