Twitter API v2 エンドポイント詳細ガイド
1. ツイート関連エンドポイント
GET /2/tweets
役割: 指定されたIDのツイートを取得します。
認証: OAuth 2.0 Bearer Token
パラメータ:
`ids`: カンマ区切りのツイートID(最大100個)
`tweet.fields`: 追加のツイートフィールド(例:author_id, created_at)
レスポンス: 指定されたツイートの詳細情報を含むJSONオブジェクト
POST /2/tweets
役割: 新しいツイートを投稿します。
認証: OAuth 2.0 Authorization Code with PKCE
レスポンス: 作成されたツイートの情報を含むJSONオブジェクト
DELETE /2/tweets/:id
役割: 指定されたIDのツイートを削除します。
認証: OAuth 2.0 Authorization Code with PKCE
パラメータ:
`id`: 削除するツイートのID
レスポンス: 削除操作の結果を示すJSONオブジェクト
2. ユーザー関連エンドポイント
GET /2/users
役割: 指定されたIDまたはユーザー名のユーザー情報を取得します。
認証: OAuth 2.0 Bearer Token
パラメータ:
`ids` または `usernames`: カンマ区切りのユーザーIDまたはユーザー名(最大100個)
`user.fields`: 追加のユーザーフィールド(例:description, profile_image_url)
レスポンス: 指定されたユーザーの詳細情報を含むJSONオブジェクト
GET /2/users/:id/tweets
役割: 指定されたユーザーのツイートタイムラインを取得します。
認証: OAuth 2.0 Bearer Token または OAuth 2.0 Authorization Code with PKCE
パラメータ:
`id`: ユーザーID
`max_results`: 1回のリクエストで取得するツイートの最大数(デフォルト10、最大100)
`tweet.fields`: 追加のツイートフィールド
レスポンス: ユーザーのツイートリストを含むJSONオブジェクト
3. 検索関連エンドポイント
GET /2/tweets/search/recent
役割: 過去7日間のツイートを検索します。
認証: OAuth 2.0 Bearer Token または OAuth 2.0 Authorization Code with PKCE
パラメータ:
`query`: 検索クエリ(必須)
`max_results`: 1回のリクエストで取得するツイートの最大数(デフォルト10、最大100)
`tweet.fields`: 追加のツイートフィールド
レスポンス: 検索条件に合致するツイートのリストを含むJSONオブジェクト
4. いいね関連エンドポイント
POST /2/users/:id/likes
役割: 指定されたツイートに「いいね」をつけます。
認証: OAuth 2.0 Authorization Code with PKCE
パラメータ:
`id`: いいねを行うユーザーのID
レスポンス: いいね操作の結果を示すJSONオブジェクト
DELETE /2/users/:id/likes/:tweet_id
役割: 指定されたツイートの「いいね」を取り消します。
認証: OAuth 2.0 Authorization Code with PKCE
パラメータ:
`id`: いいねを取り消すユーザーのID
`tweet_id`: いいねを取り消すツイートのID
レスポンス: いいね取り消し操作の結果を示すJSONオブジェクト
5. リツイート関連エンドポイント
POST /2/users/:id/retweets
役割: 指定されたツイートをリツイートします。
認証: OAuth 2.0 Authorization Code with PKCE
パラメータ:
`id`: リツイートを行うユーザーのID
レスポンス: リツイート操作の結果を示すJSONオブジェクト
DELETE /2/users/:id/retweets/:tweet_id
役割: 指定されたツイートのリツイートを取り消します。
認証: OAuth 2.0 Authorization Code with PKCE
パラメータ:
`id`: リツイートを取り消すユーザーのID
`tweet_id`: リツイートを取り消すツイートのID
レスポンス: リツイート取り消し操作の結果を示すJSONオブジェクト
補足情報
レート制限: 各エンドポイントには特定のレート制限があります。制限は認証タイプやアプリケーションの種類によって異なります。
エラーハンドリング: APIは様々なHTTPステータスコードとエラーメッセージを返します。適切なエラーハンドリングを実装することが重要です。
ページネーション: 多くのエンドポイントでは、`next_token`パラメータを使用してページネーションをサポートしています。
フィールド拡張: `tweet.fields`、`user.fields`などのパラメータを使用して、返される情報を拡張できます。
メディアアップロード: メディア付きツイートを投稿する場合、まず別のエンドポイントでメディアをアップロードし、そのIDを参照する必要があります。
注意: この情報は2024年4月時点のものです。Twitter(現X)のAPI仕様は変更される可能性があるため、常に公式ドキュメントで最新情報を確認してください。