Skip to main content
アプリは API 認証情報のコンテナです。各アプリは独自のキー、トークン、および設定を持ちます。

アプリの認証情報

アプリを作成すると、これらの認証情報を生成できます:
認証情報ユースケース
API Key & SecretOAuth 1.0a で認証します。リクエストへの署名やユーザートークンの生成に使用します。
Access Token & Secret自分のアカウントに代わってリクエストを行います (OAuth 1.0a)。
Client ID & SecretOAuth 2.0 で認証します。Authorization Code フローに使用します。
Bearer Token公開データエンドポイント用のアプリのみの認証。
新しいプロジェクトには OAuth 2.0 を選択してください。きめ細かなスコープを提供し、X API v2 のユーザーコンテキストエンドポイントに必須です。

アプリの作成

1

Developer Console を開く

console.x.com にアクセスしてサインインします。
2

Create App をクリック

アプリの名前、説明、ユースケースを入力します。
3

認証情報を生成

作成後、必要なキーとトークンを生成します。
4

安全に保存

認証情報をすぐに保存してください — 一度しか表示されません。

アプリの権限 (OAuth 1.0a)

OAuth 1.0a アプリには 3 つの権限レベルがあります:
  • 投稿、ユーザー、および公開データを表示
  • 投稿、いいね、または何も変更できません
  • ダイレクトメッセージにはアクセスできません
権限の変更には、ユーザーが新しいスコープで新しいトークンを取得するためにアプリを再認可する必要があります。

OAuth 2.0 アプリのタイプ

OAuth 2.0 を設定する際は、アプリのタイプを選択してください:
タイプクライアントユースケース
Web AppConfidentialシークレットを安全に保存できるサーバーサイドアプリケーション
Automated App / BotConfidentialサーバー上で動作するボットや自動化サービス
Native AppPublicシークレットを保護できないモバイルまたはデスクトップアプリ
Single Page AppPublicブラウザベースの JavaScript アプリ
Confidential クライアント は Client Secret を受け取ります。Public クライアント は PKCE のみを使用します。

コールバック URL

コールバック URL (リダイレクト URI) は OAuth フローに必要です。ユーザーがアプリを認可した後、認可コードと共にコールバック URL にリダイレクトされます。

要件

  • Developer Console でアプリの許可リストにコールバック URL を追加
  • URL は正確に一致する必要があります (末尾のスラッシュを含む)
  • アプリあたり最大 10 個のコールバック URL
  • 本番環境では https:// を使用
  • ローカル開発では http://127.0.0.1 を使用 (localhost ではない)

禁止されているプロトコル

これらのプロトコルは使用できません: javascriptdatafileftpmailtotelnet、その他の非標準スキーム。
vbscriptjavascriptvbsdatamochakeywordlivescriptftpfilegopheracrobatcalltodaapitpcitmsfirefoxurlhcpldapmailtommstmmsumsbdrtspmso-offdapsnewsnewsnntpoutlookstssyncrlogintelnettn3270shellsip

ベストプラクティス

アプリを分離する

開発、ステージング、本番用に異なるアプリを作成します。

認証情報のローテーション

定期的に、また漏洩が疑われる場合はキーを再生成します。

最小限の権限

アプリが実際に必要とする権限のみをリクエストします。

使用状況のモニタリング

API 使用状況を追跡するために、定期的に Developer Console を確認します。

自動アカウントのラベル

アプリがボットアカウントを運用している場合、自動として識別できます:
  1. ボットアカウントの 設定 に移動
  2. アカウント自動化 を選択
  3. 管理アカウントをリンク
これにより、ユーザーとの信頼を築き、ボットをスパムから区別します。

トラブルシューティング

コールバック URL が Developer Console に登録されているとおりに、プロトコルおよび末尾のスラッシュを含めて正確であることを確認してください。クエリパラメータとして渡す際は URL を HTTP エンコードしてください。
{
  "errors": [{
    "code": 415,
    "message": "Callback URL not approved for this client application."
  }]
}
アプリが停止されたと表示された場合は、X プラットフォームチームからの通知がないかメールを確認してください。申し立てには Platform Help Form を使用してください。