ขีดจำกัดและโควต้า

ขีดจำกัดและโควต้าช่วยปกป้องโครงสร้างพื้นฐานของ Google จากกระบวนการอัตโนมัติที่ใช้ Reports API ในทางที่ไม่เหมาะสม คำขอที่มากเกินไปจาก API อาจเกิดจากการพิมพ์ผิดที่ไม่มีอันตราย หรืออาจเกิดจากระบบที่ออกแบบมาอย่างไม่มีประสิทธิภาพซึ่งทำให้เกิดการเรียก API ที่ไม่จำเป็น ไม่ว่าสาเหตุจะเป็นอะไร การบล็อกการเข้าชมจากแหล่งที่มาหนึ่งๆ เมื่อถึงระดับหนึ่งเป็นสิ่งจำเป็นต่อสุขภาพโดยรวมของระบบ Google Workspace ซึ่งจะช่วยให้มั่นใจได้ว่าการดำเนินการของนักพัฒนาซอฟต์แวร์คนหนึ่งจะไม่ส่งผลเสียต่อชุมชนขนาดใหญ่

ในกรณีที่คำขอ API ไม่สำเร็จ คุณจะได้รับการตอบกลับเป็นรหัสสถานะ HTTP รหัสสถานะ 403 มีข้อมูลข้อผิดพลาดเกี่ยวกับ การป้อนข้อมูลที่ไม่ถูกต้อง และรหัสสถานะ HTTP 503 มีข้อมูลข้อผิดพลาด ที่ระบุว่าโควต้า API ใดที่เกิน การตอบกลับเหล่านี้ช่วยให้แอปพลิเคชันที่กำหนดเองตรวจพบข้อผิดพลาดเหล่านี้และดำเนินการอย่างเหมาะสม

หากคำขอต้องดำเนินการให้เสร็จสิ้นภายในระยะเวลาที่กำหนด ให้ส่งคำขอ แบบขนานหรือใช้หลายเธรดในแอปพลิเคชัน Java หรือ C# ตัวอย่างคำขอแบบขนานคือการขออีเมลเป็นชุดเล็กๆ จาก ผู้ใช้หลายรายแทนการเพิ่มหรือนำอีเมลจำนวนมากออกจากผู้ใช้รายเดียว พร้อมกัน ในกรณีของเธรด ให้ลองเริ่มต้นด้วย 10 เธรด โดยใช้ 1 เธรดต่ออีเมลของผู้ใช้ โปรดทราบว่าคำแนะนำเกี่ยวกับเธรดมีข้อดีข้อเสียและไม่ เหมาะกับสถานการณ์ API ทั้งหมด หากจำนวนคำขอสูงเกินไป ข้อผิดพลาดเกี่ยวกับโควต้าจะเกิดขึ้น

สำหรับข้อผิดพลาดทั้งหมดที่อิงตามเวลา (สูงสุด N รายการสำหรับ N วินาทีต่อเธรด) โดยเฉพาะข้อผิดพลาดรหัสสถานะ 503 เรา ขอแนะนำให้โค้ดของคุณดักจับข้อยกเว้นและใช้อัลกอริทึม Exponential Backoff เพื่อรอการหน่วงเวลาเล็กน้อยก่อนที่จะลองเรียกอีกครั้ง ตัวอย่าง Reports API สำหรับ 1 เธรดคือการรอ 5 วินาทีแล้วลองเรียก อีกครั้ง หากคำขอสำเร็จ ให้ทำซ้ำรูปแบบนี้สำหรับเธรดอื่นๆ หากคำขอที่ 2 ไม่สำเร็จ แอปพลิเคชันควร ลดความถี่ของคำขอลงจนกว่าการเรียกจะสำเร็จ เช่น เพิ่มการหน่วงเวลาเริ่มต้น 5 วินาทีเป็น 10 วินาที แล้วลองเรียก อีกครั้ง นอกจากนี้ ให้กำหนดขีดจำกัดการลองอีกครั้ง เช่น ลองส่งคำขออีกครั้ง 5-7 ครั้งโดยใช้เวลาหน่วงที่แตกต่างกันก่อนที่แอปพลิเคชันจะแสดงข้อผิดพลาดแก่ผู้ใช้

ขีดจำกัด

