developers  · docsHesap
Token'ını al
Dokümanlar · Quickstart

5 dakikada ilk API çağrın

Güncellendi Aug 2026 · API v3

En hızlı giriş yolu bir kişisel erişim token’ı — OAuth yok, uygulama kaydı yok. Kendi pon verilerini okur ve yazar; scriptler, Home Assistant ve homelab işleri için tam da doğru olan bu.

  1. pon’u iPhone’una indir

    Hesabın ve listelerin uygulamada yaşar — pon’u App Store’dan indir ve orada kaydol.

    App Store

  2. my.pon.app’te oturum aç

    pon hesabını kullan. E-postanın doğrulanmış olması gerekir — aksi halde etkinleştirme 403 EMAIL_UNVERIFIED döner.

  3. Geliştirici modunu aç

    my → Geliştiriciler için. API koşullarını bir kez kabul edersin.

  4. Bir token oluştur

    İhtiyacın olan scope’ları seç. pon_pat_… gizli anahtarı yalnızca bir kez gösterilir — onu bir parola gibi sakla. Geçerlilik: varsayılan 90 gün, en fazla 365, ya da süresiz.

  5. API’yi çağır

    Hepsi bu — düz Bearer, imza töreni yok:

# list your lists
curl https://api.pon.app/v3/lists \
  -H "Authorization: Bearer pon_pat_XXXX"
const res = await fetch("https://api.pon.app/v3/lists", {
  headers: { Authorization: "Bearer pon_pat_XXXX" },
});
const { data } = await res.json();
console.log(data);
import requests

res = requests.get(
    "https://api.pon.app/v3/lists",
    headers={"Authorization": "Bearer pon_pat_XXXX"},
)
print(res.json()["data"])

Kod yazmadan önce denemek ister misin? API Referansı’nda bir Authorize penceresi var — token’ını yapıştır, her endpoint tıklanabilir hale gelsin.

Referans → Authorize → Bearer

Ürün ekle

POST /v3/lists/{list-id}/items — yazma tarafı da aynı şekilde çalışır:

curl -X POST https://api.pon.app/v3/lists/LIST_ID/items \
  -H "Authorization: Bearer pon_pat_XXXX" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Oat milk" }'
await fetch(`https://api.pon.app/v3/lists/${listId}/items`, {
  method: "POST",
  headers: {
    Authorization: "Bearer pon_pat_XXXX",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({ name: "Oat milk" }),
});
requests.post(
    f"https://api.pon.app/v3/lists/{list_id}/items",
    headers={"Authorization": "Bearer pon_pat_XXXX"},
    json={"name": "Oat milk"},
)

Her yanıt aynı zarfı kullanır: başarıda { "data": …, "meta": … }, hatada { "errors": [ { "code", "message" } ] }.

Değişiklikler için polling yapma.

Onun yerine bir webhook kaydet — bir liste değiştiğinde pon seni çağırır. Her 5 dakikada bir polling yapmak, fair-use göstergesinde şimdiden yoğun kullanım olarak görünür.

Sonraki adımlar