# Insidie

Nulla di questo è un errore. È un comportamento che è meglio imparare dalla documentazione che dall'analisi di una risposta altrui.

## Nella risposta c'è un campo extra `_footer`

Il piano gratuito e **qualsiasi** chiamata senza chiave ricevono un campo aggiuntivo `_footer` con una firma nel corpo. Le chiavi a pagamento non lo vedono. Se il tuo parser è rigido sui campi extra, questo è il primo punto in cui incapperà.

## Una chiamata identica ripetuta costa zero

Una richiesta identica entro la finestra di cache restituisce `X-Cache: HIT`, e tale chiamata **non scalda crediti**: nella risposta `X-Credits-Used: 0`, e il residuo viene restituito. Quindi non puoi misurare il costo facendo girare ripetutamente la stessa richiesta: paghi una sola volta.

## La chiave Sandbox non consuma nulla

`aw_test_*` non scalda crediti affatto e non rientra nel limite dell'account. Non è una "piccola quota", è zero. Dovresti sviluppare proprio su di essa, e usare `aw_live_*` quando controlli la fatturazione.

## Campi sconosciuti vengono ignorati

Il corpo accetta chiavi extra e le ignora. L'eccezione è solo per le abbreviazioni brevi esplicitamente rifiutate (`lat`, `tz` e il resto, vedi [Formati campo](/agent-setup/field-formats/)). Quindi un errore di battitura nel nome di un campo di solito non si farà notare: riceverai `200` e una carta calcolata senza il tuo parametro.

<Aside type="caution">
Il caso peggiore di questo tipo: `city` sembra un indirizzo, ma non geocodifica nulla. Senza `latitude` e `longitude` non ci sarà la carta.
</Aside>

## Sopra il circolo polare il sistema case viene sostituito

Per i sistemi quadranti con `|latitude| > 66.5°` Swiss Ephemeris restituisce silenziosamente Porphyry. Non lo nascondiamo: nella risposta appare un campo `warning`. Whole Sign e Equal funzionano a qualsiasi latitudine.

Un caso simile abbiamo chiuso con un rifiuto: il codice `houseSystem` sconosciuto non dà più Placidus sotto un altro nome, ma restituisce `400`.

## La chiave ha tre limiti indipendenti

La chiave del browser `pk_` e la segreta `aw_` possono portare tre restrizioni contemporaneamente, e non si sostituiscono a vicenda.

| Limite | Cosa dice | Rifiuto |
|---|---|---|
| lista domini | da dove si può chiamare | `403 ORIGIN_REQUIRED` / `ORIGIN_NOT_ALLOWED` |
| `credits_cap_cycle` | quanto questa chiave può spendere | `429 KEY_BUDGET_EXHAUSTED` |
| `allowed_endpoints` | cosa si può chiamare | `403 ENDPOINT_NOT_IN_SCOPE` |

L'ambito degli endpoint **non** libera le letture di servizio: una chiave ristretta a `embed/*` non leggerà neanche le proprie statistiche. È intenzionale, dettagli in [Autenticazione](/authentication/).

## La modifica della chiave ha effetto dalla prossima richiesta

Le chiavi vengono cache per 60 secondi, ma qualsiasi modifica tramite `PATCH /v1/keys/{id}` resetta la cache immediatamente. Non c'è bisogno di aspettare un minuto.