หมวดหมู่ขีดจำกัด API ขีดจำกัด
อัตรา QPS และ QPD ของรายงาน API จำกัดจำนวนคำขอสำหรับโปรเจ็กต์ Google Cloud ค่าเริ่มต้นที่ตั้งไว้ในคอนโซล Google Cloud คือ 2,400 คำขอต่อนาที ต่อผู้ใช้ต่อโปรเจ็กต์ Google Cloud คุณสามารถเพิ่มขีดจำกัดนี้ได้จากหน้า โควต้า Admin SDK API ของโปรเจ็กต์ Google Cloud

หากเกินขีดจำกัดเหล่านี้ เซิร์ฟเวอร์จะแสดงรหัสสถานะ HTTP 503 code. ใช้อัลกอริทึม Exponential Backoff เมื่อลองส่งคำขออีกครั้ง

ขีดจำกัดเพิ่มเติมสำหรับ activities.list API activities.list มีขีดจำกัดเพิ่มเติมคือ 250 คำค้นหาตัวกรองต่อนาที (15,000 คำค้นหาตัวกรองต่อชั่วโมง) คำค้นหาตัวกรอง คือคำขอ API ที่มีพารามิเตอร์การค้นหาอย่างน้อย 1 รายการต่อไปนี้
  • userKey
  • actorIpAddress
  • eventName
  • filters
  • orgUnitID
  • groupIdFilter
หมวดหมู่โควต้า API โควต้า
maxResults จำนวนระเบียนที่แสดงในแต่ละหน้าของการตอบกลับของ API อยู่ระหว่าง 0 ถึง 1,000 ระเบียน ค่าเริ่มต้นคือ 1,000 ระเบียน

ขีดจำกัดประเภทอื่นๆ

ขีดจำกัดประเภทอื่นๆ ข้อจำกัดและหลักเกณฑ์
รูปแบบข้อมูล ค่าเริ่มต้น รูปแบบข้อมูลเริ่มต้นคือ JSON นอกจากนี้ API ยังรองรับรูปแบบ Atom ด้วย
คำขอที่ไม่ได้รับอนุญาต Google ไม่อนุญาตคำขอที่ไม่ได้รับอนุญาตไปยัง API ระบบจะถือว่าคำขอ ไม่ได้รับอนุญาตหากไม่มีโทเค็นการให้สิทธิ์ ดูข้อมูลเพิ่มเติมได้ที่ การให้สิทธิ์คำขอ
ข้อความเตือน
  • ข้อมูลไม่พร้อมใช้งาน: ข้อมูลสำหรับแอปพลิเคชันนี้และวันที่นี้ไม่พร้อมใช้งานและจะไม่พร้อมใช้งานในอนาคต
  • ข้อมูลบางส่วนพร้อมใช้งาน: ข้อมูลสำหรับแอปพลิเคชันนี้และวันที่นี้ อาจพร้อมใช้งานในอนาคต
สำหรับไวยากรณ์คำเตือนของ Reports API โปรดดูเอกสารอ้างอิง API สำหรับ ลูกค้า และสำหรับ ผู้ใช้

แนวทางปฏิบัติแนะนำสำหรับ activities.list

เราคาดหวังให้ใช้เมธอด activities.list สำหรับการตรวจสอบ **คำขอควรมีช่วงเวลา** โดยใช้พารามิเตอร์ startTime และ endTime เพื่อประสิทธิภาพที่ดีที่สุด ช่วงเวลาที่แคบลง จะทำให้เวลาตอบกลับเร็วขึ้นอย่างมาก เมธอดนี้ไม่ได้มีไว้สำหรับการดึงข้อมูลบันทึกการตรวจสอบจำนวนมาก หากคุณใช้โควต้าคำขอตัวกรอง activities.list จนหมดเป็นประจำ ให้พิจารณาตัวเลือกต่อไปนี้

  • ตั้งค่าการส่งออกบันทึก Google Workspace ไปยัง BigQuery และใช้ API การค้นหา ที่มีประสิทธิภาพของ BigQuery เพื่อดึงและวิเคราะห์ข้อมูลที่ต้องการโดยไม่มีข้อจำกัดด้านโควต้า API
  • ใช้คำขอที่ไม่ใช่ตัวกรองที่มีช่วงเวลาและทำการกรองฝั่งไคลเอ็นต์ (เช่น ทำตรรกะการกรองในแอปพลิเคชัน) แทนการใช้คำขอตัวกรอง วิธีนี้ช่วยให้คุณข้ามขีดจำกัดคำค้นหาตัวกรอง 250 รายการต่อนาทีได้ แต่คุณยังคงอยู่ภายใต้ขีดจำกัด 2,400 คำค้นหาต่อ นาทีต่อผู้ใช้ต่อโปรเจ็กต์ Google Cloud