Je eerste API-call in 5 minuten
Bijgewerkt Aug 2026 · API v3De snelste weg naar binnen is een personal access token — geen OAuth, geen app-registratie. Het leest en schrijft je eigen pon-data, precies goed voor scripts, Home Assistant en homelab-projecten.
Haal pon op je iPhone
Je account en je lijsten leven in de app — download pon uit de App Store en registreer je daar.
Log in op my.pon.app
Gebruik je pon-account. Je e-mailadres moet bevestigd zijn — anders antwoordt de activering met
403 EMAIL_UNVERIFIED.Zet de ontwikkelaarsmodus aan
my → Voor ontwikkelaars. Je accepteert de API-voorwaarden één keer.
Maak een token aan
Kies de scopes die je nodig hebt. Het geheim
pon_pat_…wordt één keer getoond — bewaar het als een wachtwoord. Vervaldatum: standaard 90 dagen, maximaal 365, of nooit.Roep de API aan
Dat is alles — gewoon Bearer, geen signing-gedoe:
# 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"])Wil je het proberen voordat je code schrijft? De API Reference heeft een Authorize-dialoog — plak je token erin en elk endpoint wordt klikbaar.
Reference → Authorize → BearerEen artikel toevoegen
POST /v3/lists/{list-id}/items — schrijven werkt op
precies dezelfde manier:
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"},
)Elke response gebruikt dezelfde envelop: { "data": …, "meta": … } bij
succes, { "errors": [ { "code", "message" } ] } bij een fout.
Ga niet pollen op veranderingen.
Registreer in plaats daarvan een webhook — pon roept jou aan wanneer een lijst verandert. Elke 5 minuten pollen telt op de fair-use-meter al als zwaar gebruik.Volgende stappen
- Authenticatie — wanneer een token genoeg is, en wanneer je OAuth wilt.
- Webhooks — reageer op lijstwijzigingen zonder polling.
- Limieten & fair use — wat royaal is, en wat een bovengrens is.