# Tuzaklar

Bunun hiçbiri bir hata değil. Bu, belgelerden yabancı bir yanıtın ayrıştırılmasından daha iyi öğrenilmesi gereken bir davranıştır.

## Yanıtta gereksiz `_footer` alanı var

Ücretsiz tarif ve **herhangi bir** anahtar olmadan yapılan çağrı, gövdeye bir imza içeren ek `_footer` alanı alır. Ücretli anahtarlar bunu göremez. Ayrıştırıcınız gereksiz alanlara karşı katıysa, bu ilk duraklama noktanız olacaktır.

## Aynı tekrarlı çağrı sıfır maliyete tabidir

Önbellek penceresi içindeki aynı istek `X-Cache: HIT` döndürür ve böyle bir çağrı **kredi düşmez**: yanıtta `X-Credits-Used: 0` gösterilir ve bakiye geri iade edilir. Yani aynı isteği tekrarlayarak maliyeti ölçemezsiniz: bir kez ödersiniz.

## Sandbox anahtarı hiçbir şeyi harcamaz

`aw_test_*` kredi düşmez ve hesap sınırına dahil değildir. Bu 'küçük kvota' değil, sıfırdır. Geliştirmeyi tam olarak bunun üzerinde yapmalısınız ve faturalandırmayı kontrol ettiğinizde `aw_live_*` kullanmalısınız.

## Bilinmeyen alanlar sessizce geçer

Gövde ek anahtarları kabul eder ve bunları görmezden gelir. İstisna, açıkça reddedilen kısa yazımlardır (`lat`, `tz` ve diğerleri, bkz. [Alan Formatları](/agent-setup/field-formats/)). Bu yüzden bir alan adındaki yazım hatası genellikle kendini göstermez: `200` ve parametreniz olmadan hesaplanmış bir harita alırsınız.

<Aside type="caution">
Bu tür en pahalı durum: `city` bir adres gibi görünür ancak hiçbir şeyi coğrafi olarak kodlamaz. `latitude` ve `longitude` olmadan harita olmaz.
</Aside>

## Kutup dairesinde ev sistemleri değiştirilir

Kuadrant sistemleri için `|enlem| > 66.5°` olduğunda Swiss Ephemeris sessizce Porphyry döndürür. Bunu gizlemiyoruz: yanıtta `warning` alanı ortaya çıkar. Whole Sign ve Equal her enlemde çalışır.

Komşu durumu reddederek kapattık: bilinmeyen `houseSystem` kodları artık başka bir ad altında Placidus vermiyor, `400` döndürüyor.

## Anahtarın üç bağımsız sınırı vardır

Tarayıcı anahtarı `pk_` ve gizli `aw_` aynı anda üç kısıtlama taşıyabilir ve birbirlerinin yerini almazlar:

| Sınır | Ne söyler | Reddetme |
|---|---|---|
| alan adı listesi | nereden çağrılabilir | `403 ORIGIN_REQUIRED` / `ORIGIN_NOT_ALLOWED` |
| `credits_cap_cycle` | bu anahtar ne kadar harcayabilir | `429 KEY_BUDGET_EXHAUSTED` |
| `allowed_endpoints` | tam olarak ne çağrılabilir | `403 ENDPOINT_NOT_IN_SCOPE` |

Uç nokta kapsamı **hizmet** okumalarını serbest bırakmaz: `embed/*` ile daraltılmış bir anahtar kendi istatistiklerini bile okuyamaz. Bu kasıtlıdır, detaylar [Kimlik Doğrulama](/authentication/) bölümünde.

## Anahtar düzeltmesi bir sonraki istekten itibaren geçerli olur

Anahtarlar 60 saniye önbelleğe alınır, ancak `PATCH /v1/keys/{id}` ile yapılan her değişiklik önbelleği hemen sıfırlar. Bir dakika beklemeye gerek yok.
