Migration from ZUERST to Ginto

Last update:
8/4/2026
API
app
Web
Before you start

The ZUERST API from Pro Infirmis will be decommissioned at the end of 2026. It is therefore necessary to migrate to the Ginto API in good time. The Ginto API provides the same data as the previous ZUERST API, albeit in a slightly different structure. Ginto also offers additional accessibility information, for example on hotels or museums that have recorded their own details as part of the OK:GO initiative. This guide explains the step-by-step process for migrating from ZUERST to Ginto.

note

Ginto brings together leading software solutions and existing data on a central platform. Ginto is backed by the Sitios association, which was founded in 2022 by the Association for Accessible Switzerland, Pro Infirmis and the AccessibilityGuide association. Its aim is to coordinate and further develop the provision of information on accessibility in Switzerland.

Professional tip

ZUERST will be phased out according to the following schedule:

  • Effective immediately: Accessibility information that is still being recorded by Pro Infirmis via ZUERST remains available via the ZUERST API, but is also fully integrated into Ginto and can be accessed directly via the Ginto API. The majority of professional data entries by Pro Infirmis are already being made using Ginto.
  • 31 December 2026: Pro Infirmis’ ZUERST API will be placed in standby mode. POI enquiries will be redirected to the relevant Ginto URL. ZUERST will no longer be used to record accessibility information.
  • 31 December 2027: Complete shutdown of ZUERST, including the API.

That's what you'll find in this guide:

Apply for OK:GO proof for ‘Swisstainable’
Frequently asked questions

Get an API key

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5

The API is secure and can only be accessed if the request is authenticated using an API key. Please contact support@ginto.guide to obtain such a key for API authorisation. You can then use this key to retrieve all data from the Ginto API. The API key must be specified as a bearer token in the Authorization header for every request.

To ensure that you receive exactly the same information when querying Ginto as you previously did with the ZUERST query, the Ginto support team will be happy to create a publication filter for you and send you the corresponding filter ID. Please let us know which query you have been using to retrieve the data so far.

Alternatively, the Ginto API offers various options for filtering the data yourself directly according to different criteria when making a query. You can find further information on this in our API documentation.

Request data

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
{
    entriesByFilter(filterId: "0ace704e-db54-41c1-aa45-8f5d1e45cc27") {
        totalCount
        pageInfo {
            endCursor
            hasNextPage
            hasPreviousPage
            startCursor
        }
        nodes {
            entryId
            name
            createdAt
            updatedAt
            categories {
                groupKey
                groupName
                key
                name
            }
            position {
                street
                housenumber
                postcode
                city
                countryCode
                lat
                lng
            }
            accessibilityInfo {
                defaultRatings {
                    descriptionDE: description(locale: DE)
                    descriptionEN: description(locale: EN)
                    descriptionFR: description(locale: FR)
                    descriptionIT: description(locale: IT)
                    iconUrl
                    key
                }
            }
            publication {
                linkTextDE: linkText(locale: DE)
                linkTextEN: linkText(locale: EN)
                linkTextFR: linkText(locale: FR)
                linkTextIT: linkText(locale: IT)
                linkUrl
            }
            licenseInfo {
                attribution
                isOpenData
                license
            }
            sources {
                originIds
                sourceKey
                sourceName
            }
            areas {
                areaTemplateKey
                id
                name
                accessibilityInfo {
                    defaultRatings {
                        descriptionDE: description(locale: DE)
                        descriptionEN: description(locale: EN)
                        descriptionFR: description(locale: FR)
                        descriptionIT: description(locale: IT)
                        iconUrl
                        key
                    }
                }
                publication {
                    linkTextDE: linkText(locale: DE)
                    linkTextEN: linkText(locale: EN)
                    linkTextFR: linkText(locale: FR)
                    linkTextIT: linkText(locale: IT)
                    linkUrl
                }
                subAreas {
                    areaTemplateKey
                    id
                    name
                    accessibilityInfo {
                        defaultRatings {
                            descriptionDE: description(locale: DE)
                            descriptionEN: description(locale: EN)
                            descriptionFR: description(locale: FR)
                            descriptionIT: description(locale: IT)
                            iconUrl
                            key
                        }
                    }
                    publication {
                        linkTextDE: linkText(locale: DE)
                        linkTextEN: linkText(locale: EN)
                        linkTextFR: linkText(locale: FR)
                        linkTextIT: linkText(locale: IT)
                        linkUrl
                    }
                }
            }
        }
    }
}

