> ## 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로 제공됩니다. 웹 포털, 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/ko/datahub/api/reference/introduction">
    인증, 응답 형태, 페이지매김, 오류 등 공통 규약과 리소스별 전체 엔드포인트.
  </Card>

  <Card title="OpenAPI 스펙" href="/docs/ko/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/ko/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/ko/datahub/api/clients/javascript">JavaScript 클라이언트 문서</a>
  </Tab>
</Tabs>

## MCP

코드 없이 에이전트가 Data App을 쓰게 하려면 Data Hub 일반 MCP에 연결하세요. 검색, 상세, 실행, 상태, 결과, 취소, 목록 7개 도구를 제공하며 특정 App을 전용 도구로 고정할 수 있습니다. <a href="/docs/ko/datahub/mcp-capabilities">Data Hub MCP 기능</a>과 <a href="/docs/ko/datahub/quick-start/agent-connection/general">일반 연결 가이드</a>를 참고하세요.

## AI용

* 사이트 전체 인덱스: `https://www.octoparse.kr/docs/llms.txt`
* 문서 URL에 `.md`를 붙이면 Markdown 원문을 받을 수 있습니다.
* 계약 작성 Skill: `GET /v1/skills/dataapp-contract-json.zip` (Claude Code, Codex 등)
