کدهای وضعیت زیر را می توان در پاسخ های HTTP برگرداند.
کد HTTP | توضیحات HTTP | یادداشت |
---|---|---|
2xx | خوب | خطا نیست؛ با موفقیت بازگشت. این همچنین باید برای شکست های منطق تجاری استفاده شود (مثلا booking_failure در CreateBookingResponse پر شده است) |
400 | درخواست بد | درخواست بد/ استدلال نامعتبر (تاجر، سرویس، جایگاه پیدا نشد، تلاش برای رزرو یک اسلات نامعتبر، لغو رزروی که هرگز وجود نداشته است). |
401 | غیرمجاز | احراز هویت نشده (مدارک نامعتبر، دوباره سعی کنید وارد شوید). درخواست دارای اعتبار احراز هویت معتبر برای عملیات نیست. |
403 | ممنوع | اجازه رد/ممنوع (تماس گیرنده شناخته شده و رد شده است). این پاسخ نباید برای ردهایی که ناشی از فرسودگی برخی منابع است استفاده شود (به جای آن از Too Many Requests برای آن خطاها استفاده کنید). در صورتی که تماس گیرنده قابل شناسایی نباشد نباید Forbidden استفاده شود (به جای آن Unauthorized برای آن خطاها استفاده کنید). |
404 | پیدا نشد | یافت نشد (منبع پیدا نشد، آدرس اینترنتی نامعتبر، از جمله RPC های نامعتبر) |
409 | تعارض | این عملیات معمولاً به دلیل یک مشکل همزمانی مانند شکست چک ترتیبدهنده یا لغو تراکنش متوقف شد. |
429 | درخواست های خیلی زیاد | برخی از منابع تمام شده است، شاید سهمیه هر کاربر، یا شاید کل سیستم فایل خالی است. |
499 | درخواست بسته مشتری | این عملیات معمولاً توسط تماس گیرنده لغو شد. |
500 | خطای سرور داخلی | خطاهای داخلی این بدان معنی است که برخی از متغیرهای مورد انتظار سیستم اساسی شکسته شده اند. این کد خطا برای خطاهای جدی رزرو شده است. |
501 | اجرا نشده | عملیات اجرا نشده یا در این سرویس پشتیبانی/فعال نمی شود. |
503 | سرویس در دسترس نیست | این سرویس در حال حاضر در دسترس نیست. این به احتمال زیاد یک وضعیت گذرا است، که می توان با تلاش مجدد با عقب نشینی آن را اصلاح کرد. |
504 | مهلت زمانی دروازه | مهلت قبل از تکمیل عملیات به پایان رسید. برای عملیاتی که وضعیت سیستم را تغییر می دهد، حتی اگر عملیات با موفقیت به پایان رسیده باشد، ممکن است این خطا برگردانده شود. به عنوان مثال، یک پاسخ موفقیتآمیز از یک سرور میتوانست آنقدر به تأخیر بیفتد که مهلت آن به پایان برسد. |
گاهی اوقات ممکن است چندین کد خطا اعمال شود. سرویسها باید خاصترین کد خطای اعمال شده را برگردانند.