Lyfti Gavefeed API
Hvordan hente tildelte gaver og statistikk ved hjelp av API. NB! Krever utviklerforståelse!
Alle kall til API-et må inneholde en gyldig api_key som GET-parameter. Nøkkelen knyttes til en "stiftelse" og har daglig begrensning på antall kall. API-nøkkel får du ved å kontakte Lyfti-teamet og du har en aktiv konto.
NB! API-nøkkelen er sensitiv og skal aldri eksponeres i JavaScript, HTML eller klientkoden.
Alle kall mot Lyfti API må gjøres fra serversiden (f.eks. via MODX, PHP eller et backend-system).
Nøkkelen er å anse som en privat nøkkel, og må behandles som en hemmelighet.
Dersom du har behov for å vise API-data i frontend (f.eks. med JavaScript i nettleseren), må du bruke en egen proxy-endepunkt som gjør kall fra servernivå.
Eksempel
https://api.lyfti.no/endepunkt?api_key=din_nøkkel
Endepunkt: /giftfeed
Gir en liste over publiserte, bevilgede søknader.
Eksempel:
GET /giftfeed?api_key=din_nøkkel&type=1&limit=10
Tilgjengelige parametere:
| Navn | Type | Beskrivelse |
| api_key | string | (Påkrevd) Din personlige nøkkel |
| type | integer | Filter på søknadstype |
| date | date | Fra-dato: kun bevilgninger fra og med denne datoen |
| date_end | date | Til-dato: kun bevilgninger til og med denne datoen |
| limit | integer | Antall resultater (0 = alle) |
| offset | integer | Hopper over X antall resultater |
Respons
{ "success": true, "data": [ { "id": 123, "type": 1, "title": "Ut i naturen", "amount": 200000, "date": "2024-09-15", "name": "Ringerike Turlag", "category": "Friluftsliv", ... } ], "meta": { "count": 10, "limit": 10, "rate_limit": 1000, "rate_used": 7, "next_reset": "2025-04-09 00:00:00", "filters": { "type": 1 } }}
Endepunkt: /statistics
Gir nøkkeltall for en "stiftelse" - basert på tilgjengelige søknader og tildelinger.
Eksempel:
GET/statistics?api_key=din_nøkkel
Respons
{ "success": true, "data": { "years": 12, "earliestYear": "2012", "amount_cash": 135, "allGifts": 760, "projectGifts": 310, "applicants": 198, "municipalities": ["Gran", "Lunner", ...], "municipalities_real": ["Gran", "Lunner", "Andre"] }, "meta": { "count": 8 }}
Feil og validering
Format for feilrespons
Alle feil returneres med:
Success: false- Et error-objekt som inneholder:
code(HTTP-lignende status)message(kort beskrivelse)details(valgfritt, ved rate limiting)
Feiltyper
| Kode | Betydning | Når det skjer |
| 400 | Missing or invalid parameters | api_key mangler eller har feil format |
| 403 | API key not found or inactive | Gitt api_key finnes ikke eller er deaktivert |
| 429 | Rate limit exceeded | Maks antall kall per dag er brukt opp |
| 500 | Internal error | Kall til API-et feiler |
Eksempler
Manglende api_key
{ "success": false, "error": { "code": 400, "message": "Missing required parameter: api_key" }}
Ugyldig api_key-format
{ "success": false, "error": { "code": 400, "message": "Invalid API key format" }}
API-nøkkelen finnes ikke
{ "success": false, "error": { "code": 403, "message": "API key not found or inactive" }}
Rate limit nådd
{ "success": false, "error": { "code": 429, "message": "Rate limit exceeded", "details": { "rate_limit": 1000, "requests_used": 1000, "reset_at": "2025-04-09 00:00:00" } }}
Spørsmål?
Ta kontakt med Lyfti-teamet dersom du trenger hjelp til å bruke API-et eller tolke resultatene.