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

# API Key を更新

> 既存の API key の名前、ステータス、支出制限、またはアクセス制限を更新します。管理 key が必要です。

<RequestExample>
  ```bash cURL theme={null}
  curl -X PATCH https://api.arouter.ai/api/v1/keys/KEY_HASH \
    -H "Authorization: Bearer lr_mgmt_xxxx" \
    -H "Content-Type: application/json" \
    -d '{
      "name": "production-backend-v2",
      "limit": 200,
      "limit_reset": "monthly",
      "allowed_providers": ["openai", "anthropic", "google"],
      "allowed_models": ["openai/gpt-5.4", "anthropic/claude-sonnet-4.6", "google/gemini-2.5-flash"]
    }'
  ```

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

  resp = requests.patch(
      "https://api.arouter.ai/api/v1/keys/KEY_HASH",
      headers={"Authorization": "Bearer lr_mgmt_xxxx"},
      json={
          "name": "production-backend-v2",
          "limit": 200,
          "limit_reset": "monthly",
          "allowed_providers": ["openai", "anthropic", "google"],
      },
  )
  print(resp.json())
  ```

  ```go Go theme={null}
  updated, err := client.UpdateKey(ctx, "KEY_HASH", &arouter.UpdateKeyRequest{
      Name:             stringPtr("production-backend-v2"),
      Limit:            float64Ptr(200),
      LimitReset:       stringPtr("monthly"),
      AllowedProviders: []string{"openai", "anthropic", "google"},
  })
  ```

  ```typescript Node.js theme={null}
  const updated = await router.updateKey("KEY_HASH", {
    name: "production-backend-v2",
    limit: 200,
    limit_reset: "monthly",
    allowed_providers: ["openai", "anthropic", "google"],
  });
  console.log(updated.data.name); // "production-backend-v2"
  ```
</RequestExample>

リクエストボディのすべてのフィールドはオプションです。変更したいフィールドのみを含めてください。

## Key を無効化 / 有効化

```bash theme={null}
curl -X PATCH https://api.arouter.ai/api/v1/keys/KEY_HASH \
  -H "Authorization: Bearer lr_mgmt_xxxx" \
  -H "Content-Type: application/json" \
  -d '{"disabled": true}'
```

無効化された key はリクエストの受け付けを即座に停止します。`disabled: false` を設定すると再有効化できます。

## 支出制限を更新

```bash theme={null}
curl -X PATCH https://api.arouter.ai/api/v1/keys/KEY_HASH \
  -H "Authorization: Bearer lr_mgmt_xxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "limit": 500,
    "limit_reset": "monthly"
  }'
```

`limit` を `null` に設定すると支出上限が削除されます。`limit_reset` フィールドはカウンターのリセット時期を制御します：`daily`（UTC 深夜）、`weekly`（月曜日の UTC 深夜）、または `monthly`（月初日の UTC 深夜）。`null` に設定すると永続的な上限になります。
