For utviklere

Det åpne API-et til denne kalenderen, hvordan du bygger den inn på ditt nettsted, og nøklene som identifiserer applikasjonen din.

Reference

Every type of the GraphQL API of Tysnes Kalender, with the descriptions the server itself carries. The same schema is available verbatim as schema.graphql and through introspection at https://hvaskjer-staging.web.app/graphQL. How to use it — dates, identifiers, pagination, errors — is on the API page.

Category ids are per licence: where a description says <CATEGORY_IDS>, the list for this calendar is the one categories returns (also printed on the API page).

There is no Mutation type: the API is read-only.

Query

events(filter: Filter, page: Int, pageSize: Int): EventConnection

Get all the events that match the criteria on the filter. Page (default 0) and pageSize (default 10) are optional for pagination.

Argument Type Description
filter Filter
page Int
pageSize Int

eventByID(eventID: String!): Event

Get an event by the event ID

Argument Type Description
eventID String!

eventsBySlugs(eventsSlugs: [String]!): [Event]

Get events by their event slugs

Argument Type Description
eventsSlugs [String]!

eventBySlug(eventSlug: String!): Event

Get an event by the event slug (unique identifier that appears on the URL)

Argument Type Description
eventSlug String!

eventByTitle(title: String!, lan: String!): Event

Get an event by title. 'lan' values are 'nb' or 'en'

Argument Type Description
title String!
lan String!

allUpcomingSuperEvents: [Event]

Get all the upcomming (or happening) super events

allUpcomingEventsInArea(minLatitude: Float!, maxLatitude: Float!, minLongitude: Float!, maxLongitude: Float!): [Event]

Get all the upcoming events taking place in one square area.

Argument Type Description
minLatitude Float!
maxLatitude Float!
minLongitude Float!
maxLongitude Float!

categories: [Category]

Get all the categories

venues: [Venue]

Get all the venues

organizers: [Organizer]

Get all the organizers

type CategoriesInfo

Field Type Description
category String
hits Int

type Category

Field Type Description
id ID
name_en String
name_nb String
slug_en String
slug_nb String
visible Boolean
subcategories [Category]

type Event

Field Type Description
activeTickets Int Total number of currently active tickets in case the event has bookings available
ageRestriction String! Possible values: no-restriction, minimum-age or maximum-age
availableTickets Int Number of available tickets for an event
author_id ID! ID of the user who created the event
cancellationPeriod Int Number of days before the event starts for cancelling a ticket
categories [String]! Categories of the event
created_at String Creation date of the event instance in ISO format. Example: 2020-10-21 23:00:00+00
desc_en String Description of the event in English. It may be null or empty
desc_nb String Description of the event in Norwegian. It may be null or empty
duration Int Duration of the event in minutes
editableBy String Permissions to edit the event. Possible values: only-me or a Team ID
embeddedVideoURL String Video URL from Youtube or Vimeo to be embedded in the event details page
endDate String! End date and time of the event instance, in Norwegian local time with the UTC offset that applies ON THAT DATE: +02:00 during summer time, +01:00 during winter time. Format: YYYY-MM-DD HH:mm:ss+HH:mm — note the SPACE separator, this is not RFC 3339, so a strict ISO parser will reject it. Render it in Europe/Oslo; formatting it in the server's own zone shifts the clock and the shift changes at each daylight-saving switch. Example: 2026-11-01 10:00:00+01:00
eventCancelled Boolean Indicates if the event is cancelled or not
eventSoldOut Boolean Indicates if the event is sold out or not
event_slug String! Event slug. It is used to build the event link
eventLink String! Link of the event
eventVMFest Boolean DEPRECATED: Use isFeaturedSpecialEvent instead. Always returns false.
facebookURL String Facebook event URL
id ID! Unique id of the event
images [Image] Images of the event
isImported Boolean True when the event was imported from an external feed. Lets aggregators skip re-ingesting feed-imported events (feedback-loop guard) without exposing internal feed ids. Human-created events synced from another HSK calendar are NOT flagged.
isFeaturedEvent Boolean Indicates if the event was set as featured by the creator
isFeaturedSpecialEvent Boolean Indicates if the event is featured in any special event
isFeaturedVMFestEvent Boolean DEPRECATED: Use isFeaturedSpecialEvent instead. Maps to isFeaturedSpecialEvent for backward compatibility.
maximumAge Int Maximum age (in years) for the event entrance
minimumAge Int Minimum age (in years) for the event entrance
maxBookingDate String Maximum date for ordering tickets (nullable)
maxBookingTime String Maximum time for ordering tickets (HH:mm format)
mode String Indicates the event mode. Possible values: offline or online
moreInfoURL String Event URL for more information
organizers [Organizer]! Organizer(s) of the event
paymentMethod String Payment method accepted for the tickets of an event: door or invoice
publishingDate String Publishing date of the event instance in ISO format. Example: 2020-10-21 23:00:00+00
prices [Price] Prices for the event in case it is not gratis
registrationEnabled Boolean Wether if the users can register within this website or not
repetitions [Repetition] Repetitions of an event
startDate String! Start date and time of the event instance, in Norwegian local time with the UTC offset that applies ON THAT DATE: +02:00 during summer time, +01:00 during winter time. Format: YYYY-MM-DD HH:mm:ss+HH:mm — note the SPACE separator, this is not RFC 3339, so a strict ISO parser will reject it. Render it in Europe/Oslo; formatting it in the server's own zone shifts the clock and the shift changes at each daylight-saving switch. For the wall-clock time alone, use startTime. Example: 2026-11-01 10:00:00+01:00
startTime String Start time of the event instance. Example: 14:00
streamingURL String URL for the streaming of an online event
super_event String ID of the super (container) event if it exists (a festival, a market, etc.)
tags String Tags or key words related to the event (comma separated values)
ticketsFromDate String Date for which the tickets are open to the public
ticketsFromTime String Time for which the tickets are open to the public
ticketsInformation String Information about the tickets of the event. Possible values: 'free', 'noTicketsInfo' or 'ticketsInfo'
ticketsURL String URL for buying tickets of the event
title_en String Title of the event in English. It may be null or empty
title_nb String! Title of the event in Norwegian
translationMeta TranslationMeta Metadata about which fields were auto-translated
type String Type of the event. Possible values: orphan, has-super or super-event
updated_at String Last update datetime of the event instance in ISO format. Example: 2020-10-21 23:00:00+00
venue Venue Venue of the event. It may be null if the event is online
venueNote String Relevant information concerning the venue of the event
videosURL String URL for videos of the event.
views Int Views of the event.

