رفع خطاها
اول وضعیت پاسخ را بررسی کنید و سپس کد خطا را بخوانید. هر خطا راهحل خودش را دارد؛ تکرار درخواست همیشه مشکل را حل نمیکند.
شکل پاسخ خطا
خطاهای جستوجو در شیء error برمیگردند. فیلد code برای تصمیمگیری برنامه، message برای توضیح خطا و requestId برای پیگیری در پشتیبانی است.
{
"error": {
"code": "invalid_ip",
"message": "نشانی IP معتبر نیست.",
"requestId": "err-example"
}
}خطاهای رایج و راهحل آنها
| وضعیت | کد | چه کار کنم؟ |
|---|---|---|
400 | invalid_ip | یک IP معتبر بفرستید. نام دامنه، URL و IP همراه درگاه پذیرفته نمیشود. |
400 | unsupported_address | از یک نشانی عمومی استفاده کنید؛ نشانی خصوصی یا رزروشده پشتیبانی نمیشود. |
400 | batch_too_large | فهرست گروهی نباید خالی باشد یا از سقف پلن بیشتر شود. آن را به گروههای کوچکتر تقسیم کنید. |
401 | invalid_api_key | کلید کامل، سربرگ احراز هویت و فعال بودن کلید را بررسی کنید. |
429 | rate_limit_exceeded | سرعت ارسال را کم کنید و پس از فاصلهٔ زمانی دوباره تلاش کنید. |
429 | quota_exceeded | سهمیه و تاریخ دورهٔ بعد را ببینید یا پلن را تغییر دهید. |
503 | dataset_unavailable | دادهٔ جستوجو موقتاً در دسترس نیست. با فاصله و تعداد تلاش محدود دوباره امتحان کنید. |
503 | internal_error | سرویس موقتاً در دسترس نیست. وضعیت سرویس را بررسی کنید و بعداً دوباره تلاش کنید. |
اگر پاسخ JSON معتبر نبود، وضعیت HTTP را هم بررسی کنید. بدنهٔ نامعتبر درخواست یا خطای ارتباطی ممکن است قالب بالا را نداشته باشد.
چه زمانی دوباره تلاش کنم؟
برای خطای ورودی یا کلید، ابتدا مشکل را اصلاح کنید. برای محدودیت نرخ یا خطای موقت، بین تلاشها فاصله بگذارید و این فاصله را بیشتر کنید؛ مثلاً ۱، ۲ و سپس ۴ ثانیه. پس از چند تلاش ناموفق متوقف شوید تا درخواستهای تکراری جمع نشوند.
برای پایان سهمیه، تلاش مجدد فوری فایدهای ندارد. تفاوت این حالت با محدودیت نرخ در سهمیه و مصرف توضیح داده شده است.
اگر مشکل ادامه داشت
در پیام به پشتیبانی، کد خطا، زمان رخداد و requestId را بفرستید. کلید دسترسی یا اطلاعات شخصی کاربران را در پیام و تصویر صفحه قرار ندهید.