Hoppa till innehåll
Meny och API-referens

Guide

Paginering

Använd sidmarkörer för att läsa stora resultat i stabila och förutsägbara delar.

Listresurser använder samma svarskuvert. Datan ligger i data och nästa sida styrs av två tydliga fält.

json
{
  "data": [ … ],
  "has_more": true,
  "next_cursor": "eyJ2IjoxLCJzIjoicmV2ZW51ZSIsImYiOiI4YzE…"
}

Skicka värdet från next_cursor som cursor i nästa anrop. Avsluta när has_more är false.

bash
curl "https://firmainfo.se/api/v1/companies?limit=100" \
  -H "Authorization: Bearer $FIRMAINFO_API_KEY"

curl "https://firmainfo.se/api/v1/companies?limit=100&cursor=eyJ2IjoxLC…" \
  -H "Authorization: Bearer $FIRMAINFO_API_KEY"

Resultat utan totalantal

Ett exakt totalantal kan kräva att miljontals rader räknas för varje filterkombination. Det gör enkla frågor onödigt långsamma. Därför svarar API:et med has_more och låter klienten läsa vidare utan en dyr räkneoperation.

Markörens giltighetstid

  • Tolka eller ändra aldrig innehållet i en sidmarkör. Formatet är internt och kan utvecklas.
  • En markör gäller i 24 timmar. Därefter svarar API:et med 410 cursor_expired.
  • Filter och sortering hör ihop med första sidan. Om de ändras tillsammans med en gammal markör får du 400 cursor_conflict.
  • Använd inte sidmarkörer som permanenta bokmärken. För långvarig bevakning ska du spara ett datum och använda after eller since.

När data ändras under pagineringen

Nya poster kan läggas till utan att offset förskjuts. En befintlig rad kan däremot byta plats om sorteringsvärdet uppdateras, till exempel när ett nytt bokslut ändrar senaste omsättningen. Använd förändringsflödet när du behöver synkronisera ändringar över tid.