ドキュメント

API リファレンスとガイド:認証、エラーコード、ページネーション、鮮度管理、X エンドポイント。

OpenAPI 1.0.0

クイックスタート

5分

5分クイックスタート

ゼロから最初の構造化レスポンスまで 3 ステップ:

  1. アカウントを登録——登録するとデフォルトの Workspace も作成されます。 新規登録
  2. コンソールで API キーを作成します。シークレットは一度だけ表示されるため、安全に保管してください。 API キーを作成
  3. キーを Bearer Token として任意のエンドポイントを呼び出します:
curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/x/users/newdev?freshness=default"

AIエージェント

FetchPI は AI エージェントのための API です。カタログ・契約・手順書はすべて機械可読な静的ファイルで、本サイトと同じデータから生成されます。

  • /llms.txt — エージェント向けサイト索引。利用可能なプラットフォームとドキュメント・価格の入口。
  • /SKILL.md — エージェント向け手順書。カタログ → スキーマ → 呼び出し → 使用量、課金ルール付き。
  • /openapi.yaml — 公開 OpenAPI サブセット。/v1 データパスとカタログを含み、管理面・コンソール面は含みません。

エージェントのワークフロー:まずカタログで可用性と価格を確認し、呼び出し前にスキーマを読み、リクエストごとに 1 つの API キーを送り、繰り返しの照会は freshness=cache を優先し、答えが得られたらページ送りを止めます。

認証

