# 落とし穴

これらのいずれもエラーではありません。これは、他人のレスポンスを解析するよりも、ドキュメントから学ぶべき動作です。

## レスポンスに余分な `_footer` フィールドがあります

無料プランと**キーなし**のすべての呼び出しは、ボディに署名付きの追加フィールド `_footer` を受け取ります。有料キーはこれを見ません。もしパーサーが余分なフィールドに厳しい場合、これが最初につまずくポイントになります。

## 同じリクエストの繰り返しは無料です

キャッシュウィンドウ内での同一リクエストは `X-Cache: HIT` を返し、そのような呼び出しは**クレジットを消費しません**：レスポンスには `X-Credits-Used: 0` が含まれ、残高が返されます。つまり、同じリクエストを繰り返し実行してコストを測ることはできません：一度だけ支払います。

## Sandboxキーは何も消費しません

`aw_test_*` はクレジットを全く消費せず、アカウントの制限にも含まれません。これは「小さなクォータ」ではなく、ゼロです。開発はこれを使い、課金を確認する時に `aw_live_*` を使用するべきです。

## 不明なフィールドは無視されます

ボディは余分なキーを受け入れ、それらを無視します。明示的に拒否された短縮表記（`lat`、`tz` など、詳細は[フィールド形式](/agent-setup/field-formats/)を参照）の例外のみです。したがって、フィールド名のタイプミスは通常気づかれません：`200` と、あなたのパラメータなしで計算されたチャートが返されます。

<Aside type="caution">
この種の最も高価なケース：`city` はアドレスのように見えますが、ジオコーディングは何も行いません。`latitude` と `longitude` がないとチャートは生成されません。
</Aside>

## 極圏ではハウスシステムが自動的に変更されます

四分円システムの場合、`|latitude| > 66.5°` では Swiss Ephemeris が静かに Porphyry を返します。これを隠していません：レスポンスに `warning` フィールドが表示されます。Whole Sign と Equal は任意の緯度で動作します。

関連ケースは拒否で閉じました：不明な `houseSystem` コードは、以前は別名で Placidus を返していましたが、現在は `400` を返します。

## キーには3つの独立した制限があります

ブラウザキー `pk_` と秘密キー `aw_` は同時に3つの制限を持つことができ、それらは互いに置き換わりません：

| 制限 | 説明 | 拒否コード |
|---|---|---|
| ドメインリスト | どこから呼び出せるか | `403 ORIGIN_REQUIRED` / `ORIGIN_NOT_ALLOWED` |
| `credits_cap_cycle` | このキーがいくら使えるか | `429 KEY_BUDGET_EXHAUSTED` |
| `allowed_endpoints` | 何を呼び出せるか | `403 ENDPOINT_NOT_IN_SCOPE` |

エンドポイントの**スコープ**はサービス読み取りを解放しません：`embed/*` に制限されたキーは、自身の統計さえ読み取れません。これは意図的なもので、詳細は[認証](/authentication/)にあります。

## キーの修正は次のリクエストから有効になります

キーは60秒間キャッシュされますが、`PATCH /v1/keys/{id}` による変更は即座にキャッシュをリセットします。1分待つ必要はありません。
