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

# クイックスタート

> 5 分以内に認証付きの初回 ChainStream 呼び出しを完了する。

このガイドを終えた時点で、あなたは以下を手にしています：

* API キー（または OAuth トークン）
* ChainStream REST API への動作確認済みの呼び出し
* SDK・CLI・MCP Server への動作確認済みの呼び出し
* 次のステップ — REST / GraphQL / WebSocket / Kafka / SDK / CLI / MCP のうち、どれがあなたのワークロードに合うか

<Note>所要時間：**5 分**。</Note>

## 前提条件

ChainStream アカウント。未登録の場合は[こちら](https://www.chainstream.io/dashboard)からサインアップしてください。

## 1. API キーの取得

1. [ChainStream Dashboard](https://www.chainstream.io/dashboard) を開く。
2. **Applications** へ移動。
3. **Create New App** をクリック。
4. 生成された **API Key**（`cs_live_…` で始まる）をコピー。

<Tip>
  API キーは最速の認証方法です。Machine-to-Machine (M2M) のシナリオでは
  OAuth 2.0 client-credentials を使用してください。詳細は
  [API キー & OAuth](/jp/docs/platform/authentication/api-keys-oauth)。
</Tip>

## 2. 最初のリクエスト

この例では Solana 上の Wrapped SOL のメタデータを取得します。使うインターフェースを選んでください：

<Tabs>
  <Tab title="cURL">
    ```bash theme={null}
    curl "https://api.chainstream.io/v2/token/solana/So11111111111111111111111111111111111111112/metadata" \
      -H "X-API-KEY: your_api_key"
    ```
  </Tab>

  <Tab title="SDK (TypeScript)">
    ```typescript theme={null}
    import { ChainStreamClient } from "@chainstream-io/sdk";

    const cs = new ChainStreamClient({ apiKey: "your_api_key" });

    const token = await cs.token.getToken(
      "So11111111111111111111111111111111111111112",
      "solana",
    );

    console.log(token.name, token.symbol, token.decimals);
    ```

    Python、Go、Rust は [SDK 一覧](/jp/sdks/overview) を参照。
  </Tab>

  <Tab title="CLI">
    ```bash theme={null}
    # インストール不要。npx が最新 CLI を取得します。
    npx @chainstream-io/cli token info \
      --chain solana \
      --address So11111111111111111111111111111111111111112
    ```

    初回実行時にキーの入力を求められます。明示的に設定することも可能です：

    ```bash theme={null}
    npx @chainstream-io/cli config set --key apiKey --value your_api_key
    ```
  </Tab>

  <Tab title="MCP (AI エージェント)">
    ```bash theme={null}
    CHAINSTREAM_API_KEY=your_api_key npx @chainstream-io/mcp
    ```

    あとは AI エージェントに *"What is the SOL token on Solana?"* と尋ねるだけ — 正しいツールが呼び出されます。

    Claude / Cursor / ChatGPT の具体的な設定は
    [MCP Server セットアップ](/jp/docs/ai-agents/mcp-server/setup) を参照。
  </Tab>

  <Tab title="OAuth 2.0 (JWT)">
    OAuth 2.0 Client Credentials フロー：

    ```bash theme={null}
    curl -X POST "https://dex.asia.auth.chainstream.io/oauth/token" \
      -H "Content-Type: application/json" \
      -d '{
        "client_id": "YOUR_CLIENT_ID",
        "client_secret": "YOUR_CLIENT_SECRET",
        "audience": "https://api.dex.chainstream.io",
        "grant_type": "client_credentials"
      }'

    curl "https://api.chainstream.io/v2/token/solana/So11111111111111111111111111111111111111112/metadata" \
      -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
    ```
  </Tab>
</Tabs>

### レスポンス

```json theme={null}
{
  "chain": "solana",
  "address": "So11111111111111111111111111111111111111112",
  "name": "Wrapped SOL",
  "symbol": "SOL",
  "decimals": 9,
  "imageUrl": "https://raw.githubusercontent.com/solana-labs/token-list/main/assets/mainnet/So11111111111111111111111111111111111111112/logo.png",
  "tokenCreatedAt": 1710417600000
}
```

| フィールド            | 型       | 説明                   |
| :--------------- | :------ | :------------------- |
| `chain`          | string  | チェーン識別子（小文字）。        |
| `address`        | string  | トークンのコントラクトアドレス。     |
| `name`           | string  | トークンの名前。             |
| `symbol`         | string  | ティッカーシンボル。           |
| `decimals`       | integer | 小数点以下桁数。             |
| `imageUrl`       | string  | ロゴ URL（null の可能性あり）。 |
| `tokenCreatedAt` | integer | 作成タイムスタンプ（ms）。       |

## 3. 最適な接続方法を選ぶ

たった今、単一のリクエスト/レスポンス呼び出しを行いました。実際の統合ではもっと多くのことが必要です：

<CardGroup cols={2}>
  <Card title="REST API" icon="bolt" href="/jp/docs/access-methods/rest-api">
    オンデマンドのルックアップ — トークン、ウォレット、プール、トレード、コンプライアンス。
  </Card>

  <Card title="GraphQL" icon="diagram-project" href="/jp/docs/access-methods/graphql">
    チェーンデータ cube 全体に対する柔軟な分析クエリ。
  </Card>

  <Card title="WebSocket" icon="tower-broadcast" href="/jp/docs/access-methods/websocket">
    ライブ UI やブラウザアプリ向けのサブ秒プッシュ。
  </Card>

  <Card title="Kafka Streams" icon="bars-staggered" href="/jp/docs/access-methods/kafka-streams/overview">
    バックエンド、インデクサ、トレーディングエンジンへの exactly-once 配信。
  </Card>

  <Card title="SDK" icon="box" href="/jp/sdks/overview">
    TypeScript / Python / Go / Rust、認証内蔵の型付きクライアント。
  </Card>

  <Card title="CLI" icon="terminal" href="/jp/docs/access-methods/cli">
    スクリプト、CI/CD、AI エージェント用のペイパーコール。
  </Card>
</CardGroup>

## トラブルシューティング

<AccordionGroup>
  <Accordion title="401 Unauthorized">
    * `X-API-KEY` または `Authorization: Bearer …` ヘッダーが正しく綴られていることを確認。
    * キーがローテーションされた場合は再生成。
    * OAuth モードではトークンが期限切れでないか確認（デフォルト TTL は 1 時間）。
  </Accordion>

  <Accordion title="429 Too Many Requests">
    プランのレート制限に達しました。無料プランは 10 req/s から。プランをアップグレードするか
    指数バックオフを実装してください。詳細は
    [プランとユニット](/jp/docs/platform/billing-payments/plans-and-units)。
  </Accordion>

  <Accordion title="他のチェーンのトークンをクエリするには？">
    URL のチェーン識別子を置き換えるだけです：`solana`、`ethereum`、`bsc`、`base`、
    `polygon`、`arbitrum`、`optimism`、`avalanche`、`zksync`、`tron`。
    全リストは [サポートチェーン](/jp/docs/supported-chains)。
  </Accordion>
</AccordionGroup>

## 次のステップ

<CardGroup cols={2}>
  <Card title="データカタログを見る" icon="boxes-stacked" href="/jp/docs/data-products/overview">
    公開している全データセットとカバレッジ・更新頻度。
  </Card>

  <Card title="リアルタイムストリームを開始" icon="tower-broadcast" href="/jp/docs/access-methods/websocket">
    ライブのトレード、価格、転送、プールイベントを購読。
  </Card>

  <Card title="コンプライアンスチェック" icon="shield-halved" href="/jp/docs/compliance/overview">
    転送、出金、カウンターパーティに対する KYT / KYA。
  </Card>

  <Card title="AI エージェント構築" icon="robot" href="/jp/docs/ai-agents/overview">
    MCP + Agent Skills で Claude、Cursor、ChatGPT に接続。
  </Card>
</CardGroup>
