TweetAPI ドキュメント
開発者向けの扱いやすい REST API から、包括的な公開 Twitter/X データにアクセスできます。
ベース URL
すべての API リクエストは次の URL に送信します。
https://api.tweetapi.com/tw-v2/
認証
API キーを X-API-Key ヘッダーに含めます。
headers: {
'X-API-Key': 'YOUR_API_KEY'
}
API を呼び出す前に
- レスポンスは JSON 形式です。
- プラン制限は API キーごとに適用され、リクエスト利用枠と 1 分あたりのリクエスト上限があります。
- コレクション系エンドポイントでは、利用可能な場合にカーソルベースのページネーションを使います。
- 投稿、エンゲージメント、プロフィール、DM、X Chat の各エンドポイントでは、TweetAPI キーに加えて、アカウント操作を認可するためのフィールドが必要になることがあります。正確な必須パラメータは各エンドポイントのページで確認してください。
429レスポンスは、プランのリクエスト利用枠を使い切った場合と、1 分あたりの上限を超えた場合のどちらでも返ることがあります。再試行する前にエラーメッセージを確認してください。TweetAPI のtw-v2エンドポイントは現在、Retry-AfterやX-RateLimit-*ヘッダーを返しません。
TweetAPI SDK
TweetAPI は、完全な型サポート、自動再試行、組み込みページネーションを備えた Python および Node.js 向けのメンテナンス済み SDK を提供しています。
Python
pip install tweetapi
from tweetapi import TweetAPI
client = TweetAPI(api_key="YOUR_API_KEY")
user = client.user.get_by_username(username="elonmusk")
print(user["data"]["followerCount"])
Node.js / TypeScript
npm install tweetapi-node
import TweetAPI from "tweetapi-node";
const client = new TweetAPI({ apiKey: "YOUR_API_KEY" });
const user = await client.user.getByUsername({ username: "elonmusk" });
console.log(user.data.followerCount);
開発者向けリソース
- コード生成、API ツール、コントラクトを認識する統合向けの OpenAPI 仕様(英語で表示されるページ)
- ドキュメント化された 79 オペレーションをすべて含む Postman 完全版コレクション(英語で表示されるページ)
- 公開プロフィール、検索、ツイート詳細のリクエストで安全に導入できる 読み取り専用 Postman クイックスタート(英語で表示されるページ)
これらのリソースは現在英語で提供されています。
主な機能
- 公開データへのアクセス: ユーザープロフィール、ツイート/投稿、フォロワー、エンゲージメント指標
- 操作機能: ツイートの投稿、いいね、リツイート、ブックマーク、ダイレクトメッセージの管理
- 検索: ドキュメント化されたクエリパラメータによるツイート、ユーザー、メディアの検索
- リクエスト時に最新データを取得(英語で表示されるページ): アプリケーションからリクエストした時点の投稿、プロフィール、指標を取得(英語ドキュメント)
- ページネーション: コレクション系エンドポイントでのカーソルベースのページネーション
- メディア対応: 画像、動画、GIF に完全対応
利用できるエンドポイント
ユーザーエンドポイント
- ユーザー名によるユーザー取得
- ID によるユーザー取得
- 複数 ID によるユーザー一括取得
- フォロワーとフォロー一覧
- ユーザーのツイートと返信
- サブスクリプション情報
ツイートエンドポイント
- ツイート詳細と会話スレッド
- 引用ツイートとリツイート
- ツイート翻訳
- エンゲージメント指標
操作エンドポイント
- 投稿の作成、返信、削除
- ツイートへのいいねとブックマーク
- リツイートと引用ツイート
- リスト管理
リスト・コミュニティエンドポイント
- リストの詳細とメンバー
- コミュニティ情報
- タイムラインのツイート
検索エンドポイント
- ツイート、ユーザー、メディアの検索
- 高度な検索演算子
- フィルターと並び替えオプション
プラン制限
現在の公開プランにおける 1 分あたりのリクエスト上限は次のとおりです。
- Free: 1 分あたり 10 リクエスト
- Pro: 1 分あたり 60 リクエスト
- Ultra: 1 分あたり 120 リクエスト
- Mega: 1 分あたり 180 リクエスト
非公開、レガシー、カスタムプランの上限は異なる場合があります。1 分あたりの上限による 429 には、回数を制限した指数バックオフと低い同時実行数で対応してください。プランのリクエスト利用枠を使い切った場合は短時間の再試行では解決しないため、ダッシュボードで現在の使用量とサブスクリプションの選択肢を確認してください。
従量課金(PAYG)の予備残高
Billing では、10,000 ユニットを $5 USD、20,000 ユニットを $10 USD、40,000 ユニットを $20 USD、100,000 ユニットを $50 USD で手動の都度購入として追加できます。トップアップは自動更新されません。TweetAPI は利用可能な無料プランまたはサブスクリプションの利用枠を先に消費し、その後で有効な PAYG 残高を自動的に使います。サブスクリプションを解約しても、有効な PAYG ユニットは引き続き利用できます。PAYG 単独の利用は 1 分あたり 60 リクエストに制限されますが、それより高いレート上限の有効なプランがある場合は高い方の上限が維持されます。
PAYG ユニットは支払いの決済成功から 365 日後に失効します。トップアップが適用されると、まだ有効なウォレット全体に、既存の有効期限と決済日から 365 日後のうち遅い方が適用されます。すでに失効したユニットは復元されません。適用が遅れてウォレットが先に失効した場合、旧期限前に支払ったことだけでは延長は保証されません。期限前に支払ったにもかかわらず適用が遅れた場合は、support@tweetapi.com に連絡し、確認された処理エラーの調査と訂正、または適切な救済を依頼してください。Billing と支払い確認には、適用後の有効期限が UTC で表示されます。
ユニットは返されたツイート数ではなく API 利用量を測るものです。ほとんどの従量制呼び出しは 1 ユニット、/tw-v2/xchat/send は 10 ユニット、/tw-v2/auth/login は 50 ユニットです。HTTP 200〜499 の従量制レスポンスは、400、401、403、429 を除いて課金対象です。課金対象となる空の結果、ページネーションのリクエスト、個別に送信した再試行や繰り返しリクエストにもユニットが使われます。
返金ではユニットが比例して取り消され、整数ユニットへ切り上げられます。支払いに異議申し立てが行われると、返金ですでに取り消された分を除き、その購入に関連するすべてのユニットが取り消されます。不足残高は PAYG をロックしますが、有効なサブスクリプションには影響しません。トップアップは使用可能なユニットを追加する前に不足分へ充当されます。誤った控除、未付与のユニット、支払いに関する異議は support@tweetapi.com までお問い合わせください。救済を求める条件として追加ユニットを購入する必要はありません。利用規約と返金情報(英語で表示されるページ)(英語)もご確認ください。強行法規上の権利は制限されません。
エラー処理
TweetAPI は標準 HTTP ステータスコードで成功または失敗を示します。
一般的なエラーコード
400s Errors
BAD_REQUESTBad Request - Invalid parametersUNAUTHORIZEDUnauthorized - Invalid API keyNOT_FOUNDNot Found - Resource doesn't existRATE_LIMITToo Many Requests500s Errors
INTERNAL_ERRORInternal Server Errorエラーレスポンスの形式
すべてのエラーは共通の形式です。
{
"statusCode": 400,
"message": "Invalid username parameter"
}
ベストプラクティス
- 必ずレスポンスのステータスコードを確認する
- デバッグ用にエラーレスポンスを記録する
- 再試行には指数バックオフを実装する
- レート制限を適切に処理する
セキュリティのベストプラクティス
- API キーを公開したり、バージョン管理へコミットしたりしないでください。
- セキュリティ強化のため、キーを定期的にローテーションしてください。
- アプリケーションでは環境変数に API キーを保存してください。
- 不審な利用を検出できるよう、ダッシュボードで使用量を監視してください。
サポート
サポートが必要な場合や質問がある場合は、次の窓口をご利用ください。
- support@tweetapi.com へメール
- Telegram の @tweetapi でサポートへ連絡