Adapt your code

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
ZUERST (Source) Ginto
Pois.[].Id data.entriesByFilter.nodes.[].zuerst.originIds
Pois.[].IdSource
Used in v1 of the ZUERST API
data.entriesByFilter.nodes.[].sources.[].originIds
In Ginto, source IDs are always assigned to a specific source. Select the correct source and check whether the IdSource from ZUERST is included in Ginto's originIds.
Pois.[].Sources.[].SourceName
Used in v2 of the ZUERST API
data.entriesByFilter.nodes.[].sources.[].sourceKey
Pois.[].Sources.[].SourcePoiId
Used in v2 of the ZUERST API
data.entriesByFilter.nodes.[].sources.[].originIds
In Ginto, one entry can represent multiple source POIs, even though originIds is an array.
Pois.[].Name data.entriesByFilter.nodes.[].name
Pois.[].EntryDate data.entriesByFilter.nodes.[].updatedAt
Pois.[].Coordinates.Lat data.entriesByFilter.nodes.[].position.lat
Pois.[].Coordinates.Lng data.entriesByFilter.nodes.[].position.lng
Pois.[].Address.Street data.entriesByFilter.nodes.[].position.street
Pois.[].Address.Number data.entriesByFilter.nodes.[].position.housenumber
Pois.[].Address.ZipCode data.entriesByFilter.nodes.[].position.postcode
Pois.[].Address.City data.entriesByFilter.nodes.[].position.city
Pois.[].Category data.entriesByFilter.nodes.[].categories
See chapter "Mapping Categories"
Pois.[].MainEnquiryCategory data.entriesByFilter.nodes.[].categories
See chapter "Mapping Categories"
Pois.[].PictogramIds data.entriesByFilter.nodes.[].categories
See Pois.[].accessibilityInfo.defaultRatings
Pois.[].MainComment Not available
Pois.[].MainCommentFr Not available
Pois.[].MainCommentIt Not available
Pois.[].MainCommentEn Not available
Pois.[].LinkToDetailView data.entriesByFilter.nodes.[].publication.linkUrl
Pois.[].AdditionalInformation Not available
Pois.[].SubPois Not available

Assign categories

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
ZUERST (Source) Ginto
Pharmacy or Drugstore drugstore
Doctor's or Dentist's Surgery doctors_practice
Lookout / Viewpoint lookout
Car Rental services_other
Train Station train_station
Bank bank
Mountain Railways mountain_railway_station
Library library
Botanical Garden park
Campsite camping
Club club
Shopping Mall mall
Ice Rink sports_facility
Eurokey Facility nil
Holiday Home or Apartment holiday_home
Airport nil
ATM atm
Shops shopping_other
School (Primary, Secondary, Vocational, College, University) education_other
Group Accommodations group_house
Hotel, Guesthouse, Bed & Breakfast hotel
Hut / Cabin group_house
Childcare childcare
Cinema cinema
Congress Hall congress_center
Concert Hall, Opera, or Theater theatre
Landing Stage / Pier ship_landing
Museum or Gallery museum
Public Toilets public_toilets
Public Elevator or Lifting Platform nil
Park or Cemetery park
Multi-storey Car Park multi_storey_car_park
Parking Lot parking_lot
Post Office post
Rest Area (with Playground) playground
Rest Area (other) park
Recycling Collection Point services_other
Religious Institution religious_institution
Restaurant, Café, or Bar restaurant
Ship ship
School education_other
Swimming Pool, Lido, or Lake swimming_pool
Sight / Attraction sight
Cable Car mountain_railway_station
Seminar Center congress_center
Senior Center / Nursing Home nursing_home
Sports Center or Gym sports_facility
Stadium sports_facility
Taxi services_other
Tourist Office tourist_information
Tram, Bus, or Postbus Station bus_stop
Accommodation (other) hotel
Event Room (other) congress_center
Association / Club services_other
Administration Building administration
Wellness Center sports_facility
Zoo or Wildlife Park park

Apply for OK:GO proof for ‘Swisstainable’

OK:GO is recognised as proof within the ‘Swisstainable’ sustainability programme at Level II – engaged (in combination). An overview of all recognised sustainability certificates can be found here.

An OK:GO certificate for participation in ‘Swisstainable’ can be applied for using this web form. A certificate will be issued once the conditions of participation have been met. The OK:GO certificate is valid for two years from the date of issue.
Thank you, we've received your request and will get back to you in the coming days.
Oh, something didn't work out there. Please try again

Frequently asked questions

There are currently no frequently asked questions about this guide.

You might also be interested in this