Hva skjer i Midtre Gauldal? — utviklerportal
Hva skjer i Midtre Gauldal? publiserer arrangementene sine gjennom et åpent GraphQL-API. Du trenger verken konto, nøkkel eller godkjenning for å lese det: dataene er offentlige og forblir offentlige.
- Endepunkt:
https://hvaskjerimidtregauldal.no/graphQL - Dokumentasjon: API · Referanse · Widget · Endringslogg · Nøkler
- Prøv det: sandboxen kjører spørringer mot denne kalenderen med skjemaet og autofullføring, ingenting å installere
- Maskinlesbare kopier: llms.txt, schema.graphql, og hver side som markdown på
https://hvaskjerimidtregauldal.no/utviklere/<side>.nb.md(norsk) ellerhttps://hvaskjerimidtregauldal.no/utviklere/<side>.md(engelsk, som også er svaret påAccept: text/markdown).
API-et er per lisens: dette endepunktet svarer bare med denne kalenderens arrangementer. En annen kommunes kalender har sitt eget endepunkt, sine egne kategori-id-er og sine egne nøkler.
De tre reglene
Hver av disse har kostet noen flere uker. Les dem før den første spørringen.
- ID-ene er kontrakten. Filtrer og match på
id(arrangementer, steder, arrangører) og på kategori-id-er. Navn og slugs er presentasjon: de redigeres av mennesker, de er forskjellige fra lisens til lisens, og de endrer seg. Hent etikettene fracategoriesved hver kjøring; cache dem aldri og skriv dem aldri for hånd. - Datoer bærer UTC-forskyvningen som gjelder på arrangementets dato.
startDateogendDateser ut som2026-11-01 10:00:00+01:00om vinteren og2026-07-01 10:00:00+02:00om sommeren. De er ikke «ISO med +00», og skilletegnet er et mellomrom, ikke enT. Vis dem iEurope/Oslo, eller brukstartTime(norsk klokkeslett slik arrangøren skrev det) ogduration(minutter). - Ingenting som kommer fra et skjema er garantert numerisk.
Price.priceer typetIntog avrundes ved grensen, men arrangøren kan ha skrevet1.595eller150,-;duration,availableTicketsogminimumAgekan være null. Behandle hvert tallfelt defensivt.
Et første kall
curl -s https://hvaskjerimidtregauldal.no/graphQL \
-H 'Content-Type: application/json' \
-d '{"query":"{ events(page: 0, pageSize: 3) { totalCount hasMore data { id title_nb startDate startTime venue { name } eventLink } } }"}'
Samme spørring, lesbar:
{
events(page: 0, pageSize: 3) {
totalCount
hasMore
data {
id
title_nb
startDate
startTime
venue { name }
eventLink
}
}
}
startDate er arrangementets neste kommende forekomst, og repetitions lister bare de
fremtidige; datoer som har passert returneres aldri. page starter på 0 og pageSize er 10 som standard.
API-siden har filteret, datoreglene og feilene.
Identifiser deg
Send en API-nøkkel med hver forespørsel:
X-Api-Key: hsk_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Nøkkelen er identitet, ikke sikkerhet — dataene er de samme med og uten. Det den gir deg:
- Varsler om endringer. En nøkkel har en kontaktadresse. Når en endring vil påvirke spørringene dine (en kategori som pensjoneres, et felt som får nytt navn, en lisens som flyttes), får kontaktene til nøklene som bruker de feltene beskjed før det skjer. Anonyme kallere finner det ut når noe ryker.
- Din egen oversikt. Anonyme forespørsler grupperes etter spørringens form; med en nøkkel er dine dine, og det betyr noe den dagen du spør hvorfor noe ser feil ut.
- Din egen kvote, senere. Det er ingen rate limit i dag. Når det kommer en, beholder trafikk med nøkkel sitt eget budsjett.
Ingen nøkkel, men vil vite likevel? Abonner på endringsvarsler: én e-post per brytende endring eller dataendring, ingen konto nødvendig, avmeldingslenke i hver.
Én nøkkel per applikasjon; en tjeneste som leser fem kalendere ber hver av dem om en nøkkel. Lag din på Nøkler-siden — du trenger en konto på Hva skjer i Midtre Gauldal? med bekreftet e-postadresse. Samme side gir deg en blokk med instruksjoner du kan lime inn til en kodeagent.
Svar på anonyme forespørsler bærer en extensions.notice-streng som sier akkurat det. Den er
informativ; en klient som aldri ser på extensions påvirkes ikke.