> ## Documentation Index
> Fetch the complete documentation index at: https://www.octoparse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Data Hub API

> REST API、公式クライアント、MCP から Data App を検索・実行し、課金を確認します。

Data Hub のすべての機能は、公開 REST API として提供されます。Web ポータル、MCP、Python / JavaScript クライアントは、同じデータと課金ルールへの異なる入り口です。

## REST API

ベース URL は `https://api-datahub.octoparse.com` です。エンドポイントはすべて `/v1` で始まり、リクエストとレスポンスは JSON です。認証が必要なエンドポイントは `Authorization: Bearer <API Key>` を使います。API キーは Octoparse アカウントセンターで作成します。

実行を開始して結果を待つ例:

```bash theme={null}
curl -X POST \
  -H "Authorization: Bearer $OCTOPARSE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"product": "p-9001"}' \
  "https://api-datahub.octoparse.com/v1/data-apps/carol/reviews-query/runs?wait=60"
```

<CardGroup cols={2}>
  <Card title="API リファレンス" href="/docs/jp/datahub/api/reference/introduction">
    認証、レスポンス形式、ページネーション、エラーなど共通規約と、リソース別の全エンドポイント。
  </Card>

  <Card title="OpenAPI 仕様" href="/docs/jp/datahub/api/openapi.yaml">
    Postman、コード生成、AI コーディング支援に取り込める機械可読な契約ファイル。
  </Card>
</CardGroup>

## クライアントライブラリ

公式クライアントは呼び出し側向け REST エンドポイントをラップします。メソッドはエンドポイントと 1 対 1 で、戻り値はレスポンスの `data` そのものです。

<Tabs>
  <Tab title="Python">
    ```bash theme={null}
    pip install octoparse-client
    ```

    ```python theme={null}
    from octoparse_client import Client

    with Client(api_key="<your API key>") as client:
        result = client.search("reviews", limit=5)
        run = client.call("carol/reviews-query", {"product": "p-9001"})
        for record in client.iterate_records(run["run_id"]):
            print(record)
    ```

    <a href="/docs/jp/datahub/api/clients/python">Python クライアントのドキュメント</a>
  </Tab>

  <Tab title="JavaScript">
    ```bash theme={null}
    npm install octoparse-client
    ```

    ```js theme={null}
    import { Client } from "octoparse-client";

    const client = new Client({ apiKey: "<your API key>" });
    const result = await client.search("reviews", { limit: 5 });
    const run = await client.call("carol/reviews-query", { product: "p-9001" });
    for await (const record of client.iterateRecords(run.run_id)) {
      console.log(record);
    }
    ```

    <a href="/docs/jp/datahub/api/clients/javascript">JavaScript クライアントのドキュメント</a>
  </Tab>
</Tabs>

## MCP

コードを書かずにエージェントへ Data App を使わせる場合は、Data Hub 汎用 MCP に接続します。検索、詳細、実行、状態、結果、キャンセル、一覧の 7 ツールがあり、特定 App を専用ツールとして固定できます。<a href="/docs/jp/datahub/mcp-capabilities">Data Hub MCP の機能</a>と<a href="/docs/jp/datahub/quick-start/agent-connection/general">汎用接続ガイド</a>を参照してください。

## AI向け

* サイト全体の索引: `https://www.octoparse.jp/docs/llms.txt`
* 任意のドキュメント URL に `.md` を付けると Markdown 原文を取得できます。
* 契約作成 Skill: `GET /v1/skills/dataapp-contract-json.zip`（Claude Code、Codex などが Data App 契約を生成するため）
