---
title: 認証
sidebar:
  order: 2
---


IRBANK API は API キー（Bearer トークン）で認証します。

## キーの取得

[IRBANK Connect](https://app.irbank.net/mcp-api) で発行・失効・利用状況の確認を行います。

発行されるキーは `irbk_key_` で始まる 52 文字の文字列です。平文が表示されるのは発行直後の一度きりで、あとから再表示はできません。その場でコピーして保管してください（紛失した場合は、そのキーを失効させて新しいキーを発行します）。

## キーを環境変数に置く

キーはソースコードに直接書かず、環境変数など実行環境側に置いて読み込む形を推奨します。

以下のコード例では環境変数名を `IRBANK_API_KEY` としていますが、これは説明用の例です。API 側が特定の名前を要求することはないため、任意の名前を使えます（その場合は例の中の名前を読み替えてください）。

```bash
# macOS / Linux（そのシェルを開いている間だけ有効）
export IRBANK_API_KEY="irbk_key_..."
```

```powershell
# Windows (PowerShell)
$env:IRBANK_API_KEY = "irbk_key_..."
```

シェルを開き直しても使いたい場合は `~/.zshrc` などに書きます。アプリケーションから使う場合は、`.env` に置いて（`.gitignore` に追加したうえで）読み込むか、実行環境のシークレット管理機能に登録してください。

## リクエストへの付与

`Authorization` ヘッダーに `Bearer <キー>` の形で載せます（`Bearer` とキーの間は半角スペース 1 つです）。

```bash
# macOS / Linux
curl -H "Authorization: Bearer $IRBANK_API_KEY" \
  "https://api.irbank.net/v1/securities/7203"
```

```powershell
# Windows (PowerShell)。curl は Invoke-WebRequest の別名になっているため curl.exe を使います
curl.exe -H "Authorization: Bearer $env:IRBANK_API_KEY" "https://api.irbank.net/v1/securities/7203"
```

```python
import os
import requests

res = requests.get(
    "https://api.irbank.net/v1/securities/7203",
    headers={"Authorization": f"Bearer {os.environ['IRBANK_API_KEY']}"},
)
```

```javascript
const res = await fetch("https://api.irbank.net/v1/securities/7203", {
  headers: { Authorization: `Bearer ${process.env.IRBANK_API_KEY}` },
})
```

キーが正しくセットできているかだけを確かめたいときは、残りリクエスト数を返す `GET /v1/usage` が使えます。この照会自体は日次上限を消費しません。

```bash
# macOS / Linux
curl -H "Authorization: Bearer $IRBANK_API_KEY" \
  "https://api.irbank.net/v1/usage"
```

```powershell
# Windows (PowerShell)
curl.exe -H "Authorization: Bearer $env:IRBANK_API_KEY" "https://api.irbank.net/v1/usage"
```

## 認証に失敗したら

キーが無い・無効な場合は `401` を返します。次の点を確認してください。

- 環境変数が空になっていないか（macOS / Linux は `echo $IRBANK_API_KEY`、PowerShell は `echo $env:IRBANK_API_KEY` で確認できます）
- ヘッダーの値が `Bearer` で始まっているか（キーだけを渡すと `401` になります）
- キーが失効していないか（IRBANK Connect で確認できます）

ステータスコードとエラー形式の一覧は[エラーとレート制限](/guides/errors-and-limits)を参照してください。

## キーの管理

- キーはユーザーに紐づきます。複数キーを発行した場合、利用上限はユーザー単位で合算されます
- キーをソースコードや公開リポジトリに含めないでください
- 用途ごと（本番・検証など）にキーを分けておくと、片方だけを失効させられます
