محدودیتها و سهمیهها از زیرساخت Google در برابر فرآیند خودکاری محافظت میکنند که از API مهاجرت گروهی به روشی نامناسب استفاده میکند. درخواستهای بیش از حد از یک API ممکن است ناشی از یک اشتباه تایپی بیضرر یا ناشی از طراحی ناکارآمد سیستمی باشد که تماسهای بیضروری API را ایجاد میکند. صرف نظر از علت، مسدود کردن ترافیک از یک منبع خاص پس از رسیدن به سطح مشخصی برای سلامت کلی سیستم Google Workspace ضروری است.
شکست درخواست API
در صورتی که درخواست API شما ناموفق باشد، برنامه شما پاسخ کد وضعیت HTTP را دریافت می کند. کد وضعیت HTTP 403
دارای اطلاعات خطا در مورد ورودی نادرست است و کد وضعیت HTTP 503
دارای اطلاعات خطایی است که نشان می دهد از کدام سهمیه API فراتر رفته است. این پاسخها به برنامه سفارشی شما اجازه میدهد این خطاها را شناسایی کرده و اقدامات لازم را انجام دهد.
درخواست های حساس به زمان
اگر درخواستهای شما باید در یک بازه زمانی مشخص تکمیل شوند، درخواستهای خود را به صورت موازی ارسال کنید یا از چندین رشته در برنامه جاوا یا سی شارپ خود استفاده کنید. به عنوان مثال، درخواست های خود را بر اساس ماه یا دوره زمانی دیگر بشکنید. در مورد رشته ها، سعی کنید با 10 رشته شروع کنید، هر درخواست یک رشته. توصیه رشته دارای معاوضه هایی است و برای همه موقعیت های API مفید نیست. اگر تعداد درخواست ها خیلی زیاد شود، خطاهای سهمیه ای رخ می دهد.
خطاهای مبتنی بر زمان
برای همه خطاهایی که مبتنی بر زمان هستند (حداکثر N چیز برای X ثانیه در هر رشته)، به ویژه خطاهای کد وضعیت 503
، توصیه میکنیم کد شما استثنا را بگیرد و با استفاده از یک الگوریتم عقبنشینی نمایی ، قبل از امتحان مجدد منتظر کمی تاخیر باشید. تماس ناموفق به عنوان مثال Groups Migration API برای یک رشته این است که 5 ثانیه صبر کنید و تماس ناموفق را دوباره امتحان کنید. اگر درخواست موفقیت آمیز بود، این الگو را برای رشته های دیگر تکرار کنید. اگر درخواست دوم موفقیت آمیز نبود، برنامه شما باید تعداد دفعات درخواست را کاهش دهد تا زمانی که تماس موفقیت آمیز باشد. به عنوان مثال، 5 ثانیه تاخیر اولیه را به 10 ثانیه افزایش دهید و دوباره تماس ناموفق خود را دوباره امتحان کنید. همچنین، در مورد محدودیت تلاش مجدد تصمیم بگیرید. به عنوان مثال، قبل از اینکه برنامه شما خطایی را به کاربر بازگرداند، یک درخواست را 5 تا 7 بار با زمانهای تاخیر متفاوت امتحان کنید.
محدودیت ها
دسته های محدودیت API | محدودیت ها |
---|---|
پرس و جو در ثانیه (QPS) | محدودیت پروژه توسعه دهنده 10 پرس و جو در ثانیه (QPS) در هر حساب است. |
سهمیه ها
دسته های سهمیه API | سهمیه ها |
---|---|
حداکثر درخواست API در روز | حداکثر درخواست API در روز 500000 است. |
آرشیو، انقضای پیام ها | بایگانی گروه منقضی نمی شود. تا زمانی که گروه حذف نشود، پیامها در بایگانی باقی میمانند. خطمشی حفظ ایمیل بر پیامهای موجود در بایگانی گروه تأثیری نمیگذارد. |
اندازه پیام ایمیل | حداکثر اندازه پیام نامه 25 مگابایت است. این محدودیت شامل سرصفحههای متا داده پیام، متن و هر پیوستی میشود. |
انواع دیگر محدودیت ها
محدودیت های دیگر | محدودیت ها و دستورالعمل ها |
---|---|
فرمت های نوع محتوا | یک پیام ایمیل باید در قالب متن استاندارد RFC 822 باشد. هنگام آپلود ایمیلهای انتقالیافته، نوع محتوای درخواست باید از هدر Content-type: message/rfc822 استفاده کند. |
قالب داده در پاسخ های API | فرمت دادههای پاسخ، نمادگذاری شی جاوا اسکریپت ( JSON ) است. |
خط مشی های مکان داده | Groups Migration API از سیاستهای مکان دادهای که به دلایل قراردادی نیاز به ذخیره دادهها در مرزهای جغرافیایی یا سیاسی خاص دارند، پشتیبانی نمیکند. اگر مکان داده برای حساب شما لازم است از Groups Migration API استفاده نکنید. |
درج پیام موازی | Groups Migration API از درخواست های موازی برای درج ایمیل در آرشیوهای گروهی مختلف پشتیبانی می کند. اما Groups Migration API از درج پیام موازی در همان آرشیو گروه پشتیبانی نمی کند. همچنین درخواست های دسته ای در این نسخه از Groups Migration API پشتیبانی نمی شوند. |
درخواست های غیرمجاز | Groups Migration API هیچ درخواست غیرمجاز را نمی پذیرد. در صورت عدم ارائه کد مجوز، درخواست غیرمجاز تلقی می شود. برای اطلاعات بیشتر، به اطلاعاتی درباره احراز هویت و مجوز مراجعه کنید. |