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.
{
"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.
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
afterellersince.
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.