type EventConnection

Field Type Description
totalCount Int
hasMore Boolean
data [Event]
pageInfo PageInfo
venues [VenuesInfo]
organizers [OrganizersInfo]
categories [CategoriesInfo]

input Filter

Field Type Description
categories [String] Events with any of the given categories. Empty array is equivalent to all the categories. Possible values: <CATEGORY_IDS: per-tenant, see assets/data/categories.json>
fromDate String Events taking place during such date and later. Defaults to current datetime. Format: YYYY-MM-DD HH:mm:ss+ZZ (2020-09-16 23:00:00+00)
untilDate String Events taking place until such date and an earlier. Defaults to empty. Format: YYYY-MM-DD HH:mm:ss+ZZ (2020-09-16 23:00:00+00)
fromStartDate String Events starting on that date and time or later. Defaults to empty. Format: YYYY-MM-DD HH:mm:ss+ZZ (2020-09-16 23:00:00+00)
mode String Events with the given mode: online or offline
organizers [String] Events for the given organizers slugs
organizerSlug String Events for the given organizer slug
sortBy String Sorting of the result. Possible values: 'date' or 'popularity'. Default: 'popularity' - DEPRECATED: only chronological order is supported Deprecated: Only chronological order is supported
searchTerm String Events for the given search term.
superEvent String ID of the super (container) event (a festival, a market, etc.)
venues [String] Events taken place in the given venues slugs
venueSlug String Events taken place in the given venueSlug
onlyFeatured Boolean Set to true if you only want the featured events. Default: false
onlyFeaturedSpecialEvent Boolean Set to true if you only want featured events from a special event. Default: false
notCategories [String] Events with none of the given categories. Possible values: <CATEGORY_IDS: per-tenant, see assets/data/categories.json>
tag String Keyword associated with an event
cancelledNotIncluded Boolean Set to true if you do not want the cancelled events. Default: false
soldOutNotIncluded Boolean Set to true if you do not want the sold out events. Default: false
hoursRange String Hours range for the events to be filtered. Default to empty. Format: HH:mm-HH:mm (16:00-22:00)
groupRepetitionsByDay Boolean If true, it will return the repetitions taking place different days as single events
municipality String Filter events by municipality/kommune
postalCodes [String] Filter events by postal codes (zip codes) - array of strings
onlyFeaturedVMFest Boolean DEPRECATED: Use onlyFeaturedSpecialEvent instead. Set to true if you only want featured VM Fest events
onlyVMFest Boolean DEPRECATED: Use superEvent filter instead. Set to true if you only want VM Fest events

type Image

Field Type Description
alt String
caption String
credits String
urlLarge String
urlSmall String
urlOriginal String
originalSize Int
largeSize Int
smallSize Int

type Location

Field Type Description
latitude Float
longitude Float

type Organizer

Field Type Description
id ID
email String
name String
slug String
telephoneNumber String
website String

type OrganizersInfo

Field Type Description
organizer Organizer
hits Int

type PageInfo

Field Type Description
currentPage Int
pageSize Int
totalPages Int

type Price

Field Type Description
type String
price Int
name_nb String
name_en String

type Repetition

Field Type Description
id ID
activeTickets Int
availableTickets Int
startDate String Start date and time of this occurrence. Same format and timezone rules as Event.startDate.
endDate String End date and time of this occurrence. Same format and timezone rules as Event.startDate.
startTime String Wall-clock start time of this occurrence in Norwegian local time, unaffected by daylight saving. Example: 14:00
duration Int Duration of this occurrence in minutes
eventCancelled Boolean
eventSoldOut Boolean
mode String
ticketsURL String
streamingURL String
venue Venue Venue of the event. It may be null if the event is online
prices [Price] Prices for this specific repetition. If null, use the event's prices

type TranslationMeta

Field Type Description
title_nb Boolean Indicates if the Norwegian title was auto-translated
title_en Boolean Indicates if the English title was auto-translated
desc_nb Boolean Indicates if the Norwegian description was auto-translated
desc_en Boolean Indicates if the English description was auto-translated

type Venue

Field Type Description
address String
id ID
location Location
mapImageURL String
municipality String DEPRECATED: Municipality information. Returns empty string for backward compatibility.
name String
slug String

type VenuesInfo

Field Type Description
venue Venue
hits Int

Markdown-versjon