すべての /v1/* エンドポイントは API キーで認証されます。HTTP Bearer Token として送信し、fp_live_… / fp_test_… のプレフィックスを使用します。

Authorization: Bearer fp_live_…

シークレットはパスワード同様に扱ってください。作成時に一度だけ表示されます。漏えいの可能性がある場合はキーを失効し、作り直してください。

エラーコード

2xx 以外のすべてのレスポンスは共通のエンベロープを使用します。安定した機械可読コードを持つ error オブジェクトと、サポート窓口に伝える際の request_id が含まれます。

{
  "error": {
    "code": "NOT_FOUND",
    "message": "API key not found."
  },
  "request_id": "req_01HTXQ8Z9HTQ"
}
コードHTTP ステータス説明主な発生場面
UNAUTHENTICATED401API キー/セッションが存在しないか無効です。データ API に有効な API キーがない、またはコンソールのセッションが存在しないか期限切れです。
FORBIDDEN403認証済みですが、このキャパビリティの使用は許可されていません。キー ACL がキャパビリティを許可していない、RBAC が操作を拒否、またはワークスペースのクレジットが凍結されています(CREDITS_FROZEN)。
NOT_FOUND404対象のリソースが存在しないか、閲覧できません。リソースが存在しないか、このワークスペースから閲覧できません(API キー・データセット・注文番号など)。
DATA_NOT_FOUND404利用可能なデータがありません——例えば cache モードでキャッシュエンティティがない場合。cache モードでキャッシュが無い、またはプラットフォームのユーザーが不明です。
METHOD_NOT_ALLOWED—このパスではサポートされない HTTP メソッドです。既存パスに未対応の HTTP メソッドを使用しています(GET のみのエンドポイントへの POST など)。
VALIDATION400リクエストパラメータの検証に失敗しました。error.details.fields を参照してください。リクエストパラメータの検証に失敗しました:limit の範囲外、不正な cursor、ID の形式誤りなど。error.details.fields を参照してください。
CONFLICT409状態の競合。例:リソースの重複や冪等キーの再利用。現在の状態と競合しています。リソースの重複や冪等キーの再利用など。
RATE_LIMIT_EXCEEDED429リクエストが多すぎます。すべてのレート制限ゲートで統一された 429 コードです(details.scope でゲートを識別)。Retry-After に従って再試行してください。いずれかのレート制限ゲートに拒否されました:キー分間ウィンドウ、ワークスペース時間ウィンドウ、キーの追加時間上限、RPS バケット(details.scope で識別)。Retry-After に従って再試行してください。
RATE_LIMITER_UNAVAILABLE503レートリミットのバックエンドが一時的に利用できません。リクエストは拒否されましたがクォータは消費されていません。Retry-After に従って再試行してください。共有レート制限ストア(Redis)が一時的に利用できません。fail-closed で拒否され、クォータは消費しません。
REGISTRATION_DISABLED403直接のサインアップは終了しています——Google または GitHub でのサインインをご利用ください。このデプロイでは直接サインアップが終了しています。Google/GitHub でのサインインをご利用ください。
OAUTH_PROVIDER_UNAVAILABLE404このサインインプロバイダーは現在利用できません。別のプロバイダーをお試しください。このサインインプロバイダーはデプロイで未設定か、一時的に利用できません。
PASSWORD_CHANGE_REQUIRED—パスワードが運営者によってリセットされました。続行するにはパスワードを変更してください。運用者によるパスワードリセット後、変更するまでセッションを続行できません。
INSUFFICIENT_CREDITS402クレジットが不足しています。チャージしてから再試行してください。ワークスペースのクレジット残高がリクエスト価格に満たません。details に必要/残クレジットが入ります。
CREDITS_FROZEN403このワークスペースのクレジットは凍結されています。チャージは可能ですが、解除されるまでデータ API リクエストは拒否されます。支払い巻き戻し(ディープ再編)でクレジットが凍結中:チャージは可能、データ API リクエストは拒否されます。
NOT_IMPLEMENTED501このキャパビリティは予約済みですが、V1 では未実装です。キャパビリティは予約済みですが、V1 では未実装です。
UPSTREAM_ERROR502利用可能な上流のデータ経路がすべて失敗しました。このリクエストは課金されません。利用可能なすべての上流データ経路が失敗しました。本リクエストは課金されません。
INTERNALdefault予期しないサーバーエラーです。報告時に request_id をご提示ください。予期しないサーバーエラーです。報告時に request_id をご提示ください。
PAYMENT_AMOUNT_UNAVAILABLE402指定のチャージ金額の枠がすべて埋まっています。金額を変えるか、後でもう一度お試しください。指定のチャージ金額の枠がすべて埋まっています。金額を変えるか、後でもう一度お試しください。
PAYMENT_NETWORK_DISABLED400選択されたネットワーク/アセットは現在注文を受け付けていません。選択したネットワーク/資産は現在チャージ注文を受け付けていません。
PAYMENT_ORDER_EXPIRED—決済注文は支払い期間を過ぎており、これ以上支払えません。新しい注文を作成してください。注文が 30 分の支払い期間を過ぎました。新しい注文を作成してください。
PAYMENT_PENDING_LIMIT409ワークスペースの保留中の決済注文が上限に達しています。既存の注文を完了するか、失効をお待ちください。保留中の注文数が上限に達しました。完了するか失効をお待ちください。
PAYMENT_DUPLICATE_RATE409この冪等キーは別の注文条件で既に使用されています。元の注文を使うか、新しい冪等キーを指定してください。冪等キーが別の注文条件で使用済みです。元の注文を再利用するか、新しいキーをご利用ください。
PAYMENT_RATE_STALE409この通貨のレートが古いため、チャージ注文は一時的に拒否されています。後ほどお試しください。為替レートが古いため、新しいチャージ注文は一時的に拒否されています。後でもう一度お試しください。
DATASET_NOT_AVAILABLE409このデータセットは現在注文を受け付けていません——収集中または一時停止(コンプライアンス)中です。このデータセットは収集中か一時停止(コンプライアンス)中のため、注文を受け付けていません。
DATASET_DUPLICATE_ORDER409このべき等キーは別のデータセット注文で既に使用されています。元の注文を再利用するか、新しいキーを指定してください。冪等キーが別のデータセット注文で使用済みです。元の注文を再利用するか、新しいキーをご利用ください。
PAYMENT_PROVIDER_DISABLED400この決済プロバイダーは無効か未設定です。支払いプロバイダーが無効か未設定です。
CUSTOM_REQUEST_LIMIT_EXCEEDED403カスタムサービスのリクエスト上限に達しました。1 自然月あたり進行中のカスタムデータリクエストは 5 件までです。来月再度お試しください。カスタムサービスの月次 quota を超過——自然月の進行中カスタムデータリクエストが 5 件を超えています(ビジネス quota、429 レート制限ではありません)。
SITE_BUILD_NOT_CONFIGURED—サイト再ビルドの Webhook が設定されていません。管理コンソールからサイト再ビルドが要求されましたが、サーバーに再ビルド用 Webhook が設定されていません。

ページネーション

リスト系エンドポイントはカーソルページネーションを使用します。limit(1–100、デフォルト 20)と cursor を渡すと、レスポンスの next_cursor が次ページを指します。

GET /v1/x/users/newdev/posts?limit=20&cursor=eyJpZCI6MTAwfQ

リストを最後まで取得すると next_cursor は null(または不在)になります。カーソルは不透明です。解析したり、データソース変更後も依存したりしないでください。

鮮度管理

すべてのデータエンドポイントは freshness(cache | default | live)と max_age(秒)を受け付けます。freshness は max_age より、max_age はプラットフォーム TTL より優先され、デフォルトは default です。

freshness=cache

上流へ絶対にアクセスしません。キャッシュがない場合は 404 DATA_NOT_FOUND を返します。

freshness=default

プラットフォームが TTL とソースポリシーで判断します。キャッシュ、保存済み、または新規取得データ。

freshness=live

最新の取得を要求し、追加費用がかかる場合があります(ライブ倍率)。失敗時は 502 UPSTREAM_ERROR を返します——偽の新鮮データは決して返しません。

各データレスポンスは meta.freshness に実際の挙動(実効モード、データ年齢、提供レイヤー)を報告します。下の「レスポンスメタデータ」を参照してください。

Freshness 3ストラテジーを詳しく — モードごとの課金とレイテンシ →

レート制限

リクエストは API キー(および Workspace)単位でレート制限されます。制限を超えると、秒数を示す Retry-After ヘッダー付きの 429 RATE_LIMITED が返ります。

キーごとのリクエスト上限と月間消費上限はコンソールで設定できます。

レスポンスメタデータ

すべての /v1/* 成功レスポンスには meta.request_id と、鮮度および課金のメタデータが含まれます:

フィールド型必須説明
modecache | default | live必須Effective mode after merging param > max_age > source policy (D-004).
age_secondsinteger | null任意Age of served data; null when unknown.
source_layercache | db | upstream必須Which layer served the response (PRD §10).
staleboolean任意True when stale data was served under stale_if_error / SWR (D-004).
billing.amount_creditsinteger必須Micro-USD (1e-6 USD) actually charged for this request.
billing.cache_hitboolean必須—

フィールドの注記は契約英語の原文のまま表示されます。

API エンドポイント

28 プラットフォーム全体の 176 個のドキュメント済みエンドポイント(パラメータ・レスポンス・サンプルペイロード付き、プラットフォーム別にグループ化)。正規化スキーマは各製品ページにあります。

GET/v1/x/users/{username}x.profile

X プロフィール

パラメータ場所必須型説明
usernamepath必須stringX ハンドル(先頭の @ は付けない)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200リクエストされたユーザーの正規化プロフィール。

404 — データがありません(例:キャッシュのみモードで該当エンティティがキャッシュされていない、またはユーザー名が未知)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/x/users/newdev"

レスポンス例

{
  "data": {
    "id": "2244994945",
    "platform": "x",
    "type": "profile",
    "username": "newdev",
    "display_name": "New Dev",
    "description": "Building data APIs.",
    "url": "https://x.com/newdev",
    "profile_image_url": "https://cdn.example.com/avatar/newdev.jpg",
    "banner_image_url": null,
    "location": "Berlin",
    "verified": false,
    "created_at": "2019-04-01T10:15:00Z",
    "metrics": {
      "followers": 1204,
      "following": 312,
      "posts": 870,
      "likes": 15200
    },
    "fetched_at": "2026-09-18T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 120,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/x/users/{username}/postsx.user_posts

X ユーザーの投稿

パラメータ場所必須型説明
usernamepath必須stringX ハンドル(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該ユーザーの正規化投稿をページングして返します。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/x/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "1842951234567890123",
      "platform": "x",
      "type": "post",
      "author": {
        "id": "2244994945",
        "username": "newdev",
        "display_name": "New Dev",
        "verified": false
      },
      "text": "One API for internet data.",
      "lang": "en",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 128,
        "reposts": 12,
        "replies": 4,
        "quotes": 1,
        "views": 5230
      },
      "in_reply_to": null,
      "attachments": [],
      "fetched_at": "2026-09-18T09:00:00Z"
    },
    {
      "id": "1842909876543210987",
      "platform": "x",
      "type": "post",
      "author": {
        "id": "2244994945",
        "username": "newdev",
        "display_name": "New Dev",
        "verified": false
      },
      "text": "Freshness modes explained.",
      "lang": "en",
      "created_at": "2026-09-16T08:00:00Z",
      "metrics": {
        "likes": 64,
        "reposts": 3,
        "replies": 1,
        "quotes": 0,
        "views": 1200
      },
      "in_reply_to": null,
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/p/1.jpg",
          "width": 1024,
          "height": 512
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": "eyJpZCI6IjE4MjkwMDAwMDAwMDAwMDAwIn0",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/x/posts/{id}x.post

X 投稿詳細

パラメータ場所必須型説明
idpath必須stringX 投稿 id(プラットフォームネイティブの数値文字列)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化された投稿。

404 — キャッシュ・DB・上流のいずれにも投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/x/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "1842951234567890123",
    "platform": "x",
    "type": "post",
    "author": {
      "id": "2244994945",
      "username": "newdev",
      "display_name": "New Dev",
      "verified": false
    },
    "text": "One API for internet data.",
    "lang": "en",
    "created_at": "2026-09-17T12:34:56Z",
    "metrics": {
      "likes": 128,
      "reposts": 12,
      "replies": 4,
      "quotes": 1,
      "views": 5230
    },
    "in_reply_to": null,
    "attachments": [],
    "fetched_at": "2026-09-18T07:30:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 3600,
      "source_layer": "cache",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": true
    }
  }
}
GET/v1/x/posts/{id}/commentsx.comments

X 投稿の返信

パラメータ場所必須型説明
idpath必須stringX 投稿 id(プラットフォームネイティブの数値文字列)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該投稿の正規化コメントをページングして返します。

404 — 投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/x/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "1842951999999999999",
      "platform": "x",
      "type": "comment",
      "post_id": "1842951234567890123",
      "author": {
        "id": "1122334455",
        "username": "curiouscat",
        "display_name": "Curious Cat",
        "verified": false
      },
      "text": "Great post!",
      "created_at": "2026-09-17T13:00:00Z",
      "metrics": {
        "likes": 3
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 600,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/x/search/postsx.search_posts

X 投稿検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200検索語に一致する正規化投稿をページングして返します。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/x/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "1841001111111111111",
      "platform": "x",
      "type": "post",
      "author": {
        "id": "5566778899",
        "username": "datafan",
        "display_name": "Data Fan",
        "verified": true
      },
      "text": "fetchpi launch day!",
      "lang": "en",
      "created_at": "2026-09-15T10:00:00Z",
      "metrics": {
        "likes": 9,
        "reposts": 2,
        "replies": 0,
        "quotes": 0,
        "views": 340
      },
      "in_reply_to": null,
      "attachments": [],
      "fetched_at": "2026-09-18T09:05:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "live",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/x/users/{username}/followersx.user_followers

フォロワー一覧

パラメータ場所必須型説明
usernamepath必須stringX ハンドル(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/x/users/newdev/followers"

レスポンス例

{
  "data": [
    {
      "id": "2244994945",
      "platform": "x",
      "type": "profile",
      "username": "newdev",
      "display_name": "New Dev",
      "description": "Building data APIs.",
      "url": "https://x.com/newdev",
      "profile_image_url": "https://cdn.example.com/avatar/newdev.jpg",
      "banner_image_url": null,
      "location": "Berlin",
      "verified": false,
      "created_at": "2019-04-01T10:15:00Z",
      "metrics": {
        "followers": 1204,
        "following": 312,
        "posts": 870,
        "likes": 15200
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/x/users/{username}/followingx.user_following

フォロー一覧

パラメータ場所必須型説明
usernamepath必須stringX ハンドル(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/x/users/newdev/following"

レスポンス例

{
  "data": [
    {
      "id": "2244994945",
      "platform": "x",
      "type": "profile",
      "username": "newdev",
      "display_name": "New Dev",
      "description": "Building data APIs.",
      "url": "https://x.com/newdev",
      "profile_image_url": "https://cdn.example.com/avatar/newdev.jpg",
      "banner_image_url": null,
      "location": "Berlin",
      "verified": false,
      "created_at": "2019-04-01T10:15:00Z",
      "metrics": {
        "followers": 1204,
        "following": 312,
        "posts": 870,
        "likes": 15200
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/x/users/{username}/repliesx.user_replies

ユーザー返信一覧

パラメータ場所必須型説明
usernamepath必須stringX ハンドル(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/x/users/newdev/replies"

レスポンス例

{
  "data": [
    {
      "id": "1842951234567890123",
      "platform": "x",
      "type": "post",
      "author": {
        "id": "2244994945",
        "username": "newdev",
        "display_name": "New Dev",
        "verified": false
      },
      "text": "One API for internet data.",
      "lang": "en",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 128,
        "reposts": 12,
        "replies": 4,
        "quotes": 1,
        "views": 5230
      },
      "in_reply_to": null,
      "attachments": [],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/x/users/{username}/mediax.user_media

ユーザーメディア一覧

パラメータ場所必須型説明
usernamepath必須stringX ハンドル(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/x/users/newdev/media"

レスポンス例

{
  "data": [
    {
      "id": "1842951234567890123",
      "platform": "x",
      "type": "post",
      "author": {
        "id": "2244994945",
        "username": "newdev",
        "display_name": "New Dev",
        "verified": false
      },
      "text": "One API for internet data.",
      "lang": "en",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 128,
        "reposts": 12,
        "replies": 4,
        "quotes": 1,
        "views": 5230
      },
      "in_reply_to": null,
      "attachments": [],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/x/trendsx.trends

トレンド取得

パラメータ場所必須型説明
qquery任意stringトレンドの国(任意)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/x/trends?q=fetchpi"

レスポンス例

{
  "data": {
    "platform": "x",
    "type": "trends",
    "country": "united states",
    "trends": [
      {
        "name": "#FetchPI",
        "post_count": 52341
      },
      {
        "name": "Normalized Entities",
        "post_count": 8800,
        "url": "https://x.com/search?q=normalized"
      }
    ],
    "fetched_at": "2026-09-18T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/users/{username}tiktok.profile

TikTok プロフィール

パラメータ場所必須型説明
usernamepath必須stringTikTok uniqueId ハンドル(先頭の @ は付けない)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200リクエストされたユーザーの正規化プロフィール。

404 — データがありません(例:キャッシュのみモードで該当エンティティがキャッシュされていない、またはユーザー名が未知)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/users/newdev"

レスポンス例

{
  "data": {
    "id": "7004994945112",
    "platform": "tiktok",
    "type": "profile",
    "username": "creatordev",
    "display_name": "Creator Dev",
    "description": "Short videos about data APIs.",
    "url": "https://fetchpi.com",
    "profile_image_url": "https://cdn.example.com/avatar/creatordev.jpg",
    "verified": true,
    "is_private": false,
    "created_at": "2017-10-01T00:00:00Z",
    "metrics": {
      "followers": 88230,
      "following": 412,
      "posts": 356,
      "likes": 2140000
    },
    "fetched_at": "2026-09-18T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 120,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/users/{username}/poststiktok.user_posts

TikTok ユーザー投稿一覧

パラメータ場所必須型説明
usernamepath必須stringTikTok uniqueId ハンドル(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該ユーザーの正規化投稿をページングして返します。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "7410886000000000001",
      "platform": "tiktok",
      "type": "post",
      "author": {
        "id": "7004994945112",
        "username": "creatordev",
        "display_name": "Creator Dev",
        "verified": true
      },
      "text": "One API for every platform.",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 864,
        "comments": 42,
        "shares": 87,
        "collects": 310,
        "views": 154203
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover.jpeg",
          "duration_ms": 34567
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    },
    {
      "id": "7410886000000000002",
      "platform": "tiktok",
      "type": "post",
      "author": {
        "id": "7004994945112",
        "username": "creatordev",
        "display_name": "Creator Dev",
        "verified": true
      },
      "text": "Photo dump from launch week.",
      "created_at": "2026-09-16T08:00:00Z",
      "metrics": {
        "likes": 412,
        "comments": 18,
        "shares": 9,
        "collects": 77,
        "views": 52100
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/p/1.jpeg"
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": "eyJ2IjoxLCJzcmMiOiJ4dGhpcmQiLCJwb3MiOiIxNzU4MzI2NDAwIn0",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/posts/{id}tiktok.post

TikTok 動画詳細

パラメータ場所必須型説明
idpath必須stringTikTok 動画 id(プラットフォームネイティブの数値文字列)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化された投稿。

404 — キャッシュ・DB・上流のいずれにも投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7410886000000000001",
    "platform": "tiktok",
    "type": "post",
    "author": {
      "id": "7004994945112",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "verified": true
    },
    "text": "One API for every platform.",
    "created_at": "2026-09-17T12:34:56Z",
    "metrics": {
      "likes": 864,
      "comments": 42,
      "shares": 87,
      "collects": 310,
      "views": 154203
    },
    "attachments": [
      {
        "type": "video",
        "preview_image_url": "https://cdn.example.com/cover.jpeg",
        "duration_ms": 34567
      }
    ],
    "fetched_at": "2026-09-18T07:30:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 3600,
      "source_layer": "cache",
      "stale": false
    },
    "billing": {
      "amount_credits": 0,
      "cache_hit": true
    }
  }
}
GET/v1/tiktok/posts/{id}/commentstiktok.comments

TikTok 動画コメント一覧

パラメータ場所必須型説明
idpath必須stringTikTok 動画 id(プラットフォームネイティブの数値文字列)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該投稿の正規化コメントをページングして返します。

404 — 投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "7411111111000000001",
      "platform": "tiktok",
      "type": "comment",
      "post_id": "7410886000000000001",
      "author": {
        "id": "3311223344",
        "username": "curiousfan",
        "display_name": "Curious Fan",
        "verified": false
      },
      "text": "This is the future of data APIs.",
      "created_at": "2026-09-17T13:00:00Z",
      "metrics": {
        "likes": 12,
        "replies": 2
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 600,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/search/poststiktok.search_posts

TikTok 動画検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200検索語に一致する正規化投稿をページングして返します。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "7410999000000000001",
      "platform": "tiktok",
      "type": "post",
      "author": {
        "id": "5566778899001",
        "username": "datafan",
        "display_name": "Data Fan",
        "verified": true
      },
      "text": "normalized entities for every feed!",
      "created_at": "2026-09-15T10:00:00Z",
      "metrics": {
        "likes": 91,
        "comments": 3,
        "shares": 12,
        "collects": 24,
        "views": 40320
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/s1.jpeg",
          "duration_ms": 21000
        }
      ],
      "fetched_at": "2026-09-18T09:05:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "live",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/posts/{id}/comments/{comment_id}/repliestiktok.comment_replies

コメント返信一覧

パラメータ場所必須型説明
idpath必須stringTikTok 動画 id(プラットフォームネイティブの数値文字列)。
comment_idpath必須string返信を一覧表示する親コメントの id。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/posts/1842951234567890123/comments/9901222200001001/replies"

レスポンス例

{
  "data": [
    {
      "id": "7411111111000000001",
      "platform": "tiktok",
      "type": "comment",
      "post_id": "7410886000000000001",
      "author": {
        "id": "3311223344",
        "username": "curiousfan",
        "display_name": "Curious Fan",
        "verified": false
      },
      "text": "This is the future of data APIs.",
      "created_at": "2026-09-17T13:00:00Z",
      "metrics": {
        "likes": 12,
        "replies": 2
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/users/{username}/followerstiktok.user_followers

フォロワー一覧

パラメータ場所必須型説明
usernamepath必須stringTikTok uniqueId ハンドル(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/users/newdev/followers"

レスポンス例

{
  "data": [
    {
      "id": "7004994945112",
      "platform": "tiktok",
      "type": "profile",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "description": "Short videos about data APIs.",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/avatar/creatordev.jpg",
      "verified": true,
      "is_private": false,
      "created_at": "2017-10-01T00:00:00Z",
      "metrics": {
        "followers": 88230,
        "following": 412,
        "posts": 356,
        "likes": 2140000
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/users/{username}/followingtiktok.user_following

フォロー一覧

パラメータ場所必須型説明
usernamepath必須stringTikTok uniqueId ハンドル(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/users/newdev/following"

レスポンス例

{
  "data": [
    {
      "id": "7004994945112",
      "platform": "tiktok",
      "type": "profile",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "description": "Short videos about data APIs.",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/avatar/creatordev.jpg",
      "verified": true,
      "is_private": false,
      "created_at": "2017-10-01T00:00:00Z",
      "metrics": {
        "followers": 88230,
        "following": 412,
        "posts": 356,
        "likes": 2140000
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/search/userstiktok.search_users

ユーザー検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/search/users?q=fetchpi"

レスポンス例

{
  "query": "data api",
  "data": [
    {
      "id": "7004994945112",
      "platform": "tiktok",
      "type": "profile",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "description": "Short videos about data APIs.",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/avatar/creatordev.jpg",
      "verified": true,
      "is_private": false,
      "created_at": "2017-10-01T00:00:00Z",
      "metrics": {
        "followers": 88230,
        "following": 412,
        "posts": 356,
        "likes": 2140000
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/hashtags/{tag}tiktok.hashtag

ハッシュタグ取得

パラメータ場所必須型説明
tagpath必須stringTikTok のハッシュタグ名(# を付けない)。投稿リストでは上流のチャレンジ id をそのまま転送します。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/hashtags/trending"

レスポンス例

{
  "data": {
    "id": "1600000000000000001",
    "platform": "tiktok",
    "type": "hashtag",
    "name": "fetchpi",
    "description": "One API for every platform feed.",
    "cover_image_url": "https://p19-sign-sg.tiktokcdn.com/aweme/hashtag/fetchpi.jpeg",
    "metrics": {
      "views": 4820000000
    },
    "fetched_at": "2026-09-18T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/hashtags/{tag}/poststiktok.hashtag_posts

ハッシュタグ動画一覧

パラメータ場所必須型説明
tagpath必須stringTikTok のハッシュタグ名(# を付けない)。投稿リストでは上流のチャレンジ id をそのまま転送します。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/hashtags/trending/posts"

レスポンス例

{
  "data": [
    {
      "id": "7410886000000000001",
      "platform": "tiktok",
      "type": "post",
      "author": {
        "id": "7004994945112",
        "username": "creatordev",
        "display_name": "Creator Dev",
        "verified": true
      },
      "text": "One API for every platform.",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 864,
        "comments": 42,
        "shares": 87,
        "collects": 310,
        "views": 154203
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover.jpeg",
          "duration_ms": 34567
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/musics/{id}tiktok.music

音楽詳細取得

パラメータ場所必須型説明
idpath必須stringTikTok のプラットフォームネイティブなメディア id(/musics は音楽 id、/live はライブルーム id、/download は動画 id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/musics/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7416880000000000001",
    "platform": "tiktok",
    "type": "music",
    "title": "Sim Song (prod. Creator Dev)",
    "author_name": "Creator Dev",
    "duration_ms": 34567,
    "cover_image_url": "https://p16-sign-sg.tiktokcdn.com/aweme/music/7416880000000000001.jpeg",
    "metrics": {
      "videos": 128000
    },
    "fetched_at": "2026-09-18T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/live/{id}tiktok.live_room

ライブルーム取得

パラメータ場所必須型説明
idpath必須stringTikTok のプラットフォームネイティブなメディア id(/musics は音楽 id、/live はライブルーム id、/download は動画 id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/live/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "8800000000000000001",
    "platform": "tiktok",
    "type": "live_room",
    "title": "Live: normalized entities Q&A",
    "username": "creatordev",
    "display_name": "Creator Dev",
    "status": "LIVE",
    "viewer_count": 2345,
    "started_at": "2026-09-20T00:00:00Z",
    "cover_image_url": "https://p19-sign-sg.tiktokcdn.com/aweme/live/8800000000000000001.jpeg",
    "fetched_at": "2026-09-18T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/search/livetiktok.live_search

ライブ検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/search/live?q=fetchpi"

レスポンス例

{
  "query": "data talk",
  "data": [
    {
      "id": "8800000000000000001",
      "platform": "tiktok",
      "type": "live_room",
      "title": "Live: normalized entities Q&A",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "status": "LIVE",
      "viewer_count": 2345,
      "started_at": "2026-09-20T00:00:00Z",
      "cover_image_url": "https://p19-sign-sg.tiktokcdn.com/aweme/live/8800000000000000001.jpeg",
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/homefeedtiktok.homefeed

ホームフィード取得

パラメータ場所必須型説明
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/homefeed"

レスポンス例

{
  "data": [
    {
      "id": "7410886000000000001",
      "platform": "tiktok",
      "type": "post",
      "author": {
        "id": "7004994945112",
        "username": "creatordev",
        "display_name": "Creator Dev",
        "verified": true
      },
      "text": "One API for every platform.",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 864,
        "comments": 42,
        "shares": 87,
        "collects": 310,
        "views": 154203
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover.jpeg",
          "duration_ms": 34567
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/tiktok/download/{id}tiktok.download

ダウンロード解決

パラメータ場所必須型説明
idpath必須stringTikTok のプラットフォームネイティブなメディア id(/musics は音楽 id、/live はライブルーム id、/download は動画 id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/tiktok/download/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7412050000000000001",
    "platform": "tiktok",
    "type": "download",
    "play_url": "https://v16-webapp.tiktok.com/aweme/v1/play/?video_id=7412050000000000001&no-watermark=1",
    "preview_image_url": "https://p19-sign-sg.tiktokcdn.com/aweme/cover/7412050000000000001.jpeg",
    "duration_ms": 34567,
    "fetched_at": "2026-09-18T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/ig/users/{username}ig.profile

Instagram プロフィール

パラメータ場所必須型説明
usernamepath必須stringInstagram ユーザー名(先頭の @ は付けない)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200リクエストされたユーザーの正規化プロフィール。

404 — データがありません(例:キャッシュのみモードで該当エンティティがキャッシュされていない、またはユーザー名が未知)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/users/newdev"

レスポンス例

{
  "data": {
    "id": "1295448945",
    "platform": "instagram",
    "type": "profile",
    "username": "creatordev",
    "display_name": "Creator Dev",
    "description": "Photo dumps and API graphs.",
    "url": "https://fetchpi.com",
    "profile_image_url": "https://cdn.example.com/profile_pic/creatordev.jpg",
    "verified": true,
    "is_private": false,
    "created_at": null,
    "metrics": {
      "followers": 51230,
      "following": 310,
      "posts": 862
    },
    "fetched_at": "2026-09-18T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 120,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/ig/users/{username}/postsig.user_posts

Instagram ユーザー投稿一覧

パラメータ場所必須型説明
usernamepath必須stringInstagram ユーザー名(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該ユーザーの正規化投稿をページングして返します。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "CwxOne00001",
      "platform": "instagram",
      "type": "post",
      "author": {
        "id": "1295448945",
        "username": "creatordev",
        "display_name": "Creator Dev",
        "verified": true
      },
      "text": "Carousel dump",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 1204,
        "comments": 36,
        "views": 0
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/1.jpg"
        },
        {
          "type": "photo",
          "url": "https://cdn.example.com/2.jpg"
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    },
    {
      "id": "CwxTwo00002",
      "platform": "instagram",
      "type": "post",
      "author": {
        "id": "1295448945",
        "username": "creatordev",
        "display_name": "Creator Dev",
        "verified": true
      },
      "text": "Reel day",
      "created_at": "2026-09-16T08:00:00Z",
      "metrics": {
        "likes": 640,
        "comments": 21,
        "views": 60110
      },
      "attachments": [
        {
          "type": "video",
          "url": "https://cdn.example.com/reel2.mp4",
          "duration_ms": 30100
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": "QVFBQ2daOTItcGxhdGZvcm0",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/ig/posts/{id}ig.post

Instagram 投稿詳細

パラメータ場所必須型説明
idpath必須stringInstagram 投稿の SHORTCODE(/p/{code} のアドレス指定キー)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化された投稿。

404 — キャッシュ・DB・上流のいずれにも投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "Creel00001",
    "platform": "instagram",
    "type": "post",
    "author": {
      "id": "1295448945",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "verified": true
    },
    "text": "Reel day",
    "created_at": "2026-09-17T12:34:56Z",
    "metrics": {
      "likes": 1204,
      "comments": 36,
      "views": 88231
    },
    "attachments": [
      {
        "type": "video",
        "url": "https://cdn.example.com/reel.mp4",
        "duration_ms": 32500
      }
    ],
    "fetched_at": "2026-09-18T07:30:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 3600,
      "source_layer": "cache",
      "stale": false
    },
    "billing": {
      "amount_credits": 0,
      "cache_hit": true
    }
  }
}
GET/v1/ig/posts/{id}/commentsig.comments

Instagram 投稿コメント一覧

パラメータ場所必須型説明
idpath必須stringInstagram 投稿の SHORTCODE(/p/{code} のアドレス指定キー)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該投稿の正規化コメントをページングして返します。

404 — 投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "17990000000000001",
      "platform": "instagram",
      "type": "comment",
      "post_id": "CwxOne00001",
      "author": {
        "id": "8811223344",
        "username": "curiousfan",
        "display_name": "Curious Fan",
        "verified": false
      },
      "text": "Clean normalized shape!",
      "created_at": "2026-09-17T13:00:00Z",
      "metrics": {
        "likes": 5
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 600,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/ig/search/postsig.search_posts

Instagram 投稿検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200検索語に一致する正規化投稿をページングして返します。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "Creel00001",
      "platform": "instagram",
      "type": "post",
      "author": {
        "id": "5566778899001",
        "username": "datafan",
        "display_name": "Data Fan",
        "verified": true
      },
      "text": "search hit one",
      "created_at": "2026-09-15T10:00:00Z",
      "metrics": {
        "likes": 341,
        "comments": 12,
        "views": 88231
      },
      "attachments": [
        {
          "type": "video",
          "url": "https://cdn.example.com/reel1.mp4",
          "duration_ms": 32500
        }
      ],
      "fetched_at": "2026-09-18T09:05:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "live",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/ig/posts/{id}/comments/{comment_id}/repliesig.comment_replies

コメント返信一覧

パラメータ場所必須型説明
idpath必須stringInstagram 投稿の SHORTCODE(/p/{code} のアドレス指定キー)。
comment_idpath必須string返信を一覧表示する親コメントの id。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/posts/1842951234567890123/comments/9901222200001001/replies"

レスポンス例

{
  "data": [
    {
      "id": "17990000000000001",
      "platform": "instagram",
      "type": "comment",
      "post_id": "CwxOne00001",
      "author": {
        "id": "8811223344",
        "username": "curiousfan",
        "display_name": "Curious Fan",
        "verified": false
      },
      "text": "Clean normalized shape!",
      "created_at": "2026-09-17T13:00:00Z",
      "metrics": {
        "likes": 5
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/ig/users/{username}/followersig.user_followers

フォロワー一覧

パラメータ場所必須型説明
usernamepath必須stringInstagram ユーザー名(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/users/newdev/followers"

レスポンス例

{
  "data": [
    {
      "id": "1295448945",
      "platform": "instagram",
      "type": "profile",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "description": "Photo dumps and API graphs.",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/profile_pic/creatordev.jpg",
      "verified": true,
      "is_private": false,
      "created_at": null,
      "metrics": {
        "followers": 51230,
        "following": 310,
        "posts": 862
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/ig/users/{username}/followingig.user_following

フォロー一覧

パラメータ場所必須型説明
usernamepath必須stringInstagram ユーザー名(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/users/newdev/following"

レスポンス例

{
  "data": [
    {
      "id": "1295448945",
      "platform": "instagram",
      "type": "profile",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "description": "Photo dumps and API graphs.",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/profile_pic/creatordev.jpg",
      "verified": true,
      "is_private": false,
      "created_at": null,
      "metrics": {
        "followers": 51230,
        "following": 310,
        "posts": 862
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/ig/search/usersig.search_users

ユーザー検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/search/users?q=fetchpi"

レスポンス例

{
  "query": "data api",
  "data": [
    {
      "id": "1295448945",
      "platform": "instagram",
      "type": "profile",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "description": "Photo dumps and API graphs.",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/profile_pic/creatordev.jpg",
      "verified": true,
      "is_private": false,
      "created_at": null,
      "metrics": {
        "followers": 51230,
        "following": 310,
        "posts": 862
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/ig/users/{username}/storiesig.stories

ストーリー一覧

パラメータ場所必須型説明
usernamepath必須stringInstagram ユーザー名(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/users/newdev/stories"

レスポンス例

{
  "data": [
    {
      "id": "CwxOne00001",
      "platform": "instagram",
      "type": "post",
      "author": {
        "id": "1295448945",
        "username": "creatordev",
        "display_name": "Creator Dev",
        "verified": true
      },
      "text": "Carousel dump #1",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 1204,
        "comments": 36,
        "views": 0
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/1.jpg"
        },
        {
          "type": "photo",
          "url": "https://cdn.example.com/2.jpg"
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/ig/users/{username}/highlightsig.highlights

ハイライト一覧

パラメータ場所必須型説明
usernamepath必須stringInstagram ユーザー名(先頭の @ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/users/newdev/highlights"

レスポンス例

{
  "data": [
    {
      "id": "highlight_launch",
      "platform": "instagram",
      "type": "highlight",
      "title": "Launch Week",
      "username": "creatordev",
      "cover_image_url": "https://scontent.cdninstagram.com/hl-launch.jpg",
      "media_count": 3,
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/ig/posts/{id}/likersig.post_likers

投稿いいね一覧

パラメータ場所必須型説明
idpath必須stringInstagram 投稿の SHORTCODE(/p/{code} のアドレス指定キー)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュ・DB・上流のいずれにも投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/ig/posts/1842951234567890123/likers"

レスポンス例

{
  "data": [
    {
      "id": "1295448945",
      "platform": "instagram",
      "type": "profile",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "description": "Photo dumps and API graphs.",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/profile_pic/creatordev.jpg",
      "verified": true,
      "is_private": false,
      "created_at": null,
      "metrics": {
        "followers": 51230,
        "following": 310,
        "posts": 862
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/xhs/users/{username}xhs.profile

小紅書 プロフィール

パラメータ場所必須型説明
usernamepath必須string小紅書(Xiaohongshu)のユーザー id——上流は数値ユーザー id でユーザーを特定するため、値はそのまま転送されます(ハンドル解決は上流の今後の校正項目)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200リクエストされたユーザーの正規化プロフィール。

404 — データがありません(例:キャッシュのみモードで該当エンティティがキャッシュされていない、またはユーザーが未知)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xhs/users/newdev"

レスポンス例

{
  "data": {
    "id": "66f2a1de000000001e0167a1",
    "platform": "xiaohongshu",
    "type": "profile",
    "username": "creatordev",
    "display_name": "Creator Dev",
    "description": "Notes about data APIs.",
    "profile_image_url": "https://cdn.example.com/avatar/creatordev.jpg",
    "verified": true,
    "created_at": null,
    "metrics": {
      "followers": 51230,
      "following": 310,
      "posts": 862,
      "likes": 2140000
    },
    "fetched_at": "2026-09-18T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 120,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/xhs/users/{username}/postsxhs.user_posts

小紅書 ユーザー投稿一覧

パラメータ場所必須型説明
usernamepath必須string小紅書(Xiaohongshu)のユーザー id——上流は数値ユーザー id でユーザーを特定するため、値はそのまま転送されます(ハンドル解決は上流の今後の校正項目)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該ユーザーの正規化投稿をページングして返します。

404 — 不明なユーザーです。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xhs/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "66f2b1de000000001f0167a1",
      "platform": "xiaohongshu",
      "type": "post",
      "author": null,
      "title": "First note on the platform.",
      "text": null,
      "created_at": null,
      "metrics": {
        "likes": 512,
        "collects": 0,
        "comments": 0,
        "shares": 0
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/n1-cover.jpg"
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    },
    {
      "id": "66f2b1de000000001f0167a2",
      "platform": "xiaohongshu",
      "type": "post",
      "author": null,
      "title": "Freshness modes, explained in 30s.",
      "text": null,
      "created_at": null,
      "metrics": {
        "likes": 512,
        "collects": 0,
        "comments": 0,
        "shares": 0
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/n2-cover.jpg"
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": "eyJ2IjoxLCJzcmMiOiJ4dGhpcmQiLCJwb3MiOiI2NmYyYjFkZTAwIn0",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/xhs/posts/{id}xhs.post

小紅書 投稿詳細

パラメータ場所必須型説明
idpath必須string小紅書(Xiaohongshu)のノート id。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化された投稿。

404 — キャッシュ・DB・上流のいずれにも投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xhs/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "66f2b1de000000001f0167a1",
    "platform": "xiaohongshu",
    "type": "post",
    "author": {
      "id": "66f2a1de000000001e0167a1",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "verified": true
    },
    "title": "One API for every feed.",
    "text": "One API for every platform.",
    "created_at": "2026-09-17T12:34:56Z",
    "metrics": {
      "likes": 1204,
      "collects": 310,
      "comments": 42,
      "shares": 87
    },
    "attachments": [
      {
        "type": "video",
        "url": "https://cdn.example.com/note.mp4",
        "preview_image_url": "https://cdn.example.com/note-cover.jpg"
      }
    ],
    "fetched_at": "2026-09-18T07:30:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 3600,
      "source_layer": "cache",
      "stale": false
    },
    "billing": {
      "amount_credits": 0,
      "cache_hit": true
    }
  }
}
GET/v1/xhs/posts/{id}/commentsxhs.comments

小紅書 投稿コメント一覧

パラメータ場所必須型説明
idpath必須string小紅書(Xiaohongshu)のノート id。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該投稿の正規化コメントをページングして返します。

404 — 投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xhs/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "66f3a1de000000001f0267c1",
      "platform": "xiaohongshu",
      "type": "comment",
      "post_id": "66f2b1de000000001f0167a1",
      "author": {
        "id": "66f1a1de000000001f0167d1",
        "username": "curiousfan",
        "display_name": "Curious Fan",
        "verified": false
      },
      "text": "This is the future of data APIs.",
      "created_at": "2026-09-17T13:06:40Z",
      "metrics": {
        "likes": 12,
        "replies": 2
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 600,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/xhs/search/postsxhs.search_posts

小紅書 投稿検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200検索語に一致する正規化投稿をページングして返します。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xhs/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "66f2c1de000000001f0167b1",
      "platform": "xiaohongshu",
      "type": "post",
      "author": null,
      "title": "search hit one",
      "text": null,
      "created_at": null,
      "metrics": {
        "likes": 512,
        "collects": 0,
        "comments": 0,
        "shares": 0
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/s1-cover.jpg"
        }
      ],
      "fetched_at": "2026-09-18T09:05:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "live",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/xhs/posts/{id}/comments/{comment_id}/repliesxhs.comment_replies

コメント返信一覧

パラメータ場所必須型説明
idpath必須stringTikTok 動画 id(プラットフォームネイティブの数値文字列)。
comment_idpath必須stringサブコメントを一覧表示する親コメントの id。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xhs/posts/1842951234567890123/comments/9901222200001001/replies"

レスポンス例

{
  "data": [
    {
      "id": "66f3a1de000000001f0267c1",
      "platform": "xiaohongshu",
      "type": "comment",
      "post_id": "66f2b1de000000001f0167a1",
      "author": {
        "id": "66f1a1de000000001f0167d1",
        "username": "curiousfan",
        "display_name": "Curious Fan",
        "verified": false
      },
      "text": "This is the future of data APIs.",
      "created_at": "2026-09-17T13:06:40Z",
      "metrics": {
        "likes": 12,
        "replies": 2
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/xhs/search/usersxhs.search_users

ユーザー検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xhs/search/users?q=fetchpi"

レスポンス例

{
  "query": "data api",
  "data": [
    {
      "id": "66f2a1de000000001e0167a1",
      "platform": "xiaohongshu",
      "type": "profile",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "description": "Notes about data APIs.",
      "profile_image_url": "https://cdn.example.com/avatar/creatordev.jpg",
      "verified": true,
      "created_at": null,
      "metrics": {
        "followers": 51230,
        "following": 310,
        "posts": 862,
        "likes": 2140000
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/xhs/homefeedxhs.homefeed

ホームフィード取得

パラメータ場所必須型説明
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xhs/homefeed"

レスポンス例

{
  "data": [
    {
      "id": "66f2b1de000000001f0167a1",
      "platform": "xiaohongshu",
      "type": "post",
      "author": {
        "id": "66f2a1de000000001e0167a1",
        "username": "creatordev",
        "display_name": "Creator Dev",
        "verified": true
      },
      "title": "One API for every feed.",
      "text": "One API for every platform.",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 1204,
        "collects": 310,
        "comments": 42,
        "shares": 87
      },
      "attachments": [
        {
          "type": "video",
          "url": "https://cdn.example.com/note.mp4",
          "preview_image_url": "https://cdn.example.com/note-cover.jpg"
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/youtube/users/{username}youtube.profile

YouTube チャンネルプロフィール(チャンネルがユーザー)

パラメータ場所必須型説明
usernamepath必須stringYouTube チャンネル id(UC…)——チャンネルがプラットフォーム上のユーザー本体です。上流はチャンネル id で特定するため、値はそのまま転送されます(ハンドル許容は上流の今後の校正項目)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200リクエストされたユーザーの正規化プロフィール。

404 — データがありません(例:キャッシュのみモードで該当エンティティがキャッシュされていない、またはチャンネルが未知)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/youtube/users/newdev"

レスポンス例

{
  "data": {
    "id": "UCsim0000000000000000777",
    "platform": "youtube",
    "type": "profile",
    "username": "creatordev",
    "display_name": "Creator Dev",
    "description": "Videos about data APIs.",
    "url": "https://www.youtube.com/@creatordev",
    "profile_image_url": "https://cdn.example.com/avatar/creatordev.jpg",
    "verified": true,
    "created_at": "2019-04-01T10:15:00Z",
    "metrics": {
      "subscribers": 51230,
      "views": 19824567,
      "posts": 862
    },
    "fetched_at": "2026-09-18T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 120,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/youtube/users/{username}/postsyoutube.user_posts

YouTube チャンネル動画一覧

パラメータ場所必須型説明
usernamepath必須stringYouTube チャンネル id(UC…)——チャンネルがプラットフォーム上のユーザー本体です。上流はチャンネル id で特定するため、値はそのまま転送されます(ハンドル許容は上流の今後の校正項目)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該ユーザーの正規化投稿をページングして返します。

404 — 不明なチャンネルです。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/youtube/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "wSimVideo0001",
      "platform": "youtube",
      "type": "post",
      "author": null,
      "title": "First video on the platform.",
      "text": null,
      "created_at": "2026-09-16T08:00:00Z",
      "metrics": {
        "views": 0,
        "likes": 0,
        "comments": 0
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/t1.jpg",
          "duration_ms": 30000
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    },
    {
      "id": "wSimVideo0002",
      "platform": "youtube",
      "type": "post",
      "author": null,
      "title": "Freshness modes, explained in 30s.",
      "text": null,
      "created_at": "2026-09-15T08:00:00Z",
      "metrics": {
        "views": 52100,
        "likes": 0,
        "comments": 0
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/t2.jpg",
          "duration_ms": 30000
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": "eyJ2IjoxLCJzcmMiOiJ4dGhpcmQiLCJwb3MiOiJDQlFTRCJ9",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/youtube/posts/{id}youtube.post

YouTube 投稿詳細

パラメータ場所必須型説明
idpath必須stringYouTube 動画 id。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化された投稿。

404 — キャッシュ・DB・上流のいずれにも投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/youtube/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "wSimVideo0001",
    "platform": "youtube",
    "type": "post",
    "author": {
      "id": "UCsim0000000000000000777",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "verified": true
    },
    "title": "One API for every platform.",
    "text": "One API for every platform.",
    "created_at": "2026-09-17T12:34:56Z",
    "metrics": {
      "views": 154203,
      "likes": 864,
      "comments": 42
    },
    "attachments": [
      {
        "type": "video",
        "preview_image_url": "https://cdn.example.com/thumb.jpg",
        "duration_ms": 212000
      }
    ],
    "fetched_at": "2026-09-18T07:30:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 3600,
      "source_layer": "cache",
      "stale": false
    },
    "billing": {
      "amount_credits": 0,
      "cache_hit": true
    }
  }
}
GET/v1/youtube/posts/{id}/commentsyoutube.comments

YouTube 動画コメント一覧

パラメータ場所必須型説明
idpath必須stringYouTube 動画 id。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該投稿の正規化コメントをページングして返します。

404 — 投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/youtube/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "UgxSim000000000001",
      "platform": "youtube",
      "type": "comment",
      "post_id": "wSimVideo0001",
      "author": {
        "id": "UCsimfan000000000001",
        "username": "curiousfan",
        "display_name": "Curious Fan",
        "verified": false
      },
      "text": "This is the future of data APIs.",
      "created_at": "2026-09-17T13:00:00Z",
      "metrics": {
        "likes": 12,
        "replies": 2
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 600,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/youtube/search/postsyoutube.search_posts

YouTube 動画検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200検索語に一致する正規化投稿をページングして返します。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/youtube/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "sSimVideo001",
      "platform": "youtube",
      "type": "post",
      "author": {
        "id": "UCsimsearch00000000001",
        "username": "datafan",
        "display_name": "Data Fan",
        "verified": false
      },
      "title": "normalized entities for every feed!",
      "text": null,
      "created_at": null,
      "metrics": {
        "views": 0,
        "likes": 0,
        "comments": 0
      },
      "attachments": [],
      "fetched_at": "2026-09-18T09:05:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "live",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/youtube/search/usersyoutube.search_users

チャンネル検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/youtube/search/users?q=fetchpi"

レスポンス例

{
  "query": "data api",
  "data": [
    {
      "id": "UCsim0000000000000000777",
      "platform": "youtube",
      "type": "profile",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "description": "Videos about data APIs.",
      "url": "https://www.youtube.com/@creatordev",
      "profile_image_url": "https://cdn.example.com/avatar/creatordev.jpg",
      "verified": true,
      "created_at": "2019-04-01T10:15:00Z",
      "metrics": {
        "subscribers": 51230,
        "views": 19824567,
        "posts": 862
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/reddit/users/{username}reddit.profile

Reddit プロフィール

パラメータ場所必須型説明
usernamepath必須stringReddit ユーザー名(先頭の u/ は付けない)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200リクエストされたユーザーの正規化プロフィール。

404 — データがありません(例:キャッシュのみモードで該当エンティティがキャッシュされていない、またはユーザー名が未知)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/reddit/users/newdev"

レスポンス例

{
  "data": {
    "id": "1a2b3c",
    "platform": "reddit",
    "type": "profile",
    "username": "creatordev",
    "display_name": "Creator Dev",
    "description": "Posts about data APIs.",
    "profile_image_url": "https://cdn.example.com/avatar/creatordev.png",
    "verified": true,
    "created_at": "2019-04-01T08:15:00Z",
    "metrics": {
      "karma_posts": 8620,
      "karma_comments": 15300,
      "total_karma": 24100,
      "followers": 4811
    },
    "fetched_at": "2026-09-18T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 120,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/reddit/users/{username}/postsreddit.user_posts

Reddit ユーザー投稿一覧

パラメータ場所必須型説明
usernamepath必須stringReddit ユーザー名(先頭の u/ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該ユーザーの正規化投稿をページングして返します。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/reddit/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "1simpost01",
      "platform": "reddit",
      "type": "post",
      "author": {
        "id": "7004994945",
        "username": "creatordev",
        "display_name": null,
        "verified": false
      },
      "title": "First post on the platform.",
      "text": "One API for every platform.",
      "url": "https://www.reddit.com/r/dataapi/comments/1simpost01/",
      "created_at": "2026-09-16T19:23:20Z",
      "metrics": {
        "upvotes": 864,
        "downvotes": 12,
        "comments": 42
      },
      "attachments": [],
      "fetched_at": "2026-09-18T09:00:00Z"
    },
    {
      "id": "1simpost02",
      "platform": "reddit",
      "type": "post",
      "author": {
        "id": "7004994945",
        "username": "creatordev",
        "display_name": null,
        "verified": false
      },
      "title": "Freshness modes, explained.",
      "text": "One API for every platform.",
      "url": "https://www.reddit.com/r/dataapi/comments/1simpost02/",
      "created_at": "2026-09-16T08:00:00Z",
      "metrics": {
        "upvotes": 412,
        "downvotes": 9,
        "comments": 18
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/p1-full.jpg",
          "preview_image_url": "https://cdn.example.com/p1.jpg"
        },
        {
          "type": "video",
          "url": "https://cdn.example.com/p2.mp4",
          "preview_image_url": "https://cdn.example.com/p2.jpg"
        }
      ],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": "eyJ2IjoxLCJzcmMiOiJ4dGhpcmQiLCJwb3MiOiJ0M19zaW0ifQ",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/reddit/posts/{id}reddit.post

Reddit 投稿詳細

パラメータ場所必須型説明
idpath必須stringReddit 投稿 id(t3 base36、接頭辞なし)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化された投稿。

404 — キャッシュ・DB・上流のいずれにも投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/reddit/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "1simpost01",
    "platform": "reddit",
    "type": "post",
    "author": {
      "id": "7004994945",
      "username": "creatordev",
      "display_name": null,
      "verified": false
    },
    "title": "One API for every platform.",
    "text": "One API for every platform.",
    "url": "https://www.reddit.com/r/dataapi/comments/1simpost01/",
    "created_at": "2026-09-17T12:34:56Z",
    "metrics": {
      "upvotes": 864,
      "downvotes": 12,
      "comments": 42
    },
    "attachments": [],
    "fetched_at": "2026-09-18T07:30:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 3600,
      "source_layer": "cache",
      "stale": false
    },
    "billing": {
      "amount_credits": 0,
      "cache_hit": true
    }
  }
}
GET/v1/reddit/posts/{id}/commentsreddit.comments

Reddit 投稿コメント一覧

パラメータ場所必須型説明
idpath必須stringReddit 投稿 id(t3 base36、接頭辞なし)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200該投稿の正規化コメントをページングして返します。

404 — 投稿が見つかりません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/reddit/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "simcomment1",
      "platform": "reddit",
      "type": "comment",
      "post_id": "1simpost01",
      "author": {
        "id": "fan0000001",
        "username": "curiousfan",
        "display_name": null,
        "verified": false
      },
      "text": "This is the future of data APIs.",
      "created_at": "2026-09-17T13:06:40Z",
      "metrics": {
        "upvotes": 12,
        "downvotes": 1
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 600,
      "source_layer": "db",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/reddit/search/postsreddit.search_posts

Reddit 投稿検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200検索語に一致する正規化投稿をページングして返します。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/reddit/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "1simsear01",
      "platform": "reddit",
      "type": "post",
      "author": {
        "id": "5566778899",
        "username": "datafan",
        "display_name": null,
        "verified": false
      },
      "title": "normalized entities for every feed!",
      "text": "One API for every platform.",
      "url": "https://www.reddit.com/r/dataapi/comments/1simsear01/",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "upvotes": 91,
        "downvotes": 2,
        "comments": 3
      },
      "attachments": [],
      "fetched_at": "2026-09-18T09:05:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "live",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/reddit/search/usersreddit.search_users

ユーザー検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/reddit/search/users?q=fetchpi"

レスポンス例

{
  "query": "data api",
  "data": [
    {
      "id": "1a2b3c",
      "platform": "reddit",
      "type": "profile",
      "username": "creatordev",
      "display_name": "Creator Dev",
      "description": "Posts about data APIs.",
      "profile_image_url": "https://cdn.example.com/avatar/creatordev.png",
      "verified": true,
      "created_at": "2019-04-01T08:15:00Z",
      "metrics": {
        "karma_posts": 8620,
        "karma_comments": 15300,
        "total_karma": 24100,
        "followers": 4811
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/reddit/subreddits/{name}/postsreddit.subreddit_posts

サブレディット投稿一覧

パラメータ場所必須型説明
namepath必須stringSubreddit 名(先頭の r/ は付けない)。
sortquery任意hot | new | top = hotSubreddit 投稿リストの上流フィード順。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/reddit/subreddits/technology/posts"

レスポンス例

{
  "data": [
    {
      "id": "1simpost01",
      "platform": "reddit",
      "type": "post",
      "author": {
        "id": "7004994945",
        "username": "creatordev",
        "display_name": null,
        "verified": false
      },
      "title": "One API for every platform.",
      "text": "One API for every platform.",
      "url": "https://www.reddit.com/r/dataapi/comments/1simpost01/",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "upvotes": 864,
        "downvotes": 12,
        "comments": 42
      },
      "attachments": [],
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/reddit/users/{username}/commentsreddit.user_comments

ユーザーコメント一覧

パラメータ場所必須型説明
usernamepath必須stringReddit ユーザー名(先頭の u/ は付けない)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — 不明なユーザー名です。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/reddit/users/newdev/comments"

レスポンス例

{
  "data": [
    {
      "id": "simcomment1",
      "platform": "reddit",
      "type": "comment",
      "post_id": "1simpost01",
      "author": {
        "id": "fan0000001",
        "username": "curiousfan",
        "display_name": null,
        "verified": false
      },
      "text": "This is the future of data APIs.",
      "created_at": "2026-09-17T13:06:40Z",
      "metrics": {
        "upvotes": 12,
        "downvotes": 1
      },
      "fetched_at": "2026-09-18T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/users/{username}douyin.profile

Douyin プロフィール

パラメータ場所必須型説明
usernamepath必須stringDouyin(抖音)ユーザーのアドレス指定キー(sec_user_id)——上流は sec_user_id でユーザーを特定するため、値はそのまま転送されます(ハンドル解決は上流の今後の校正項目)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/users/newdev"

レスポンス例

{
  "data": {
    "id": "7004994945113",
    "platform": "douyin",
    "type": "profile",
    "username": "fetchpi_dev",
    "display_name": "FetchPI 抖音站",
    "description": "短视频形式的数据 API 教程。",
    "url": "https://fetchpi.com",
    "profile_image_url": "https://cdn.example.com/avatar/douyin-fetchpi.jpg",
    "verified": true,
    "created_at": "2019-06-01T00:00:00Z",
    "metrics": {
      "followers": 1288000,
      "following": 88,
      "posts": 412,
      "likes": 18600000
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/posts/{id}douyin.post

Douyin 動画詳細

パラメータ場所必須型説明
idpath必須stringDouyin(抖音)動画 id(プラットフォームネイティブな aweme id。/download のアドレス指定キーも兼ねる)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7412050000000001001",
    "platform": "douyin",
    "type": "post",
    "author": {
      "id": "7004994945113",
      "username": "fetchpi_dev",
      "display_name": "FetchPI 抖音站",
      "verified": true
    },
    "text": "一条关于数据 API 的短视频。",
    "created_at": "2026-09-17T12:34:56Z",
    "metrics": {
      "likes": 32810,
      "comments": 1204,
      "shares": 988,
      "collects": 5600,
      "views": 2140000
    },
    "attachments": [
      {
        "type": "video",
        "preview_image_url": "https://cdn.example.com/cover/douyin-7412050000000001001.jpeg",
        "duration_ms": 45678
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/users/{username}/postsdouyin.user_posts

Douyin ユーザーの動画

パラメータ場所必須型説明
usernamepath必須stringDouyin(抖音)ユーザーのアドレス指定キー(sec_user_id)——上流は sec_user_id でユーザーを特定するため、値はそのまま転送されます(ハンドル解決は上流の今後の校正項目)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "7412050000000001001",
      "platform": "douyin",
      "type": "post",
      "author": {
        "id": "7004994945113",
        "username": "fetchpi_dev",
        "display_name": "FetchPI 抖音站",
        "verified": true
      },
      "text": "一条关于数据 API 的短视频。",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 32810,
        "comments": 1204,
        "shares": 988,
        "collects": 5600,
        "views": 2140000
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/douyin-7412050000000001001.jpeg",
          "duration_ms": 45678
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/posts/{id}/commentsdouyin.comments

Douyin 動画コメント

パラメータ場所必須型説明
idpath必須stringDouyin(抖音)動画 id(プラットフォームネイティブな aweme id。/download のアドレス指定キーも兼ねる)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "7411222200000001001",
      "platform": "douyin",
      "type": "comment",
      "post_id": "7412050000000001001",
      "author": {
        "id": "7004994945114",
        "username": "commentfan",
        "display_name": "评论粉丝",
        "verified": false
      },
      "text": "讲得清楚,赞。",
      "created_at": "2026-09-17T13:01:22Z",
      "metrics": {
        "likes": 823,
        "replies": 12
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/posts/{id}/comments/{comment_id}/repliesdouyin.comment_replies

Douyin コメント返信

パラメータ場所必須型説明
idpath必須stringDouyin(抖音)動画 id(プラットフォームネイティブな aweme id。/download のアドレス指定キーも兼ねる)。
comment_idpath必須string返信を一覧表示する親コメントの id。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/posts/1842951234567890123/comments/9901222200001001/replies"

レスポンス例

{
  "data": [
    {
      "id": "7411222200000001001",
      "platform": "douyin",
      "type": "comment",
      "post_id": "7412050000000001001",
      "author": {
        "id": "7004994945114",
        "username": "commentfan",
        "display_name": "评论粉丝",
        "verified": false
      },
      "text": "讲得清楚,赞。",
      "created_at": "2026-09-17T13:01:22Z",
      "metrics": {
        "likes": 823,
        "replies": 12
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/users/{username}/followersdouyin.user_followers

Douyin フォロワー一覧

パラメータ場所必須型説明
usernamepath必須stringDouyin(抖音)ユーザーのアドレス指定キー(sec_user_id)——上流は sec_user_id でユーザーを特定するため、値はそのまま転送されます(ハンドル解決は上流の今後の校正項目)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/users/newdev/followers"

レスポンス例

{
  "data": [
    {
      "id": "7004994945113",
      "platform": "douyin",
      "type": "profile",
      "username": "fetchpi_dev",
      "display_name": "FetchPI 抖音站",
      "description": "短视频形式的数据 API 教程。",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/avatar/douyin-fetchpi.jpg",
      "verified": true,
      "created_at": "2019-06-01T00:00:00Z",
      "metrics": {
        "followers": 1288000,
        "following": 88,
        "posts": 412,
        "likes": 18600000
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/users/{username}/followingdouyin.user_following

Douyin フォロー一覧

パラメータ場所必須型説明
usernamepath必須stringDouyin(抖音)ユーザーのアドレス指定キー(sec_user_id)——上流は sec_user_id でユーザーを特定するため、値はそのまま転送されます(ハンドル解決は上流の今後の校正項目)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/users/newdev/following"

レスポンス例

{
  "data": [
    {
      "id": "7004994945113",
      "platform": "douyin",
      "type": "profile",
      "username": "fetchpi_dev",
      "display_name": "FetchPI 抖音站",
      "description": "短视频形式的数据 API 教程。",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/avatar/douyin-fetchpi.jpg",
      "verified": true,
      "created_at": "2019-06-01T00:00:00Z",
      "metrics": {
        "followers": 1288000,
        "following": 88,
        "posts": 412,
        "likes": 18600000
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/hashtags/{tag}douyin.hashtag

Douyin ハッシュタグ詳細

パラメータ場所必須型説明
tagpath必須stringDouyin ハッシュタグのアドレス指定キー:上流のチャレンジ id ch_id をそのまま転送します。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/hashtags/trending"

レスポンス例

{
  "data": {
    "id": "1655000000000001001",
    "platform": "douyin",
    "type": "hashtag",
    "name": "数据API",
    "description": "话题详情(按上游 ch_id 寻址)。",
    "cover_image_url": "https://cdn.example.com/cover/douyin-hashtag.jpeg",
    "metrics": {
      "views": 960000000,
      "posts": 128000
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/hashtags/{tag}/postsdouyin.hashtag_posts

Douyin ハッシュタグ動画

パラメータ場所必須型説明
tagpath必須stringDouyin ハッシュタグのアドレス指定キー:上流のチャレンジ id ch_id をそのまま転送します。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/hashtags/trending/posts"

レスポンス例

{
  "data": [
    {
      "id": "7412050000000001001",
      "platform": "douyin",
      "type": "post",
      "author": {
        "id": "7004994945113",
        "username": "fetchpi_dev",
        "display_name": "FetchPI 抖音站",
        "verified": true
      },
      "text": "一条关于数据 API 的短视频。",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 32810,
        "comments": 1204,
        "shares": 988,
        "collects": 5600,
        "views": 2140000
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/douyin-7412050000000001001.jpeg",
          "duration_ms": 45678
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/musics/{id}douyin.music

Douyin 音楽詳細

パラメータ場所必須型説明
idpath必須stringDouyin のプラットフォームネイティブなメディア id(/musics は音楽 id、/live はライブルーム id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/musics/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7416880000000001001",
    "platform": "douyin",
    "type": "music",
    "title": "原创音源(数据 API 主题曲)",
    "author_name": "数据工场",
    "duration_ms": 45678,
    "cover_image_url": "https://cdn.example.com/cover/douyin-music.jpeg",
    "metrics": {
      "videos": 128000
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/musics/{id}/postsdouyin.music_posts

Douyin 音楽動画

パラメータ場所必須型説明
idpath必須stringDouyin のプラットフォームネイティブなメディア id(/musics は音楽 id、/live はライブルーム id)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/musics/1842951234567890123/posts"

レスポンス例

{
  "data": [
    {
      "id": "7412050000000001001",
      "platform": "douyin",
      "type": "post",
      "author": {
        "id": "7004994945113",
        "username": "fetchpi_dev",
        "display_name": "FetchPI 抖音站",
        "verified": true
      },
      "text": "一条关于数据 API 的短视频。",
      "created_at": "2026-09-17T12:34:56Z",
      "metrics": {
        "likes": 32810,
        "comments": 1204,
        "shares": 988,
        "collects": 5600,
        "views": 2140000
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/douyin-7412050000000001001.jpeg",
          "duration_ms": 45678
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/live/{id}douyin.live_room

Douyin ライブルーム情報

パラメータ場所必須型説明
idpath必須stringDouyin のプラットフォームネイティブなメディア id(/musics は音楽 id、/live はライブルーム id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/live/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "8800000000000001001",
    "platform": "douyin",
    "type": "live_room",
    "title": "直播:数据 API 问答",
    "username": "fetchpi_dev",
    "display_name": "FetchPI 抖音站",
    "status": "LIVE",
    "viewer_count": 3456,
    "started_at": "2026-09-21T08:00:00Z",
    "cover_image_url": "https://cdn.example.com/cover/douyin-live.jpeg",
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/hot-searchdouyin.hot_search

Douyin ホットサーチボード

パラメータ場所必須型説明
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/hot-search"

レスポンス例

{
  "data": {
    "platform": "douyin",
    "type": "hot_search",
    "words": [
      {
        "word": "数据开放",
        "hot_value": 4821000
      },
      {
        "word": "实体层",
        "hot_value": 3120004
      }
    ],
    "updated_at": "2026-09-21T08:00:00Z",
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/douyin/download/{id}douyin.download

Douyin ダウンロードURL解決

パラメータ場所必須型説明
idpath必須stringDouyin(抖音)動画 id(プラットフォームネイティブな aweme id。/download のアドレス指定キーも兼ねる)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/douyin/download/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7412050000000001001",
    "platform": "douyin",
    "type": "download",
    "play_url": "https://v.douyincdn.com/aweme/7412050000000001001/play.mp4?no-watermark=1",
    "preview_image_url": "https://cdn.example.com/cover/douyin-7412050000000001001.jpeg",
    "duration_ms": 45678,
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/kuaishou/users/{username}kuaishou.profile

Kuaishou プロフィール

パラメータ場所必須型説明
usernamepath必須stringKuaishou(快手)のユーザー id——上流は数値 user_id でユーザーを特定するため、値はそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/kuaishou/users/newdev"

レスポンス例

{
  "data": {
    "id": "3185500122",
    "platform": "kuaishou",
    "type": "profile",
    "username": "fetchpi_ks",
    "display_name": "FetchPI 快手号",
    "description": "快手短视频与数据开放。",
    "url": "https://fetchpi.com",
    "profile_image_url": "https://cdn.example.com/avatar/kuaishou-fetchpi.jpg",
    "verified": false,
    "created_at": "2018-03-15T00:00:00Z",
    "metrics": {
      "followers": 156000,
      "following": 210,
      "posts": 389,
      "likes": 2100000
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/kuaishou/posts/{id}kuaishou.post

Kuaishou 投稿詳細

パラメータ場所必須型説明
idpath必須stringKuaishou の写真 id(プラットフォームネイティブな photo_id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/kuaishou/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "5566778899001",
    "platform": "kuaishou",
    "type": "post",
    "author": {
      "id": "3185500122",
      "username": "fetchpi_ks",
      "display_name": "FetchPI 快手号",
      "verified": false
    },
    "text": "快手短视频数据示例。",
    "created_at": "2026-09-16T10:00:00Z",
    "metrics": {
      "likes": 8642,
      "comments": 512,
      "shares": 87,
      "views": 154000
    },
    "attachments": [
      {
        "type": "video",
        "preview_image_url": "https://cdn.example.com/cover/kuaishou-5566778899001.jpeg",
        "duration_ms": 38400
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/kuaishou/users/{username}/postskuaishou.user_posts

Kuaishou ユーザーの投稿

パラメータ場所必須型説明
usernamepath必須stringKuaishou(快手)のユーザー id——上流は数値 user_id でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/kuaishou/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "5566778899001",
      "platform": "kuaishou",
      "type": "post",
      "author": {
        "id": "3185500122",
        "username": "fetchpi_ks",
        "display_name": "FetchPI 快手号",
        "verified": false
      },
      "text": "快手短视频数据示例。",
      "created_at": "2026-09-16T10:00:00Z",
      "metrics": {
        "likes": 8642,
        "comments": 512,
        "shares": 87,
        "views": 154000
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/kuaishou-5566778899001.jpeg",
          "duration_ms": 38400
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/kuaishou/posts/{id}/commentskuaishou.comments

Kuaishou 投稿コメント

パラメータ場所必須型説明
idpath必須stringKuaishou の写真 id(プラットフォームネイティブな photo_id)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/kuaishou/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "7700112233445",
      "platform": "kuaishou",
      "type": "comment",
      "post_id": "5566778899001",
      "author": {
        "id": "4400112233445",
        "username": "ksfan001",
        "display_name": "快手网友",
        "verified": false
      },
      "text": "这个讲解很实用。",
      "created_at": "2026-09-16T10:20:00Z",
      "metrics": {
        "likes": 96,
        "replies": 3
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/kuaishou/search/postskuaishou.search_posts

Kuaishou 投稿検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/kuaishou/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "5566778899001",
      "platform": "kuaishou",
      "type": "post",
      "author": {
        "id": "3185500122",
        "username": "fetchpi_ks",
        "display_name": "FetchPI 快手号",
        "verified": false
      },
      "text": "快手短视频数据示例。",
      "created_at": "2026-09-16T10:00:00Z",
      "metrics": {
        "likes": 8642,
        "comments": 512,
        "shares": 87,
        "views": 154000
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/kuaishou-5566778899001.jpeg",
          "duration_ms": 38400
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/kuaishou/posts/{id}/comments/{comment_id}/replieskuaishou.comment_replies

Kuaishou コメント返信

パラメータ場所必須型説明
idpath必須stringKuaishou の写真 id(プラットフォームネイティブな photo_id)。
comment_idpath必須stringサブコメントを一覧表示するルートコメントの id。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/kuaishou/posts/1842951234567890123/comments/9901222200001001/replies"

レスポンス例

{
  "data": [
    {
      "id": "7700112233445",
      "platform": "kuaishou",
      "type": "comment",
      "post_id": "5566778899001",
      "author": {
        "id": "4400112233445",
        "username": "ksfan001",
        "display_name": "快手网友",
        "verified": false
      },
      "text": "这个讲解很实用。",
      "created_at": "2026-09-16T10:20:00Z",
      "metrics": {
        "likes": 96,
        "replies": 3
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/kuaishou/search/userskuaishou.search_users

Kuaishou ユーザー検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/kuaishou/search/users?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "3185500122",
      "platform": "kuaishou",
      "type": "profile",
      "username": "fetchpi_ks",
      "display_name": "FetchPI 快手号",
      "description": "快手短视频与数据开放。",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/avatar/kuaishou-fetchpi.jpg",
      "verified": false,
      "created_at": "2018-03-15T00:00:00Z",
      "metrics": {
        "followers": 156000,
        "following": 210,
        "posts": 389,
        "likes": 2100000
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/kuaishou/hashtags/{tag}/postskuaishou.hashtag_posts

Kuaishou タグ投稿

パラメータ場所必須型説明
tagpath必須stringKuaishou タグのアドレス指定キー:上流の general_tag_id をそのまま転送します(このプールにタグ詳細ルートはありません)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/kuaishou/hashtags/trending/posts"

レスポンス例

{
  "data": [
    {
      "id": "5566778899001",
      "platform": "kuaishou",
      "type": "post",
      "author": {
        "id": "3185500122",
        "username": "fetchpi_ks",
        "display_name": "FetchPI 快手号",
        "verified": false
      },
      "text": "快手短视频数据示例。",
      "created_at": "2026-09-16T10:00:00Z",
      "metrics": {
        "likes": 8642,
        "comments": 512,
        "shares": 87,
        "views": 154000
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/kuaishou-5566778899001.jpeg",
          "duration_ms": 38400
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/kuaishou/users/{username}/livekuaishou.live_room

Kuaishou ライブルーム情報

パラメータ場所必須型説明
usernamepath必須stringKuaishou(快手)のユーザー id——上流は数値 user_id でユーザーを特定するため、値はそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/kuaishou/users/newdev/live"

レスポンス例

{
  "data": {
    "id": "8810000000000001001",
    "platform": "kuaishou",
    "type": "live_room",
    "title": "快手直播:数据开放夜",
    "username": "fetchpi_ks",
    "display_name": "FetchPI 快手号",
    "status": "LIVE",
    "viewer_count": 1234,
    "started_at": "2026-09-21T07:30:00Z",
    "cover_image_url": "https://cdn.example.com/cover/kuaishou-live.jpeg",
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/xigua/users/{username}xigua.profile

Xigua Video プロフィール

パラメータ場所必須型説明
usernamepath必須stringXigua(西瓜動画)のユーザー id——上流は数値 user_id でユーザーを特定するため、値はそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xigua/users/newdev"

レスポンス例

{
  "data": {
    "id": "7004994945115",
    "platform": "xigua",
    "type": "profile",
    "username": "fetchpi_xigua",
    "display_name": "FetchPI 西瓜号",
    "description": "中视频数据 API 演示。",
    "url": "https://fetchpi.com",
    "profile_image_url": "https://cdn.example.com/avatar/xigua-fetchpi.jpg",
    "verified": false,
    "created_at": "2020-01-10T00:00:00Z",
    "metrics": {
      "followers": 86500,
      "following": 35,
      "posts": 128,
      "likes": 940000
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/xigua/posts/{id}xigua.post

Xigua Video 動画詳細

パラメータ場所必須型説明
idpath必須stringXigua の動画 id(プラットフォームネイティブな item id。/download のアドレス指定キーも兼ねる)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xigua/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7413050000000001001",
    "platform": "xigua",
    "type": "post",
    "author": {
      "id": "7004994945115",
      "username": "fetchpi_xigua",
      "display_name": "FetchPI 西瓜号",
      "verified": false
    },
    "title": "西瓜视频:一条中视频",
    "text": "中视频格式的数据 API 演示。",
    "created_at": "2026-09-15T08:30:00Z",
    "metrics": {
      "likes": 5120,
      "comments": 320,
      "shares": 140,
      "views": 880000
    },
    "attachments": [
      {
        "type": "video",
        "preview_image_url": "https://cdn.example.com/cover/xigua-7413050000000001001.jpeg",
        "duration_ms": 732000
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/xigua/users/{username}/postsxigua.user_posts

Xigua Video ユーザーの動画

パラメータ場所必須型説明
usernamepath必須stringXigua(西瓜動画)のユーザー id——上流は数値 user_id でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xigua/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "7413050000000001001",
      "platform": "xigua",
      "type": "post",
      "author": {
        "id": "7004994945115",
        "username": "fetchpi_xigua",
        "display_name": "FetchPI 西瓜号",
        "verified": false
      },
      "title": "西瓜视频:一条中视频",
      "text": "中视频格式的数据 API 演示。",
      "created_at": "2026-09-15T08:30:00Z",
      "metrics": {
        "likes": 5120,
        "comments": 320,
        "shares": 140,
        "views": 880000
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/xigua-7413050000000001001.jpeg",
          "duration_ms": 732000
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/xigua/posts/{id}/commentsxigua.comments

Xigua Video 動画コメント

パラメータ場所必須型説明
idpath必須stringXigua の動画 id(プラットフォームネイティブな item id。/download のアドレス指定キーも兼ねる)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xigua/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "7413222200000001001",
      "platform": "xigua",
      "type": "comment",
      "post_id": "7413050000000001001",
      "author": {
        "id": "7004994945116",
        "username": "xiguafan",
        "display_name": "西瓜观众",
        "verified": false
      },
      "text": "中视频也可以结构化。",
      "created_at": "2026-09-15T09:12:00Z",
      "metrics": {
        "likes": 41,
        "replies": 2
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/xigua/search/postsxigua.search_posts

Xigua Video 動画検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xigua/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "7413050000000001001",
      "platform": "xigua",
      "type": "post",
      "author": {
        "id": "7004994945115",
        "username": "fetchpi_xigua",
        "display_name": "FetchPI 西瓜号",
        "verified": false
      },
      "title": "西瓜视频:一条中视频",
      "text": "中视频格式的数据 API 演示。",
      "created_at": "2026-09-15T08:30:00Z",
      "metrics": {
        "likes": 5120,
        "comments": 320,
        "shares": 140,
        "views": 880000
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/xigua-7413050000000001001.jpeg",
          "duration_ms": 732000
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/xigua/download/{id}xigua.download

Xigua Video 再生URL解決

パラメータ場所必須型説明
idpath必須stringXigua の動画 id(プラットフォームネイティブな item id。/download のアドレス指定キーも兼ねる)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/xigua/download/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7413050000000001001",
    "platform": "xigua",
    "type": "download",
    "play_url": "https://v.xiguacdn.com/item/7413050000000001001/play.mp4",
    "preview_image_url": "https://cdn.example.com/cover/xigua-7413050000000001001.jpeg",
    "duration_ms": 732000,
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/toutiao/users/{username}toutiao.profile

Toutiao 作者プロフィール

パラメータ場所必須型説明
usernamepath必須stringToutiao(今日頭条)のユーザー id——上流は数値 user_id でユーザーを特定するため、値はそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/toutiao/users/newdev"

レスポンス例

{
  "data": {
    "id": "1567049494",
    "platform": "toutiao",
    "type": "profile",
    "username": "toutiao_datastudio",
    "display_name": "数据工场头条号",
    "description": "今日头条创作与数据开放。",
    "url": "https://fetchpi.com",
    "profile_image_url": "https://cdn.example.com/avatar/toutiao-fetchpi.jpg",
    "verified": true,
    "created_at": "2016-08-01T00:00:00Z",
    "metrics": {
      "followers": 235000,
      "following": 12,
      "posts": 890,
      "likes": 620000
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/toutiao/posts/{id}toutiao.post

Toutiao 記事詳細

パラメータ場所必須型説明
idpath必須stringToutiao のコンテンツ id(記事のプラットフォームネイティブな group_id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/toutiao/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "1820000000001001",
    "platform": "toutiao",
    "type": "post",
    "author": {
      "id": "1567049494",
      "username": "toutiao_datastudio",
      "display_name": "数据工场头条号",
      "verified": true
    },
    "title": "头条文章:实体层与数据集市",
    "text": "结构化访问文章内容与互动指标。",
    "url": "https://www.toutiao.com/article/1820000000001001",
    "created_at": "2026-09-14T07:00:00Z",
    "metrics": {
      "likes": 610,
      "comments": 88,
      "views": 45200
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/toutiao/posts/{id}/commentstoutiao.comments

Toutiao 記事コメント

パラメータ場所必須型説明
idpath必須stringToutiao のコンテンツ id(記事のプラットフォームネイティブな group_id)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/toutiao/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "1821000000001001",
      "platform": "toutiao",
      "type": "comment",
      "post_id": "1820000000001001",
      "author": {
        "id": "1567049500",
        "username": "toutiaoreader",
        "display_name": "头条读者",
        "verified": false
      },
      "text": "文章数据口径讲得明白。",
      "created_at": "2026-09-14T08:05:00Z",
      "metrics": {
        "likes": 18,
        "replies": 1
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/lemon8/users/{username}lemon8.profile

Lemon8 プロフィール

パラメータ場所必須型説明
usernamepath必須stringLemon8 のユーザー id——上流は user_id でユーザーを特定するため、値はそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/lemon8/users/newdev"

レスポンス例

{
  "data": {
    "id": "7304994945116",
    "platform": "lemon8",
    "type": "profile",
    "username": "fetchpi_lemon",
    "display_name": "FetchPI on Lemon8",
    "description": "Lifestyle data notes.",
    "url": "https://fetchpi.com",
    "profile_image_url": "https://cdn.example.com/avatar/lemon8-fetchpi.jpg",
    "verified": false,
    "created_at": "2023-04-01T00:00:00Z",
    "metrics": {
      "followers": 24800,
      "following": 150,
      "posts": 96,
      "likes": 158000
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/lemon8/posts/{id}lemon8.post

Lemon8 ノート詳細

パラメータ場所必須型説明
idpath必須stringLemon8 ノート id(プラットフォームネイティブな item id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/lemon8/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7423050000000001001",
    "platform": "lemon8",
    "type": "post",
    "author": {
      "id": "7304994945116",
      "username": "fetchpi_lemon",
      "display_name": "FetchPI on Lemon8",
      "verified": false
    },
    "title": "Lemon8 note: data APIs",
    "text": "A lifestyle note with structured metrics.",
    "created_at": "2026-09-13T11:00:00Z",
    "metrics": {
      "likes": 1320,
      "comments": 64,
      "collects": 210
    },
    "attachments": [
      {
        "type": "photo",
        "url": "https://cdn.example.com/images/lemon8-7423050000000001001-1.jpeg"
      },
      {
        "type": "photo",
        "url": "https://cdn.example.com/images/lemon8-7423050000000001001-2.jpeg"
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/lemon8/search/postslemon8.search_posts

Lemon8 ノート検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/lemon8/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "7423050000000001001",
      "platform": "lemon8",
      "type": "post",
      "author": {
        "id": "7304994945116",
        "username": "fetchpi_lemon",
        "display_name": "FetchPI on Lemon8",
        "verified": false
      },
      "title": "Lemon8 note: data APIs",
      "text": "A lifestyle note with structured metrics.",
      "created_at": "2026-09-13T11:00:00Z",
      "metrics": {
        "likes": 1320,
        "comments": 64,
        "collects": 210
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/lemon8-7423050000000001001-1.jpeg"
        },
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/lemon8-7423050000000001001-2.jpeg"
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/lemon8/users/{username}/followerslemon8.user_followers

Lemon8 フォロワー一覧

パラメータ場所必須型説明
usernamepath必須stringLemon8 のユーザー id——上流は user_id でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/lemon8/users/newdev/followers"

レスポンス例

{
  "data": [
    {
      "id": "7304994945116",
      "platform": "lemon8",
      "type": "profile",
      "username": "fetchpi_lemon",
      "display_name": "FetchPI on Lemon8",
      "description": "Lifestyle data notes.",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/avatar/lemon8-fetchpi.jpg",
      "verified": false,
      "created_at": "2023-04-01T00:00:00Z",
      "metrics": {
        "followers": 24800,
        "following": 150,
        "posts": 96,
        "likes": 158000
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/lemon8/users/{username}/followinglemon8.user_following

Lemon8 フォロー一覧

パラメータ場所必須型説明
usernamepath必須stringLemon8 のユーザー id——上流は user_id でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/lemon8/users/newdev/following"

レスポンス例

{
  "data": [
    {
      "id": "7304994945116",
      "platform": "lemon8",
      "type": "profile",
      "username": "fetchpi_lemon",
      "display_name": "FetchPI on Lemon8",
      "description": "Lifestyle data notes.",
      "url": "https://fetchpi.com",
      "profile_image_url": "https://cdn.example.com/avatar/lemon8-fetchpi.jpg",
      "verified": false,
      "created_at": "2023-04-01T00:00:00Z",
      "metrics": {
        "followers": 24800,
        "following": 150,
        "posts": 96,
        "likes": 158000
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/lemon8/topics/{id}lemon8.topic

Lemon8 トピック詳細

パラメータ場所必須型説明
idpath必須stringLemon8 トピック id(プラットフォームネイティブなフォーラム id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/lemon8/topics/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "1666000000000001001",
    "platform": "lemon8",
    "type": "topic",
    "name": "数据开放",
    "description": "Lemon8 话题详情(按 forum_id 寻址)。",
    "metrics": {
      "posts": 8600
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/bilibili/users/{username}bilibili.profile

Bilibili プロフィール

パラメータ場所必須型説明
usernamepath必須stringbilibili ユーザーのアドレス指定キー(数値 uid)——上流は uid でユーザーを特定するため、値はそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/bilibili/users/newdev"

レスポンス例

{
  "data": {
    "id": "3255000122",
    "platform": "bilibili",
    "type": "profile",
    "username": "FetchPI 哔哩站",
    "display_name": "FetchPI 哔哩站",
    "description": "哔哩哔哩数据开放。",
    "profile_image_url": "https://cdn.example.com/avatar/bilibili-fetchpi.jpg",
    "verified": true,
    "metrics": {
      "followers": 328000,
      "following": 45,
      "posts": 388
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/bilibili/posts/{id}bilibili.post

Bilibili 動画詳細

パラメータ場所必須型説明
idpath必須stringbilibili 動画 id(プラットフォームネイティブな BV id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/bilibili/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "BV1ma101c0001",
    "platform": "bilibili",
    "type": "post",
    "author": {
      "id": "3255000122",
      "username": "FetchPI 哔哩站",
      "display_name": "FetchPI 哔哩站",
      "verified": true
    },
    "title": "哔哩哔哩:数据 API 实战",
    "text": "一条关于数据 API 的视频。",
    "created_at": "2026-09-16T11:20:00Z",
    "metrics": {
      "likes": 18220,
      "comments": 940,
      "collects": 2100,
      "views": 480000
    },
    "attachments": [
      {
        "type": "video",
        "preview_image_url": "https://cdn.example.com/cover/bilibili-BV1ma101c0001.jpeg"
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/bilibili/users/{username}/postsbilibili.user_posts

Bilibili ユーザー動画

パラメータ場所必須型説明
usernamepath必須stringbilibili ユーザーのアドレス指定キー(数値 uid)——上流は uid でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/bilibili/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "BV1ma101c0001",
      "platform": "bilibili",
      "type": "post",
      "author": {
        "id": "3255000122",
        "username": "FetchPI 哔哩站",
        "display_name": "FetchPI 哔哩站",
        "verified": true
      },
      "title": "哔哩哔哩:数据 API 实战",
      "text": "一条关于数据 API 的视频。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 18220,
        "comments": 940,
        "collects": 2100,
        "views": 480000
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/bilibili-BV1ma101c0001.jpeg"
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/bilibili/posts/{id}/commentsbilibili.comments

Bilibili 動画コメント

パラメータ場所必須型説明
idpath必須stringbilibili 動画 id(プラットフォームネイティブな BV id)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/bilibili/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "887711220001",
      "platform": "bilibili",
      "type": "comment",
      "post_id": "BV1ma101c0001",
      "author": {
        "id": "3255000200",
        "username": "哔哩网友",
        "display_name": "哔哩网友",
        "verified": false
      },
      "text": "讲得清楚,赞。",
      "created_at": "2026-09-16T12:01:22Z",
      "metrics": {
        "likes": 96,
        "replies": 3
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/bilibili/posts/{id}/comments/{comment_id}/repliesbilibili.comment_replies

Bilibili コメント返信

パラメータ場所必須型説明
idpath必須stringbilibili 動画 id(プラットフォームネイティブな BV id)。
comment_idpath必須string返信を一覧表示する親コメントの id(rpid)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/bilibili/posts/1842951234567890123/comments/9901222200001001/replies"

レスポンス例

{
  "data": [
    {
      "id": "887711220001",
      "platform": "bilibili",
      "type": "comment",
      "post_id": "BV1ma101c0001",
      "author": {
        "id": "3255000200",
        "username": "哔哩网友",
        "display_name": "哔哩网友",
        "verified": false
      },
      "text": "讲得清楚,赞。",
      "created_at": "2026-09-16T12:01:22Z",
      "metrics": {
        "likes": 96,
        "replies": 3
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/bilibili/search/postsbilibili.search_posts

Bilibili 動画検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/bilibili/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "BV1ma101c0001",
      "platform": "bilibili",
      "type": "post",
      "author": {
        "id": "3255000122",
        "username": "FetchPI 哔哩站",
        "display_name": "FetchPI 哔哩站",
        "verified": true
      },
      "title": "哔哩哔哩:数据 API 实战",
      "text": "一条关于数据 API 的视频。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 18220,
        "comments": 940,
        "collects": 2100,
        "views": 480000
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/bilibili-BV1ma101c0001.jpeg"
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/bilibili/popularbilibili.popular

Bilibili 人気動画

パラメータ場所必須型説明
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/bilibili/popular"

レスポンス例

{
  "data": [
    {
      "id": "BV1ma101c0001",
      "platform": "bilibili",
      "type": "post",
      "author": {
        "id": "3255000122",
        "username": "FetchPI 哔哩站",
        "display_name": "FetchPI 哔哩站",
        "verified": true
      },
      "title": "哔哩哔哩:数据 API 实战",
      "text": "一条关于数据 API 的视频。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 18220,
        "comments": 940,
        "collects": 2100,
        "views": 480000
      },
      "attachments": [
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/bilibili-BV1ma101c0001.jpeg"
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/bilibili/hot-searchbilibili.hot_search

Bilibili ホットサーチボード

パラメータ場所必須型説明
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/bilibili/hot-search"

レスポンス例

{
  "data": {
    "platform": "bilibili",
    "type": "hot_search",
    "words": [
      {
        "word": "数据开放",
        "hot_value": 4821000
      },
      {
        "word": "实体层",
        "hot_value": 3120004
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/bilibili/live/{id}bilibili.live_room

Bilibili ライブルーム情報

パラメータ場所必須型説明
idpath必須stringbilibili ライブルーム id(プラットフォームネイティブな room_id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/bilibili/live/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "8900000000001001",
    "platform": "bilibili",
    "type": "live_room",
    "title": "直播:数据 API 问答",
    "username": "FetchPI 哔哩站",
    "display_name": "FetchPI 哔哩站",
    "status": "LIVE",
    "viewer_count": 3456,
    "cover_image_url": "https://cdn.example.com/cover/bilibili-live.jpeg",
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/users/{username}weibo.profile

Weibo プロフィール

パラメータ場所必須型説明
usernamepath必須stringWeibo(微博)ユーザーのアドレス指定キー(数値 uid)——上流は uid でユーザーを特定するため、値はそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/users/newdev"

レスポンス例

{
  "data": {
    "id": "6605000122",
    "platform": "weibo",
    "type": "profile",
    "username": "微博数据站",
    "display_name": "微博数据站",
    "description": "微博数据开放。",
    "profile_image_url": "https://cdn.example.com/avatar/weibo-fetchpi.jpg",
    "verified": true,
    "created_at": "2018-06-01T00:00:00Z",
    "metrics": {
      "followers": 1288000,
      "following": 210,
      "posts": 19800
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/posts/{id}weibo.post

Weibo 投稿詳細

パラメータ場所必須型説明
idpath必須stringWeibo 投稿 id(プラットフォームネイティブな status id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "5551000000001001",
    "platform": "weibo",
    "type": "post",
    "author": {
      "id": "6605000122",
      "username": "微博数据站",
      "display_name": "微博数据站",
      "verified": true
    },
    "text": "一条关于数据 API 的微博。",
    "created_at": "2026-09-17T04:34:56Z",
    "metrics": {
      "likes": 8230,
      "comments": 1204,
      "shares": 988
    },
    "attachments": [
      {
        "type": "photo",
        "url": "https://cdn.example.com/images/weibo-5551000000001001-1.jpeg"
      },
      {
        "type": "photo",
        "url": "https://cdn.example.com/images/weibo-5551000000001001-2.jpeg"
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/users/{username}/postsweibo.user_posts

Weibo ユーザー投稿

パラメータ場所必須型説明
usernamepath必須stringWeibo(微博)ユーザーのアドレス指定キー(数値 uid)——上流は uid でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "5551000000001001",
      "platform": "weibo",
      "type": "post",
      "author": {
        "id": "6605000122",
        "username": "微博数据站",
        "display_name": "微博数据站",
        "verified": true
      },
      "text": "一条关于数据 API 的微博。",
      "created_at": "2026-09-17T04:34:56Z",
      "metrics": {
        "likes": 8230,
        "comments": 1204,
        "shares": 988
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/weibo-5551000000001001-1.jpeg"
        },
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/weibo-5551000000001001-2.jpeg"
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/posts/{id}/commentsweibo.comments

Weibo 投稿コメント

パラメータ場所必須型説明
idpath必須stringWeibo 投稿 id(プラットフォームネイティブな status id)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "5551222200001001",
      "platform": "weibo",
      "type": "comment",
      "post_id": "5551000000001001",
      "author": {
        "id": "6605000200",
        "username": "微博网友",
        "display_name": "微博网友",
        "verified": false
      },
      "text": "讲得清楚,赞。",
      "created_at": "2026-09-17T05:01:22Z",
      "metrics": {
        "likes": 96,
        "replies": 3
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/posts/{id}/comments/{comment_id}/repliesweibo.comment_replies

Weibo コメント返信

パラメータ場所必須型説明
idpath必須stringWeibo 投稿 id(プラットフォームネイティブな status id)。
comment_idpath必須stringサブコメントを一覧表示する親コメントの id(主评论 id)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/posts/1842951234567890123/comments/9901222200001001/replies"

レスポンス例

{
  "data": [
    {
      "id": "5551222200001001",
      "platform": "weibo",
      "type": "comment",
      "post_id": "5551000000001001",
      "author": {
        "id": "6605000200",
        "username": "微博网友",
        "display_name": "微博网友",
        "verified": false
      },
      "text": "讲得清楚,赞。",
      "created_at": "2026-09-17T05:01:22Z",
      "metrics": {
        "likes": 96,
        "replies": 3
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/posts/{id}/repostsweibo.post_reposts

Weibo リポスト一覧

パラメータ場所必須型説明
idpath必須stringWeibo 投稿 id(プラットフォームネイティブな status id)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/posts/1842951234567890123/reposts"

レスポンス例

{
  "data": [
    {
      "id": "5551000000001001",
      "platform": "weibo",
      "type": "post",
      "author": {
        "id": "6605000122",
        "username": "微博数据站",
        "display_name": "微博数据站",
        "verified": true
      },
      "text": "一条关于数据 API 的微博。",
      "created_at": "2026-09-17T04:34:56Z",
      "metrics": {
        "likes": 8230,
        "comments": 1204,
        "shares": 988
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/weibo-5551000000001001-1.jpeg"
        },
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/weibo-5551000000001001-2.jpeg"
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/posts/{id}/likersweibo.post_likers

Weibo いいね一覧

パラメータ場所必須型説明
idpath必須stringWeibo 投稿 id(プラットフォームネイティブな status id)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/posts/1842951234567890123/likers"

レスポンス例

{
  "data": [
    {
      "id": "6605000122",
      "platform": "weibo",
      "type": "profile",
      "username": "微博数据站",
      "display_name": "微博数据站",
      "description": "微博数据开放。",
      "profile_image_url": "https://cdn.example.com/avatar/weibo-fetchpi.jpg",
      "verified": true,
      "created_at": "2018-06-01T00:00:00Z",
      "metrics": {
        "followers": 1288000,
        "following": 210,
        "posts": 19800
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/users/{username}/followersweibo.user_followers

Weibo フォロワー一覧

パラメータ場所必須型説明
usernamepath必須stringWeibo(微博)ユーザーのアドレス指定キー(数値 uid)——上流は uid でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/users/newdev/followers"

レスポンス例

{
  "data": [
    {
      "id": "6605000122",
      "platform": "weibo",
      "type": "profile",
      "username": "微博数据站",
      "display_name": "微博数据站",
      "description": "微博数据开放。",
      "profile_image_url": "https://cdn.example.com/avatar/weibo-fetchpi.jpg",
      "verified": true,
      "created_at": "2018-06-01T00:00:00Z",
      "metrics": {
        "followers": 1288000,
        "following": 210,
        "posts": 19800
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/users/{username}/followingweibo.user_following

Weibo フォロー一覧

パラメータ場所必須型説明
usernamepath必須stringWeibo(微博)ユーザーのアドレス指定キー(数値 uid)——上流は uid でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/users/newdev/following"

レスポンス例

{
  "data": [
    {
      "id": "6605000122",
      "platform": "weibo",
      "type": "profile",
      "username": "微博数据站",
      "display_name": "微博数据站",
      "description": "微博数据开放。",
      "profile_image_url": "https://cdn.example.com/avatar/weibo-fetchpi.jpg",
      "verified": true,
      "created_at": "2018-06-01T00:00:00Z",
      "metrics": {
        "followers": 1288000,
        "following": 210,
        "posts": 19800
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/search/postsweibo.search_posts

Weibo 投稿検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "5551000000001001",
      "platform": "weibo",
      "type": "post",
      "author": {
        "id": "6605000122",
        "username": "微博数据站",
        "display_name": "微博数据站",
        "verified": true
      },
      "text": "一条关于数据 API 的微博。",
      "created_at": "2026-09-17T04:34:56Z",
      "metrics": {
        "likes": 8230,
        "comments": 1204,
        "shares": 988
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/weibo-5551000000001001-1.jpeg"
        },
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/weibo-5551000000001001-2.jpeg"
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/search/usersweibo.search_users

Weibo ユーザー検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/search/users?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "6605000122",
      "platform": "weibo",
      "type": "profile",
      "username": "微博数据站",
      "display_name": "微博数据站",
      "description": "微博数据开放。",
      "profile_image_url": "https://cdn.example.com/avatar/weibo-fetchpi.jpg",
      "verified": true,
      "created_at": "2018-06-01T00:00:00Z",
      "metrics": {
        "followers": 1288000,
        "following": 210,
        "posts": 19800
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/weibo/hot-searchweibo.hot_search

Weibo ホットサーチボード

パラメータ場所必須型説明
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/weibo/hot-search"

レスポンス例

{
  "data": {
    "platform": "weibo",
    "type": "hot_search",
    "words": [
      {
        "word": "数据开放",
        "hot_value": 4821000
      },
      {
        "word": "实体层",
        "hot_value": 3120004
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/users/{username}zhihu.profile

Zhihu プロフィール

パラメータ場所必須型説明
usernamepath必須stringZhihu(知乎)ユーザーのアドレス指定キー(url_token)——上流は url_token でユーザーを特定するため、値はそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/users/newdev"

レスポンス例

{
  "data": {
    "id": "9905000122",
    "platform": "zhihu",
    "type": "profile",
    "username": "fetchpi-zhihu",
    "display_name": "知乎数据答主",
    "description": "知乎数据开放。",
    "profile_image_url": "https://cdn.example.com/avatar/zhihu-fetchpi.jpg",
    "verified": false,
    "metrics": {
      "followers": 86500,
      "following": 35,
      "posts": 128
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/answers/{id}zhihu.post

Zhihu 回答詳細

パラメータ場所必須型説明
idpath必須stringZhihu 回答 id(Zhihu 投稿面の標準形)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/answers/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "8801000000001001",
    "platform": "zhihu",
    "type": "post",
    "author": {
      "id": "9905000122",
      "username": "fetchpi-zhihu",
      "display_name": "知乎数据答主",
      "verified": false
    },
    "title": "实体层是如何炼成的?",
    "text": "回答:结构化访问知乎内容。",
    "created_at": "2026-09-16T11:20:00Z",
    "metrics": {
      "likes": 5120,
      "comments": 320
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/articles/{id}zhihu.article

Zhihu 記事詳細

パラメータ場所必須型説明
idpath必須stringZhihu コラム記事 id。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/articles/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "8801000000001001",
    "platform": "zhihu",
    "type": "post",
    "author": {
      "id": "9905000122",
      "username": "fetchpi-zhihu",
      "display_name": "知乎数据答主",
      "verified": false
    },
    "title": "实体层是如何炼成的?",
    "text": "回答:结构化访问知乎内容。",
    "created_at": "2026-09-16T11:20:00Z",
    "metrics": {
      "likes": 5120,
      "comments": 320
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/questions/{id}zhihu.question

Zhihu 質問詳細

パラメータ場所必須型説明
idpath必須stringZhihu 質問 id。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/questions/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7701000000001001",
    "platform": "zhihu",
    "type": "question",
    "title": "实体层是如何炼成的?",
    "detail": "问题详情:数据 API 的实体层设计。",
    "metrics": {
      "answers": 1280,
      "followers": 8600
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/questions/{id}/answerszhihu.question_answers

Zhihu 質問の回答一覧

パラメータ場所必須型説明
idpath必須stringZhihu 質問 id。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/questions/1842951234567890123/answers"

レスポンス例

{
  "data": [
    {
      "id": "8801000000001001",
      "platform": "zhihu",
      "type": "post",
      "author": {
        "id": "9905000122",
        "username": "fetchpi-zhihu",
        "display_name": "知乎数据答主",
        "verified": false
      },
      "title": "实体层是如何炼成的?",
      "text": "回答:结构化访问知乎内容。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 5120,
        "comments": 320
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/users/{username}/answerszhihu.user_answers

Zhihu ユーザー回答一覧

パラメータ場所必須型説明
usernamepath必須stringZhihu(知乎)ユーザーのアドレス指定キー(url_token)——上流は url_token でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/users/newdev/answers"

レスポンス例

{
  "data": [
    {
      "id": "8801000000001001",
      "platform": "zhihu",
      "type": "post",
      "author": {
        "id": "9905000122",
        "username": "fetchpi-zhihu",
        "display_name": "知乎数据答主",
        "verified": false
      },
      "title": "实体层是如何炼成的?",
      "text": "回答:结构化访问知乎内容。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 5120,
        "comments": 320
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/users/{username}/articleszhihu.user_articles

Zhihu ユーザー記事一覧

パラメータ場所必須型説明
usernamepath必須stringZhihu(知乎)ユーザーのアドレス指定キー(url_token)——上流は url_token でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/users/newdev/articles"

レスポンス例

{
  "data": [
    {
      "id": "8801000000001001",
      "platform": "zhihu",
      "type": "post",
      "author": {
        "id": "9905000122",
        "username": "fetchpi-zhihu",
        "display_name": "知乎数据答主",
        "verified": false
      },
      "title": "实体层是如何炼成的?",
      "text": "回答:结构化访问知乎内容。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 5120,
        "comments": 320
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/answers/{id}/commentszhihu.comments

Zhihu 回答コメント

パラメータ場所必須型説明
idpath必須stringZhihu 回答 id(Zhihu 投稿面の標準形)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/answers/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "9901222200001001",
      "platform": "zhihu",
      "type": "comment",
      "post_id": "8801000000001001",
      "author": {
        "id": "9905000200",
        "username": "zhihu-fan",
        "display_name": "知乎网友",
        "verified": false
      },
      "text": "讲得明白。",
      "created_at": "2026-09-16T12:01:22Z",
      "metrics": {
        "likes": 41,
        "replies": 2
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/answers/{id}/comments/{comment_id}/replieszhihu.comment_replies

Zhihu コメント返信

パラメータ場所必須型説明
idpath必須stringZhihu 回答 id(Zhihu 投稿面の標準形)。
comment_idpath必須stringサブコメントを一覧表示する親コメントの id。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/answers/1842951234567890123/comments/9901222200001001/replies"

レスポンス例

{
  "data": [
    {
      "id": "9901222200001001",
      "platform": "zhihu",
      "type": "comment",
      "post_id": "8801000000001001",
      "author": {
        "id": "9905000200",
        "username": "zhihu-fan",
        "display_name": "知乎网友",
        "verified": false
      },
      "text": "讲得明白。",
      "created_at": "2026-09-16T12:01:22Z",
      "metrics": {
        "likes": 41,
        "replies": 2
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/users/{username}/followerszhihu.user_followers

Zhihu フォロワー一覧

パラメータ場所必須型説明
usernamepath必須stringZhihu(知乎)ユーザーのアドレス指定キー(url_token)——上流は url_token でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/users/newdev/followers"

レスポンス例

{
  "data": [
    {
      "id": "9905000122",
      "platform": "zhihu",
      "type": "profile",
      "username": "fetchpi-zhihu",
      "display_name": "知乎数据答主",
      "description": "知乎数据开放。",
      "profile_image_url": "https://cdn.example.com/avatar/zhihu-fetchpi.jpg",
      "verified": false,
      "metrics": {
        "followers": 86500,
        "following": 35,
        "posts": 128
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/users/{username}/followingzhihu.user_following

Zhihu フォロー一覧

パラメータ場所必須型説明
usernamepath必須stringZhihu(知乎)ユーザーのアドレス指定キー(url_token)——上流は url_token でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/users/newdev/following"

レスポンス例

{
  "data": [
    {
      "id": "9905000122",
      "platform": "zhihu",
      "type": "profile",
      "username": "fetchpi-zhihu",
      "display_name": "知乎数据答主",
      "description": "知乎数据开放。",
      "profile_image_url": "https://cdn.example.com/avatar/zhihu-fetchpi.jpg",
      "verified": false,
      "metrics": {
        "followers": 86500,
        "following": 35,
        "posts": 128
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/search/postszhihu.search_posts

Zhihu 記事検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "8801000000001001",
      "platform": "zhihu",
      "type": "post",
      "author": {
        "id": "9905000122",
        "username": "fetchpi-zhihu",
        "display_name": "知乎数据答主",
        "verified": false
      },
      "title": "实体层是如何炼成的?",
      "text": "回答:结构化访问知乎内容。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 5120,
        "comments": 320
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/search/userszhihu.search_users

Zhihu ユーザー検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/search/users?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "9905000122",
      "platform": "zhihu",
      "type": "profile",
      "username": "fetchpi-zhihu",
      "display_name": "知乎数据答主",
      "description": "知乎数据开放。",
      "profile_image_url": "https://cdn.example.com/avatar/zhihu-fetchpi.jpg",
      "verified": false,
      "metrics": {
        "followers": 86500,
        "following": 35,
        "posts": 128
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/zhihu/hot-listzhihu.hot_list

Zhihu ホットリスト

パラメータ場所必須型説明
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/zhihu/hot-list"

レスポンス例

{
  "data": {
    "platform": "zhihu",
    "type": "hot_list",
    "items": [
      {
        "title": "实体层是如何炼成的?",
        "question_id": "7701000000001001",
        "heat": 4821000
      },
      {
        "title": "数据开放意味着什么?",
        "question_id": "7701000000001002",
        "heat": 3120004
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/threads/users/{username}threads.profile

プロフィール取得

パラメータ場所必須型説明
usernamepath必須stringThreads ユーザーのアドレス指定キー——プロフィールは username、リストは数値 user_id で特定するため、値はそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/threads/users/newdev"

レスポンス例

{
  "data": {
    "id": "7455000122",
    "platform": "threads",
    "type": "profile",
    "username": "fetchpi",
    "display_name": "FetchPI Threads",
    "description": "Threads 数据开放。",
    "profile_image_url": "https://cdn.example.com/avatar/threads-fetchpi.jpg",
    "verified": true,
    "created_at": "2021-07-06T00:00:00Z",
    "metrics": {
      "followers": 815000,
      "following": 310,
      "posts": 4200
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/threads/posts/{id}threads.post

投稿取得

パラメータ場所必須型説明
idpath必須stringThreads 投稿 id(プラットフォームネイティブな pk)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/threads/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7459000000001001",
    "platform": "threads",
    "type": "post",
    "author": {
      "id": "7455000122",
      "username": "fetchpi",
      "display_name": "FetchPI Threads",
      "verified": true
    },
    "text": "一条关于数据 API 的 Threads。",
    "created_at": "2026-09-16T11:20:00Z",
    "metrics": {
      "likes": 12480,
      "comments": 214,
      "shares": 66,
      "views": 91000
    },
    "attachments": [
      {
        "type": "photo",
        "url": "https://cdn.example.com/images/threads-7459000000001001-1.jpeg"
      },
      {
        "type": "photo",
        "url": "https://cdn.example.com/images/threads-7459000000001001-2.jpeg"
      },
      {
        "type": "video",
        "preview_image_url": "https://cdn.example.com/media/threads-7459000000001001.mp4"
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/threads/users/{username}/poststhreads.user_posts

ユーザー投稿一覧

パラメータ場所必須型説明
usernamepath必須stringThreads ユーザーのアドレス指定キー——プロフィールは username、リストは数値 user_id で特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/threads/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "7459000000001001",
      "platform": "threads",
      "type": "post",
      "author": {
        "id": "7455000122",
        "username": "fetchpi",
        "display_name": "FetchPI Threads",
        "verified": true
      },
      "text": "一条关于数据 API 的 Threads。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 12480,
        "comments": 214,
        "shares": 66,
        "views": 91000
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/threads-7459000000001001-1.jpeg"
        },
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/threads-7459000000001001-2.jpeg"
        },
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/media/threads-7459000000001001.mp4"
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/threads/users/{username}/repliesthreads.user_replies

ユーザー返信一覧

パラメータ場所必須型説明
usernamepath必須stringThreads ユーザーのアドレス指定キー——プロフィールは username、リストは数値 user_id で特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/threads/users/newdev/replies"

レスポンス例

{
  "data": [
    {
      "id": "7458000000003001",
      "platform": "threads",
      "type": "comment",
      "post_id": "7459000000001001",
      "author": {
        "id": "7455000200",
        "username": "threads_fan",
        "display_name": null,
        "verified": false
      },
      "text": "讲得清楚,赞。",
      "created_at": "2026-09-16T12:01:22Z",
      "metrics": {
        "likes": 96,
        "replies": 3
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/threads/users/{username}/repoststhreads.user_reposts

ユーザーリポスト一覧

パラメータ場所必須型説明
usernamepath必須stringThreads ユーザーのアドレス指定キー——プロフィールは username、リストは数値 user_id で特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/threads/users/newdev/reposts"

レスポンス例

{
  "data": [
    {
      "id": "7459000000001001",
      "platform": "threads",
      "type": "post",
      "author": {
        "id": "7455000122",
        "username": "fetchpi",
        "display_name": "FetchPI Threads",
        "verified": true
      },
      "text": "一条关于数据 API 的 Threads。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 12480,
        "comments": 214,
        "shares": 66,
        "views": 91000
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/threads-7459000000001001-1.jpeg"
        },
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/threads-7459000000001001-2.jpeg"
        },
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/media/threads-7459000000001001.mp4"
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/threads/posts/{id}/commentsthreads.comments

投稿コメント一覧

パラメータ場所必須型説明
idpath必須stringThreads 投稿 id(プラットフォームネイティブな pk)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/threads/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "7458000000003001",
      "platform": "threads",
      "type": "comment",
      "post_id": "7459000000001001",
      "author": {
        "id": "7455000200",
        "username": "threads_fan",
        "display_name": null,
        "verified": false
      },
      "text": "讲得清楚,赞。",
      "created_at": "2026-09-16T12:01:22Z",
      "metrics": {
        "likes": 96,
        "replies": 3
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/threads/search/usersthreads.search_users

ユーザー検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/threads/search/users?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "7455000122",
      "platform": "threads",
      "type": "profile",
      "username": "fetchpi",
      "display_name": "FetchPI Threads",
      "description": "Threads 数据开放。",
      "profile_image_url": "https://cdn.example.com/avatar/threads-fetchpi.jpg",
      "verified": true,
      "created_at": "2021-07-06T00:00:00Z",
      "metrics": {
        "followers": 815000,
        "following": 310,
        "posts": 4200
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/linkedin/users/{username}linkedin.profile

プロフィール取得

パラメータ場所必須型説明
usernamepath必須stringLinkedIn メンバーのアドレス指定キー:プロフィール URL をパーセントエンコードしたもの——上流の url クエリとしてそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/linkedin/users/newdev"

レスポンス例

{
  "data": {
    "id": "6155000122",
    "platform": "linkedin",
    "type": "profile",
    "username": "fetchpi-linkedin",
    "display_name": "FetchPI LinkedIn",
    "description": "结构化 LinkedIn 数据。",
    "url": "https://www.linkedin.com/in/fetchpi-linkedin",
    "profile_image_url": "https://cdn.example.com/avatar/linkedin-fetchpi.jpg",
    "verified": false,
    "metrics": {
      "followers": 92000,
      "following": 4800,
      "posts": 610
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/linkedin/users/{username}/postslinkedin.user_posts

ユーザー投稿一覧

パラメータ場所必須型説明
usernamepath必須stringLinkedIn メンバーのアドレス指定キー:プロフィール URL をパーセントエンコードしたもの——上流の url クエリとしてそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/linkedin/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "7255000000001001",
      "platform": "linkedin",
      "type": "post",
      "author": {
        "id": "6155000122",
        "username": "fetchpi-linkedin",
        "display_name": "FetchPI LinkedIn",
        "verified": false
      },
      "text": "一条关于数据 API 的 LinkedIn 帖子。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 3120,
        "comments": 96,
        "shares": 18
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/linkedin/companies/{username}linkedin.company_profile

会社プロフィール取得

パラメータ場所必須型説明
usernamepath必須stringLinkedIn 企業のアドレス指定キー:会社ページ URL をパーセントエンコードしたもの——上流の url クエリとしてそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/linkedin/companies/newdev"

レスポンス例

{
  "data": {
    "id": "6155000122",
    "platform": "linkedin",
    "type": "profile",
    "username": "fetchpi-linkedin",
    "display_name": "FetchPI LinkedIn",
    "description": "结构化 LinkedIn 数据。",
    "url": "https://www.linkedin.com/in/fetchpi-linkedin",
    "profile_image_url": "https://cdn.example.com/avatar/linkedin-fetchpi.jpg",
    "verified": false,
    "metrics": {
      "followers": 92000,
      "following": 4800,
      "posts": 610
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/linkedin/companies/{username}/postslinkedin.company_posts

会社投稿一覧

パラメータ場所必須型説明
usernamepath必須stringLinkedIn 企業のアドレス指定キー:会社ページ URL をパーセントエンコードしたもの——上流の url クエリとしてそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/linkedin/companies/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "7255000000001001",
      "platform": "linkedin",
      "type": "post",
      "author": {
        "id": "6155000122",
        "username": "fetchpi-linkedin",
        "display_name": "FetchPI LinkedIn",
        "verified": false
      },
      "text": "一条关于数据 API 的 LinkedIn 帖子。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 3120,
        "comments": 96,
        "shares": 18
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/linkedin/posts/{id}linkedin.post

投稿取得

パラメータ場所必須型説明
idpath必須stringLinkedIn 投稿のアドレス指定キー:投稿 URL をパーセントエンコードしたもの——上流の url クエリとしてそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/linkedin/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "7255000000001001",
    "platform": "linkedin",
    "type": "post",
    "author": {
      "id": "6155000122",
      "username": "fetchpi-linkedin",
      "display_name": "FetchPI LinkedIn",
      "verified": false
    },
    "text": "一条关于数据 API 的 LinkedIn 帖子。",
    "created_at": "2026-09-16T11:20:00Z",
    "metrics": {
      "likes": 3120,
      "comments": 96,
      "shares": 18
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/linkedin/posts/{id}/commentslinkedin.post_comments

投稿コメント一覧

パラメータ場所必須型説明
idpath必須stringLinkedIn シェア URN(パーセントエンコード済み)——上流の urn クエリとしてそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/linkedin/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "7258000000002001",
      "platform": "linkedin",
      "type": "comment",
      "post_id": "7255000000001001",
      "author": {
        "id": "6155000200",
        "username": "linkedin-fan",
        "display_name": "LinkedIn 网友",
        "verified": false
      },
      "text": "讲得清楚,赞。",
      "created_at": "2026-09-16T12:01:22Z",
      "metrics": {
        "likes": 12,
        "replies": 1
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/linkedin/jobs/{id}linkedin.job

求人詳細取得

パラメータ場所必須型説明
idpath必須stringLinkedIn 求人のアドレス指定キー:求人 URL をパーセントエンコードしたもの——上流の url クエリとしてそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/linkedin/jobs/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "6257000000001001",
    "platform": "linkedin",
    "type": "job",
    "title": "数据平台工程师",
    "company": "FetchPI",
    "location": "Remote",
    "description": "数据平台工程师职位。",
    "employment_type": "FULL_TIME",
    "posted_at": "2026-09-15T11:20:00Z",
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/linkedin/search/jobslinkedin.search_jobs

求人検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/linkedin/search/jobs?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "6257000000001001",
      "platform": "linkedin",
      "type": "job",
      "title": "数据平台工程师",
      "company": "FetchPI",
      "location": "Remote",
      "description": "数据平台工程师职位。",
      "employment_type": "FULL_TIME",
      "posted_at": "2026-09-15T11:20:00Z",
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/telegram/channels/{username}telegram.profile

チャンネル情報取得

パラメータ場所必須型説明
usernamepath必須stringTelegram チャンネルのアドレス指定キー(チャンネルハンドル)——上流の channel クエリとしてそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/telegram/channels/newdev"

レスポンス例

{
  "data": {
    "id": "8355000122",
    "platform": "telegram",
    "type": "profile",
    "username": "fetchpi_tg",
    "display_name": "FetchPI 频道",
    "description": "Telegram 频道数据开放。",
    "profile_image_url": "https://cdn.example.com/avatar/telegram-fetchpi_tg.jpg",
    "verified": false,
    "metrics": {
      "followers": 230000,
      "following": 0,
      "posts": 5100
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/telegram/channels/{username}/poststelegram.user_posts

チャンネル投稿一覧

パラメータ場所必須型説明
usernamepath必須stringTelegram チャンネルのアドレス指定キー(チャンネルハンドル)——上流の channel クエリとしてそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/telegram/channels/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "8359000000001002",
      "platform": "telegram",
      "type": "post",
      "author": {
        "id": "8355000122",
        "username": "fetchpi_tg",
        "display_name": "FetchPI 频道",
        "verified": false
      },
      "text": "频道消息:数据 API 发布。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 0,
        "comments": 2,
        "shares": 120,
        "views": 51000
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/telegram/channels/{username}/posts/{id}telegram.post

投稿取得

パラメータ場所必須型説明
usernamepath必須stringTelegram チャンネルのアドレス指定キー(チャンネルハンドル)——上流の channel クエリとしてそのまま転送されます。
idpath必須stringTelegram メッセージ id(上流の post_id クエリ)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/telegram/channels/newdev/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "8359000000001002",
    "platform": "telegram",
    "type": "post",
    "author": {
      "id": "8355000122",
      "username": "fetchpi_tg",
      "display_name": "FetchPI 频道",
      "verified": false
    },
    "text": "频道消息:数据 API 发布。",
    "created_at": "2026-09-16T11:20:00Z",
    "metrics": {
      "likes": 0,
      "comments": 2,
      "shares": 120,
      "views": 51000
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/telegram/channels/{username}/posts/{id}/commentstelegram.comments

投稿コメント一覧

パラメータ場所必須型説明
usernamepath必須stringTelegram チャンネルのアドレス指定キー(チャンネルハンドル)——上流の channel クエリとしてそのまま転送されます。
idpath必須stringTelegram メッセージ id(上流の post_id クエリ)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/telegram/channels/newdev/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "8358000000002001",
      "platform": "telegram",
      "type": "comment",
      "post_id": "8359000000001002",
      "author": {
        "id": "8355000200",
        "username": "tg_fan",
        "display_name": "TG 网友",
        "verified": false
      },
      "text": "讲得清楚,赞。",
      "created_at": "2026-09-16T12:01:22Z",
      "metrics": {
        "likes": 8,
        "replies": 0
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/telegram/channels/{username}/search/poststelegram.search_posts

チャンネル内検索

パラメータ場所必須型説明
usernamepath必須stringTelegram チャンネルのアドレス指定キー(チャンネルハンドル)——上流の channel クエリとしてそのまま転送されます。
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/telegram/channels/newdev/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "8359000000001002",
      "platform": "telegram",
      "type": "post",
      "author": {
        "id": "8355000122",
        "username": "fetchpi_tg",
        "display_name": "FetchPI 频道",
        "verified": false
      },
      "text": "频道消息:数据 API 发布。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 0,
        "comments": 2,
        "shares": 120,
        "views": 51000
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/telegram/channels/{username}/similartelegram.similar_channels

類似チャンネル一覧

パラメータ場所必須型説明
usernamepath必須stringTelegram チャンネルのアドレス指定キー(チャンネルハンドル)——上流の channel クエリとしてそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/telegram/channels/newdev/similar"

レスポンス例

{
  "data": [
    {
      "id": "8355000122",
      "platform": "telegram",
      "type": "profile",
      "username": "fetchpi_tg",
      "display_name": "FetchPI 频道",
      "description": "Telegram 频道数据开放。",
      "profile_image_url": "https://cdn.example.com/avatar/telegram-fetchpi_tg.jpg",
      "verified": false,
      "metrics": {
        "followers": 230000,
        "following": 0,
        "posts": 5100
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/pipixia/users/{username}pipixia.profile

プロフィール取得

パラメータ場所必須型説明
usernamepath必須stringPipixia(皮皮蝦)ユーザーのアドレス指定キー(数値 user_id)——上流は user_id でユーザーを特定するため、値はそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/pipixia/users/newdev"

レスポンス例

{
  "data": {
    "id": "9255000122",
    "platform": "pipixia",
    "type": "profile",
    "username": "皮皮虾数据站",
    "display_name": "皮皮虾数据站",
    "description": "皮皮虾数据开放。",
    "profile_image_url": "https://cdn.example.com/avatar/pipixia-fetchpi.jpg",
    "verified": false,
    "created_at": "2021-06-30T17:33:20Z",
    "metrics": {
      "followers": 456000,
      "following": 64,
      "posts": 1320
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/pipixia/users/{username}/postspipixia.user_posts

ユーザー作品一覧

パラメータ場所必須型説明
usernamepath必須stringPipixia(皮皮蝦)ユーザーのアドレス指定キー(数値 user_id)——上流は user_id でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/pipixia/users/newdev/posts"

レスポンス例

{
  "data": [
    {
      "id": "9259000000001001",
      "platform": "pipixia",
      "type": "post",
      "author": {
        "id": "9255000122",
        "username": "皮皮虾数据站",
        "display_name": "皮皮虾数据站",
        "verified": false
      },
      "title": "皮皮虾:数据 API 实战",
      "text": "一条关于数据 API 的作品。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 21000,
        "comments": 158,
        "shares": 74,
        "views": 780000
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/pipixia-9259000000001001-1.jpeg"
        },
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/pipixia-9259000000001001.jpeg",
          "duration_ms": 45000
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/pipixia/users/{username}/followerspipixia.user_followers

フォロワー一覧

パラメータ場所必須型説明
usernamepath必須stringPipixia(皮皮蝦)ユーザーのアドレス指定キー(数値 user_id)——上流は user_id でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/pipixia/users/newdev/followers"

レスポンス例

{
  "data": [
    {
      "id": "9255000122",
      "platform": "pipixia",
      "type": "profile",
      "username": "皮皮虾数据站",
      "display_name": "皮皮虾数据站",
      "description": "皮皮虾数据开放。",
      "profile_image_url": "https://cdn.example.com/avatar/pipixia-fetchpi.jpg",
      "verified": false,
      "created_at": "2021-06-30T17:33:20Z",
      "metrics": {
        "followers": 456000,
        "following": 64,
        "posts": 1320
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/pipixia/users/{username}/followingpipixia.user_following

フォロー一覧

パラメータ場所必須型説明
usernamepath必須stringPipixia(皮皮蝦)ユーザーのアドレス指定キー(数値 user_id)——上流は user_id でユーザーを特定するため、値はそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/pipixia/users/newdev/following"

レスポンス例

{
  "data": [
    {
      "id": "9255000122",
      "platform": "pipixia",
      "type": "profile",
      "username": "皮皮虾数据站",
      "display_name": "皮皮虾数据站",
      "description": "皮皮虾数据开放。",
      "profile_image_url": "https://cdn.example.com/avatar/pipixia-fetchpi.jpg",
      "verified": false,
      "created_at": "2021-06-30T17:33:20Z",
      "metrics": {
        "followers": 456000,
        "following": 64,
        "posts": 1320
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/pipixia/posts/{id}pipixia.post

作品取得

パラメータ場所必須型説明
idpath必須stringPipixia 作品 id(プラットフォームネイティブな cell id)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/pipixia/posts/1842951234567890123"

レスポンス例

{
  "data": {
    "id": "9259000000001001",
    "platform": "pipixia",
    "type": "post",
    "author": {
      "id": "9255000122",
      "username": "皮皮虾数据站",
      "display_name": "皮皮虾数据站",
      "verified": false
    },
    "title": "皮皮虾:数据 API 实战",
    "text": "一条关于数据 API 的作品。",
    "created_at": "2026-09-16T11:20:00Z",
    "metrics": {
      "likes": 21000,
      "comments": 158,
      "shares": 74,
      "views": 780000
    },
    "attachments": [
      {
        "type": "photo",
        "url": "https://cdn.example.com/images/pipixia-9259000000001001-1.jpeg"
      },
      {
        "type": "video",
        "preview_image_url": "https://cdn.example.com/cover/pipixia-9259000000001001.jpeg",
        "duration_ms": 45000
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/pipixia/posts/{id}/commentspipixia.comments

作品コメント一覧

パラメータ場所必須型説明
idpath必須stringPipixia 作品 id(プラットフォームネイティブな cell id)。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/pipixia/posts/1842951234567890123/comments"

レスポンス例

{
  "data": [
    {
      "id": "9258000000002001",
      "platform": "pipixia",
      "type": "comment",
      "post_id": "9259000000001001",
      "author": {
        "id": "9255000200",
        "username": "皮皮虾网友",
        "display_name": "皮皮虾网友",
        "verified": false
      },
      "text": "讲得清楚,赞。",
      "created_at": "2026-09-16T12:01:22Z",
      "metrics": {
        "likes": 22,
        "replies": 1
      },
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/pipixia/search/postspipixia.search_posts

作品検索

パラメータ場所必須型説明
qquery必須string検索キーワード。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

レスポンス

200正規化されたレスポンス(構造は下記スキーマを参照)。

404 — キャッシュのみモードで結果がない場合、検索は利用できません。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/pipixia/search/posts?q=fetchpi"

レスポンス例

{
  "data": [
    {
      "id": "9259000000001001",
      "platform": "pipixia",
      "type": "post",
      "author": {
        "id": "9255000122",
        "username": "皮皮虾数据站",
        "display_name": "皮皮虾数据站",
        "verified": false
      },
      "title": "皮皮虾:数据 API 实战",
      "text": "一条关于数据 API 的作品。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 21000,
        "comments": 158,
        "shares": 74,
        "views": 780000
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/pipixia-9259000000001001-1.jpeg"
        },
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/pipixia-9259000000001001.jpeg",
          "duration_ms": 45000
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "query": "数据",
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 300,
      "cache_hit": false
    }
  }
}
GET/v1/pipixia/hashtags/{tag}pipixia.hashtag

ハッシュタグ取得

パラメータ場所必須型説明
tagpath必須stringPipixia ハッシュタグ id——上流の hashtag_id クエリとしてそのまま転送されます。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/pipixia/hashtags/trending"

レスポンス例

{
  "data": {
    "id": "9257000000001001",
    "platform": "pipixia",
    "type": "hashtag",
    "name": "数据开放",
    "description": "皮皮虾话题面。",
    "metrics": {
      "views": 88000000,
      "posts": 123000
    },
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}
GET/v1/pipixia/hashtags/{tag}/postspipixia.hashtag_posts

ハッシュタグ投稿一覧

パラメータ場所必須型説明
tagpath必須stringPipixia ハッシュタグ id——上流の hashtag_id クエリとしてそのまま転送されます。
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/pipixia/hashtags/trending/posts"

レスポンス例

{
  "data": [
    {
      "id": "9259000000001001",
      "platform": "pipixia",
      "type": "post",
      "author": {
        "id": "9255000122",
        "username": "皮皮虾数据站",
        "display_name": "皮皮虾数据站",
        "verified": false
      },
      "title": "皮皮虾:数据 API 实战",
      "text": "一条关于数据 API 的作品。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 21000,
        "comments": 158,
        "shares": 74,
        "views": 780000
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/pipixia-9259000000001001-1.jpeg"
        },
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/pipixia-9259000000001001.jpeg",
          "duration_ms": 45000
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/pipixia/homefeedpipixia.homefeed

ホームフィード取得

パラメータ場所必須型説明
limitquery任意integer = 20ページサイズ(1〜100、デフォルト 20)。
cursorquery任意string前回のレスポンスの next_cursor(不透明なページネーションカーソル)。
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/pipixia/homefeed"

レスポンス例

{
  "data": [
    {
      "id": "9259000000001001",
      "platform": "pipixia",
      "type": "post",
      "author": {
        "id": "9255000122",
        "username": "皮皮虾数据站",
        "display_name": "皮皮虾数据站",
        "verified": false
      },
      "title": "皮皮虾:数据 API 实战",
      "text": "一条关于数据 API 的作品。",
      "created_at": "2026-09-16T11:20:00Z",
      "metrics": {
        "likes": 21000,
        "comments": 158,
        "shares": 74,
        "views": 780000
      },
      "attachments": [
        {
          "type": "photo",
          "url": "https://cdn.example.com/images/pipixia-9259000000001001-1.jpeg"
        },
        {
          "type": "video",
          "preview_image_url": "https://cdn.example.com/cover/pipixia-9259000000001001.jpeg",
          "duration_ms": 45000
        }
      ],
      "fetched_at": "2026-09-21T09:00:00Z"
    }
  ],
  "next_cursor": null,
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 200,
      "cache_hit": false
    }
  }
}
GET/v1/pipixia/hot-searchpipixia.hot_search

ホットサーチ取得

パラメータ場所必須型説明
max_agequery任意integerこの秒数以内のデータを受け入れます。freshness が優先されます。
freshnessquery任意cache | default | live = default鮮度モード:cache(上流へ問い合わせない)/default/live(追加課金の可能性)。

リクエスト例

curl -H "Authorization: Bearer $FETCHPI_API_KEY" \
  "https://fetchpi.com/v1/pipixia/hot-search"

レスポンス例

{
  "data": {
    "platform": "pipixia",
    "type": "hot_search",
    "words": [
      {
        "word": "数据开放",
        "hot_value": 4821000
      },
      {
        "word": "实体层",
        "hot_value": 3120004
      }
    ],
    "fetched_at": "2026-09-21T09:00:00Z"
  },
  "meta": {
    "request_id": "req_01HTXQ8Z9HTQ",
    "freshness": {
      "mode": "default",
      "age_seconds": 0,
      "source_layer": "upstream",
      "stale": false
    },
    "billing": {
      "amount_credits": 100,
      "cache_hit": false
    }
  }
}