Skip to main content
Versionv1

Scan API (1.0)

Download OpenAPI specification:Download

Every operation is a POST request with an application/x-www-form-urlencoded body. Every request includes your public apiKey and an HMACKey. The HMACKey is calculated from the input fields; the calculation is listed on each operation as Base64 encode - SHA256(...), where the fields between the brackets are concatenated. Only include optional parameters in the HMAC if you are using those parameters. A * after a field marks it as optional.

/getBarcodeStatus

This function allows you to get the status of a barcode (valid / invalid) and information about the ticket(s).

HMACKey: Base64 encode - SHA256(apiKey + barcodeNumber)

Authorizations:
None
Request Body schema: application/x-www-form-urlencoded
apiKey
required
string

Your public apiKey needs to be included in every request

HMACKey
required
string

The HMACKey is calculated based on the input fields. Base64 encode - SHA256(apiKey + barcodeNumber).

barcodeNumber
required
string

The barcode number of the ticket for which the status is to be checked

Responses

Response samples

Content type
application/json
{
  • "barcodeValid": true,
  • "dateOfPurchase": "2012-04-21T18:25:43Z",
  • "dateCheckedIn": "2012-04-21T18:25:43-05:00",
  • "numberOfTickets": 1,
  • "numberOfTicketTypes": 1,
  • "totalPrice": 1.1,
  • "tickets": [
    ]
}

/setBarcodeStatus

This function allows you to set the barcode (ticket) status to “checked in”.

HMACKey: Base64 encode - SHA256(apiKey + barcodeNumber)

Authorizations:
None
Request Body schema: application/x-www-form-urlencoded
apiKey
required
string

Your public apiKey needs to be included in every request

HMACKey
required
string

The HMACKey is calculated based on the input fields. Base64 encode - SHA256(apiKey + barcodeNumber).

barcodeNumber
required
string

The barcode number of the ticket for which the status is to be set

Responses

Response samples

Content type
application/json
{
  • "success": true
}

/getAvailability

With this functionality you can retrieve the availability of a specified article (ticket type).

Note: This function only returns tickettypes that have been made available for sale through API.

HMACKey: Base64 encode - SHA256(apiKey + ticketTypeId + ticketDate*)

Authorizations:
None
Request Body schema: application/x-www-form-urlencoded
apiKey
required
string

Your public apiKey needs to be included in every request

HMACKey
required
string

The HMACKey is calculated based on the input fields. Base64 encode - SHA256(apiKey + ticketTypeId + ticketDate*). Only include ticketDate in the HMAC if you are using this param

ticketTypeId
required
integer <int32>

Unique identifier for a particular tickettype

ticketDate
string <date>
Default: "currentDate"

This param is optional, default value is the current date.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "availibilityType": "text",
  • "availableTickets": 1,
  • "numberOfTicketTypes": 1,
  • "timeslots": [
    ]
}

/createReservation

With this functionality you can create a reservation. Create a reservation for a single ticket type, or for multiple ticket types by sending the tickets object.

Note: Reservations are by default valid for 15 minutes. Please use “reservationValidUntil” to prevent errors at the completeReservation method.

HMACKey:

  • Single ticket type: not documented
  • Multiple ticket types: Base64 encode - SHA256(apiKey + ticketDate + tickets)

HMAC calculation of the tickets array

Sort the entries by ticketTypeId ascending and the keys within each entry alphabetically, then concatenate the values. Example (PHP):

$tickets = [
  '321' => [ 'ticketNumber' => 2, 'ticketTime' => '10:00' ],
  '123' => [ 'ticketTime' => '12:00', 'ticketNumber' => 3 ],
];

// sorted and concatenated:
$result = '123312:00321210:00';
Authorizations:
None
Request Body schema: application/x-www-form-urlencoded
One of
apiKey
required
string

Your public apiKey needs to be included in every request

ticketTypeId
required
integer <int32>

Unique identifier for a particular tickettype

ticketNumber
required
integer <int32>

Number of tickets for which a reservation is to be created

ticketDate
string <date>
Default: "current date"

Date of the tickets that the reservation has to be created for

ticketTime
string <date-time>

Timeslot of tickets for which a reservation is to be created

HMACKey
required
string

The HMACKey is calculated based on the input fields

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "reservationId": 1,
  • "reservationValidUntil": "10:00:00"
}

/updateReservation

With this functionality you can update a reservation. Update a reservation for a single ticket type, or for multiple ticket types by sending the tickets object.

HMACKey:

  • Single ticket type: Base64 encode - SHA256(apiKey + reservationId + ticketTypeId + ticketNumber + ticketDate + ticketTime)
  • Multiple ticket types: Base64 encode - SHA256(apiKey + reservationId + ticketDate + tickets)

HMAC calculation of the tickets array

Sort the entries by ticketTypeId ascending and the keys within each entry alphabetically, then concatenate the values. Example (PHP):

$tickets = [
  '321' => [ 'ticketNumber' => 2, 'ticketTime' => '10:00' ],
  '123' => [ 'ticketTime' => '12:00', 'ticketNumber' => 3 ],
];

