The Twitter API では、全てのリクエストに対して適切なHTTP ステータスコードを返すようにしています。
コード | テキスト | 説明 |
---|---|---|
200 | OK | 成功! |
304 | Not Modified | 新たなデータは取得されませんでした。 |
400 | Bad Request | このリクエストは無効、もしくはサポートされていません。付随するエラーメッセージで詳細な説明がされています。 API v1.1では、認証をしていないリクエストは無効と見なされ、この応答が返ってきます。 |
401 | Unauthorized |
認証資格情報 が不足しているか、正しくありません。 またそれ以外の場合でも、例えばAPI v1エンドポイントへリクエストを送信した場合は現在では全て401 を返すようになっています (代わりに API v1.1 を使ってください)。 |
403 | Forbidden | リクエストの形式は問題ありませんが、それが拒否されたかアクセスが認められていません。付随するエラーメッセージで理由を説明しています。 このコードは、更新制限が原因でリクエストが拒否された場合に使用されます。 |
404 | Not Found | リクエストしたURLが無効か、ユーザー情報などのリクエストしたリソースが存在しません。またリクエストした形式が、リクエスト対象のメソッドでサポートされていない場合も返されます。 |
406 | Not Acceptable | リクエストで不正な形式が設定されていた場合に、検索APIによって返されます。 |
410 | Gone | このリソースは廃止されています。APIエンドポイントが停止していることを示すために使われます。例えば: “Twitter REST API v1 はもうすぐ機能停止します。 API v1.1へ移行してください。” |
420 | Enhance Your Calm | 速度制限に引っかかった場合に、検索APIとトレンドAPI バージョン1によって返されます。 |
422 | Unprocessable Entity | POST account / update_profile_bannerへアップロードされた画像を処理することができない場合に返ります。 |
429 | Too Many Requests | API v1.1で、リソースごとに決められたアプリケーションの速度制限を使い果たしたためにリクエストが処理できなかった場合に返されます。API v1.1 の速度制限を参照してください。 |
500 | Internal Server Error | 何かが破損しています。開発者フォーラムへ報告をお願いします。そうすれば Twitter のチームで調査が可能です。 |
502 | Bad Gateway | Twitter がダウンしているか、更新作業中です。 |
503 | Service Unavailable | Twitter のサーバは起動していますが、リクエストが多すぎる状態です。時間を置いて再試行してください。 |
504 | Gateway timeout | Twitter サーバは起動していますが、スタック内でなんらかの障害が発生したためリクエストを処理できませんでした。時間を置いて再試行してください。 |
Twitter APIがエラーメッセージを返す場合、そのエラーメッセージはあなたがリクエスト時に指定した形式になります。 例えば、JSON 方式のエラーは以下のようになります。:
{"errors":[{"message":"Sorry, that page does not exist","code":34}]}
詳細なエラーテキストに加え、エラーメッセージでは機械的に解析可能なコードも含まれています。 エラーメッセージのテキストは将来変更される可能性がありますが、コードについては今後も変更されません。 以下の表で、APIを使用した時に表示されるコードは説明します。:
Code | テキスト | 説明 |
---|---|---|
32 | Could not authenticate you | あなたの指定した通りに処理を完了することができませんでした。 |
34 | Sorry, that page does not exist | HTTP 404 と同じ意味- 指定されたリソースが見つかりませんでした。 |
64 | Your account is suspended and is not permitted to access this feature | HTTP 403 と同じ意味— アクセストークンがアカウント停止されたユーザーのものなので、実施した処理を完了できません |
68 | The Twitter REST API v1 is no longer active. Please migrate to API v1.1. https://dev.twitter.com/rest/public | 廃止されたv1 のURLへHTTPリクエストを送信しています。 |
88 | Rate limit exceeded | このリソースのリクエスト制限が、現在の速度制限枠の上限に達しました。 |
89 | Invalid or expired token | リクエストで使用しているアクセストークンは誤っているか、有効期限が切れています。 API v1.1で使用されます。 |
92 | SSL is required | このAPIへはSSL接続のみ許可されており、安全な接続方法でリクエストを送信する必要があります。SSLを使って接続する方法を参照してください。 |
130 | Over capacity | HTTP 503 と同じ意味- Twitter は一時的に高負荷状態にありました。 |
131 | Internal error | HTTP 500 と同じ意味- 不明の内部エラーが発生しました。 |
135 | Could not authenticate you | HTTP 401と同じ意味 - あなたのoauth_timestamp が有効期間より前、もしくは後の日付になっていることを意味します。 |
161 | You are unable to follow more people at this time | HTTP 403と同じ意味 — 何らかの制限によって、ユーザーが別のユーザーをフォローできなかった場合に発生 |
179 | Sorry, you are not authorized to see this status | HTTP 403と同じ意味 — このユーザーでツイートが閲覧でできなかった場合に発生。通常はつぶやき主がこのツイートをプロテクトしていることが原因です。 |
185 | User is over daily status update limit | HTTP 403と同じ意味 — ユーザーの投稿回数が制限を越えたために投稿できなかった場合に発生します。 エラーメッセージ上は一日当たりの投稿制限に達した場合のみエラーが発生すると記載されていますが、このエラーは投稿制限に達した場合は常に発生します。 Posting allowances have roaming windows of time of unspecified duration. |
187 | Status is a duplicate | 投稿した文章は、このアカウントですでにツイートされています。 |
215 | Bad authentication data | Typically sent with 1.1 responses with HTTP code 400。このメソッドは認証が必要ですが、認証がされていないか無効でした。 |
226 | This request looks like it might be automated. To protect our users from spam and other malicious activity, we can’t complete this action right now. | 我々は常にTwitterプラットフォームの監視を行い、スパム行為や悪意ある活動を防ぐためにフィルタを調整しています。 そうしたシステムの調整はリアルタイムに行われています。 あなたがこの応答を受け取った場合、我々のシステムはそのツイートやダイレクトメッセージを、悪意ある行為の可能性があるとして要注意指定しています。 自分が作成したツイートやダイレクトメッセージが要注意指定されるのはおかしいと思うのであれば、 https://support.twitter.com/forms/platformに必要事項を記載して我々に詳細を報告してください。 |
231 | User must verify login | Returned as a challenge in xAuth when the user has login verification enabled on their account and needs to be directed to twitter.com to generate a temporary password. |
251 | This endpoint has been retired and should not be used. | 廃止されたURLにHTTPリクエストを送信したのと同じ意味です。 |
261 | Application cannot perform write actions. | HTTP 403 と同じ意味— アプリケーションで POST, PUT, DELETE といった処理が制限されている場合に発生します。アプリケーション凍結や他の処分への異議申し立てを行う方法を参照してください。 |
271 | You can’t mute yourself. | HTTP 403と同じ意味。 ユーザーは自分自身をミュートすることはできません。 |
272 | You are not muting the specified user. | HTTP 403と同じ意味。ミュートされていないユーザーに対してミュート解除しようとしています。 |
上記表にないエラーに遭遇した場合、HTTP ステータスコードの表に戻って最も適したエラー対処方法を探してください。