Kom i gang
Kvam Disc Golf API gir tilgang til vår disc golf-database: plastikk, molds, merke og flygtall. Data frå over 400 diskar og 150+ plastikk-variantar.
Alle kall krev ein API-nøkkel. Du får nøkkelen gratis ved å registrere e-postadressa di nedanfor.
Registrer deg
Fyll inn skjemaet under POST /v1/register. Du får ein nøkkel på e-post.
Legg ved nøkkelen
Send nøkkelen med kvar førespurnad i headeren x-api-key.
Hent data
Alle endepunkt returnerer JSON med data-array, total, limit og offset.
API-nøkkel
Send nøkkelen i ein av desse to headrane:
# Tilrådd x-api-key: kvam_abc123… # Alternativt Authorization: Bearer kvam_abc123…
Treng du høgare grense? Ta kontakt på api@kvamdgs.no.
Registrer API-nøkkel
Registrer e-postadressa di for å få ein API-nøkkel. Ingen betaling krevst.
| Felt | Type | Beskriving |
|---|---|---|
| string | E-postadressa di | |
| name | string | Namn / organisasjon |
| use_casevalgfri | string | Korleis du planlegg å bruke API-et |
curl -X POST https://api.kvamdgs.no/v1/register \ -H "Content-Type: application/json" \ -d '{ "email": "dev@example.com", "name": "Ola Utviklar", "use_case": "Disc golf-app" }' // Svar 201 { "key": "kvam_a1b2c3d4…", "email": "dev@example.com", "rate_limit_per_min": 60 }
Nøkkelen vert sendt til e-posten din. Ingen spam, ingen betaling.
Merke
Returnerer alle disc golf-merke i databasen.
| Param | Type | Standard |
|---|---|---|
| limitvalgfri | integer | 200 (maks 500) |
| offsetvalgfri | integer | 0 |
{
"data": [
{
"name": "Discmania",
"slug": "discmania",
"country": "Finland",
"website": "https://discmania.net",
"logo_url": "…",
"description": "…"
}
],
"total": 24,
"limit": 200,
"offset": 0
}
Plastikk
Alle plastikk-variantar med haldbarheit, plastikkfamilie og glow-status.
| Param | Type | Beskriving |
|---|---|---|
| brandvalgfri | string | Filter på merkenamn, f.eks. Discmania |
| limitvalgfri | integer | 100 (maks 500) |
| offsetvalgfri | integer | 0 |
{
"data": [
{
"name": "C-Line",
"slug": "c-line",
"brand": "Discmania",
"family": "C-Line",
"durability_tier": "premium",
"plastic_type": null,
"description": "…",
"is_glow": false
}
],
"total": 156,
"limit": 100,
"offset": 0
}
Molds
Disc-molds med flygtall (speed, glide, turn, fade).
| Param | Type | Beskriving |
|---|---|---|
| brandvalgfri | string | Filter på merke |
| disc_typevalgfri | string | distance_driver / fairway_driver / midrange / approach / putter |
| limitvalgfri | integer | 100 (maks 500) |
| offsetvalgfri | integer | 0 |
{
"data": [
{
"name": "FD",
"slug": "fd",
"brand": "Discmania",
"speed": 7,
"glide": 6,
"turn": -1,
"fade": 1,
"pdga_approved": true
}
],
"total": 312,
"limit": 100,
"offset": 0
}
Diskkataloget
Søk og filtrer i heile diskkataloget med kombinerte flygtall-filter.
| Param | Type | Beskriving |
|---|---|---|
| brandvalgfri | string | Merkenamn |
| plasticvalgfri | string | Plastikknamn |
| moldvalgfri | string | Mold-namn |
| disc_typevalgfri | string | distance_driver / fairway_driver / midrange / approach / putter |
| speed_min / speed_maxvalgfri | integer | Speed-range (1–15) |
| glide_min / glide_maxvalgfri | integer | Glide-range (1–7) |
| turn_min / turn_maxvalgfri | number | Turn-range (−5 til 1) |
| fade_min / fade_maxvalgfri | integer | Fade-range (0–5) |
| is_glowvalgfri | boolean | true for glow-plastikk |
| limitvalgfri | integer | 50 (maks 200) |
| offsetvalgfri | integer | 0 |
GET /v1/discs?disc_type=fairway_driver &turn_min=-3&turn_max=-1 &limit=5 // Svar { "data": [ { "handle": "discmania-c-line-fd", "title": "Discmania C-Line FD", "brand": "Discmania", "mold": "FD", "plastic": "C-Line", "plastic_family": "C-Line", "speed": 7, "glide": 6, "turn": -1, "fade": 1, "disc_category": "fairway_driver", "stability_category": "understable", "skill_level": "intermediate", "is_glow": false } ], "total": 48, "limit": 5, "offset": 0 }
Feilkoder
Alle feil returnerer JSON med eit message-felt.
| Statuskode | Beskriving |
|---|---|
| 200 / 201 | Vellykka |
| 400 | Ugyldig førespurnad — sjekk body/parametrar |
| 401 | Nøkkel manglar eller er ugyldig |
| 409 | E-post allereie registrert |
| 429 | Rate limit nådd — vent eit minutt |
| 500 | Intern feil — ta kontakt viss det held fram |