コード日進月歩

しんくうの技術的な小話、メモ、つれづれ、など

APIのメンテナンス中を表現するのに503 Service Unavailable を使うと書きやすいかも

古来からの書き方を学ぶべきシリーズ

ステータスコードとしての意味

状態°コード 503 (Service Unavailable)は、[ サーバは、[ いくばくかの遅延後に軽減される見込みが高いような,一時的な過負荷 またはスケジュールされた保守 ]に因り,現在 要請を取り扱えない ]ことを指示する。 サーバは、 Retry-After ヘッダを送信して,[ クライアントが要請を再試行する前に待機する,適量の時間 ]を示唆してよい。 - RFC 7231 — HTTP/1.1: Semantics and Content (日本語訳)

読みとけること

原文だと a temporary overload or scheduled maintenance とあり、実は計画的なメンテナンスで503を使うのは想定には入っている。そのため定期メンテナンスなどで503を出すというのは間違っていない

ステータスコードとして実装しているサイト

HTTP status codes used by world-famous APIs 曰く Twitter,Stripe,Sptify,Dropboxなどでも採用されているようで、そこまでマイナーな実装ということにはならなそう

参考リンク