// sorted and concatenated:
$result = '123312:00321210:00';
Authorizations:
None
Request Body schema: application/x-www-form-urlencoded
One of
apiKey
required
string

Your public apiKey needs to be included in every request

reservationId
required
integer <int32>

The reservation identifier to update

ticketTypeId
required
integer <int32>

Unique identifier for a particular tickettype

ticketNumber
required
integer <int32>

Number of tickets for which a reservation is to be created

ticketDate
string <date>
Default: "current date"

Date of the tickets that the reservation has to be created for

ticketTime
string <date-time>

Timeslot of tickets for which a reservation is to be created

HMACKey
required
string

The HMACKey is calculated based on the input fields. Base64 encode - SHA256(apiKey + reservationId + ticketTypeId + ticketNumber + ticketDate + ticketTime). Only include optional params in the HMAC if you are using those params.

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "reservationId": 1,
  • "reservationValidUntil": "2026-05-29 10:00:00"
}

/completeReservation

With this functionality you can complete an earlier made reservation. The output contains the barcodes of the reservation.

HMACKey: Base64 encode - SHA256(apiKey + reservationId + scanTicket*)

Authorizations:
None
Request Body schema: application/x-www-form-urlencoded
apiKey
required
string

Your public apiKey needs to be included in every request.

reservationId
required
integer <int32>

Reservation identifier that is provided by createReservation call

scanTicket
required
boolean
Default: false

This param is optional, default value is false. This param is used to sell and scan the ticket in one call.

HMACKey
required
string

The HMACKey is calculated based on the input fields. Base64 encode - SHA256(apiKey + reservationId + scanTicket*). Only include optional params in the HMAC if you are using those params

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "reservationId": 1,
  • "barcodes": [
    ]
}

/cancelReservation

With this functionality you can cancel an earlier created reservation. Please note that you can only cancel a completed reservation.

HMACKey: Base64 encode - SHA256(apiKey + reservationId)

Authorizations:
None
Request Body schema: application/x-www-form-urlencoded
apiKey
required
string

Your public apiKey needs to be included in every request.

reservationId
required
integer <int32>

Reservation identifier that is provided by createReservation call

HMACKey
required
string

The HMACKey is calculated based on the input fields. Base64 encode - SHA256(apiKey + reservationId).

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "reservationId": 1
}

/releaseCapacity

With this functionality you can force release the reserved capacity for a reservation. Please note that this is only possible for pending reservations and will not cancel the reservation. You can use the cancelReservation endpoint for this.

HMACKey: Base64 encode - SHA256(apiKey + reservationId)

Authorizations:
None
Request Body schema: application/x-www-form-urlencoded
apiKey
required
string

Your public apiKey needs to be included in every request.

reservationId
required
integer <int32>

Reservation identifier that is provided by createReservation call

HMACKey
required
string

The HMACKey is calculated based on the input fields. Base64 encode - SHA256(apiKey + reservationId).

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "reservationId": 1
}

/getTicketTypes

With this functionality you can retrieve the ticket types that have been made available for sale through API.

Note: This function only shows tickettypes that have been made available for sale through API.

HMACKey: Base64 encode - SHA256(apiKey)

Authorizations:
None
Request Body schema: application/x-www-form-urlencoded
apiKey
required
string

Your public apiKey needs to be included in every request

HMACKey
required
string

The HMACKey is calculated based on the input fields. Base64 encode - SHA256(apiKey).

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "ticketTypes": [
    ]
}

/getTurnover

With this function you can retrieve the turnover, discount and the number of tickets sold during a selected period. Use the startDate and endDate parameters to select a period.

Note: The maximum period per request is restricted to one month.

HMACKey: Base64 encode - SHA256(apiKey + startDate + endDate)

Authorizations:
None
Request Body schema: application/x-www-form-urlencoded
apiKey
required
string

Your public apiKey needs to be included in every request

startDate
required
string <date>

Startdate of the period for which turnover is requested (yyyy-mm-dd)

endDate
required
string <date>

enddate of the period for which turnover is requested (yyyy-mm-dd)

HMACKey
required
string

The HMACKey is calculated based on the input fields. Base64 encode - SHA256(apiKey + startDate + endDate).

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "ticketCountTotal": 2,
  • "ticketTurnoverTotal": 120,
  • "turnoverDiscount": 20,
  • "turnoverTotal": 100,
  • "turnoverDetails": [
    ]
}

/getGroupReservations

With this function you can retrieve the Groups and Education reservations for a specific date.

HMACKey: Base64 encode - SHA256(apiKey + date + language)

Authorizations:
None
Request Body schema: application/x-www-form-urlencoded
apiKey
required
string

Your public apiKey needs to be included in every request

HMACKey
required
string

The HMACKey is calculated based on the input fields. Base64 encode - SHA256(apiKey + date + language).

date
required
string

The date for which to retrieve reservations in the format YYYY-MM-DD

language
string
Default: "nl"

The language in which results are returned

dateType
string
Default: "ticket"

Search for reservations by this type, valid values are: 'ticket', 'purchase' and 'update'

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "reservations": [
    ]
}