developers  · docsKonto
Hent dit token
Docs · Quickstart

Dit første API-kald på 5 minutter

Opdateret Aug 2026 · API v3

Den hurtigste vej ind er et personal access token — ingen OAuth, ingen app-registrering. Det læser og skriver dine egne pon-data, og det er lige præcis det rigtige til scripts, Home Assistant og homelab-projekter.

  1. Hent pon til din iPhone

    Din konto og dine lister bor i appen — hent pon i App Store og opret dig der.

    App Store

  2. Log ind på my.pon.app

    Brug din pon-konto. Din e-mail skal være bekræftet — ellers svarer aktiveringen med 403 EMAIL_UNVERIFIED.

  3. Slå udviklertilstand til

    my → For udviklere. Du accepterer API-vilkårene én gang.

  4. Opret et token

    Vælg de scopes, du har brug for. Hemmeligheden pon_pat_… vises én gang — gem den som et password. Udløb: 90 dage som standard, op til 365, eller aldrig.

  5. Kald API’et

    Det var det — almindelig Bearer, ingen signerings-dans:

# 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"])

Vil du prøve, før du skriver kode? API-referencen har en Authorize-dialog — indsæt dit token, og alle endpoints bliver klikbare.

Reference → Authorize → Bearer

Tilføj en vare

POST /v3/lists/{list-id}/items — skrivesiden fungerer på samme måde:

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"},
)

Alle svar bruger den samme konvolut: { "data": …, "meta": … } ved succes, { "errors": [ { "code", "message" } ] } ved fejl.

Lad være med at polle efter ændringer.

Registrér i stedet en webhook — pon kalder dig, når en liste ændrer sig. Polling hvert 5. minut tæller allerede som tung brug på fair-use-måleren.

Næste skridt