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

# 认证

> 一把 API Key —— 给 MCP 客户端做环境变量，或直接做 HTTP 请求头。

<Note icon="key">
  在 [Dashboard → API Keys](https://llmquantdata.com/dashboard) 生成 Key。
</Note>

<Warning>
  请像对待密码一样保护 API Key —— **不要**提交到源码、**不要**暴露在前端代码、**不要**贴进 chat 会话。
</Warning>

## 获取 API Key

<Steps>
  <Step title="登录" icon="user">
    打开 [llmquantdata.com](https://llmquantdata.com) 注册或登录。
  </Step>

  <Step title="创建 API Key" icon="key">
    进入 [Dashboard](https://llmquantdata.com/dashboard) → **API Keys** → **Create API key**。**只显示一次，请立即复制保存**。
  </Step>

  <Step title="保存为环境变量" icon="terminal">
    ```bash theme={null}
    export LLMQUANT_API_KEY=your_api_key_here
    ```

    加进 shell profile（`~/.zshrc` / `~/.bashrc`）让它持久化。下面 MCP 与 HTTP 两种用法都从这一份环境变量读取。
  </Step>
</Steps>

## 怎么用

<Tabs>
  <Tab title="MCP runtime（推荐）">
    所有支持的 MCP 客户端（Claude Code / Cursor / Codex / Gemini CLI / Claude Desktop）都从 `LLMQUANT_API_KEY` 读取。写 JSON 配置文件时，请在 `env` 块里填真实 key。

    详见 [MCP Server 接入](/zh-CN/integration/mcp-server#%E5%BF%AB%E9%80%9F%E6%8E%A5%E5%85%A5) 的逐客户端命令。

    ```json title="例：Cursor / Claude Desktop 配置片段" theme={null}
    {
      "mcpServers": {
        "llmquant-data": {
          "command": "npx",
          "args": ["-y", "@llmquant/data-mcp"],
          "env": {
            "LLMQUANT_API_KEY": "your_api_key_here"
          }
        }
      }
    }
    ```
  </Tab>

  <Tab title="HTTP（直调）">
    每个请求在 `Authorization` 请求头传 key：

    <CodeGroup>
      ```bash cURL theme={null}
      curl "https://api.llmquantdata.com/api/equity/historical?ticker=AAPL&limit=5" \
        -H "Authorization: Bearer $LLMQUANT_API_KEY"
      ```

      ```python Python theme={null}
      import os, requests

      response = requests.get(
          "https://api.llmquantdata.com/api/equity/historical",
          headers={"Authorization": f"Bearer {os.environ['LLMQUANT_API_KEY']}"},
          params={"ticker": "AAPL", "limit": 5},
      )
      ```
    </CodeGroup>
  </Tab>
</Tabs>

## 错误码

| 状态码                               | 含义                  |
| --------------------------------- | ------------------- |
| <Badge color="green">200</Badge>  | 请求成功                |
| <Badge color="orange">400</Badge> | 请求错误 — 参数无效或缺失      |
| <Badge color="red">401</Badge>    | 未授权 — API Key 无效或缺失 |
| <Badge color="red">402</Badge>    | Credits 不足 — 需要充值余额 |
| <Badge color="orange">404</Badge> | 未找到 — Ticker 或资源不存在 |
| <Badge color="orange">429</Badge> | 请求频率超限              |

## 频率限制

频率限制根据套餐不同而异。超出限制返回 `429`。如需更高限额，请联系我们。

<Tip>
  在 `429` 时静默重试的 MCP runtime 会快速烧 credit。排查异常账单时记得查 agent 的 tool-call log。
</Tip>

## 更换或撤销 Key

需要更换 Key 时，先在 [Dashboard → API Keys](https://llmquantdata.com/dashboard) 创建新 Key，更新各个环境，再撤销旧 Key。继续使用已撤销 Key 的请求会返回 `401`。

<Warning>
  撤销旧 Key 前，**所有**用 MCP 的环境都要更新 `LLMQUANT_API_KEY` —— shell profile、CI secrets、团队 onboarding 模板都不能漏。
</Warning>
