CursusPro API (1.0.2)

Download OpenAPI specification:Download

Tuesday Multimedia: info@tuesday.nl URL: https://www.tuesday.nl

API voor het beheren van cursussen voor Volksuniversiteiten.


Versies
Dit is versie 1.0.2 (26 jun 2026) van de CursusPro API.
v1.0.2 - 26 jun 2026
v1.0.1 - 23 apr 2026
v1.0.0 - 19 dec 2025

Rate-limit
Er geldt een rate-limit van 1000 requests per minuut voor het gebruik van deze API.

Authenticatie

Alle endpoints vereisen authenticatie via de API-gebruiker credentials.

Features

  • Ophalen van disciplines en subdisciplines
  • Beheren van discipline-urls per Volksuniversiteit
  • CRUD operaties voor cursussen

Disciplines

Endpoints voor het ophalen van disciplines

Haal alle disciplines op

Haalt alle beschikbare disciplines en hun subdisciplines op. Disciplines hebben een hiërarchische structuur waarbij subdisciplines gekoppeld zijn aan hun parent discipline.

Authorizations:
BearerAuth

Responses

Response samples

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

Discipline URLs

Endpoints voor het beheren van discipline-urls

Haal alle discipline-urls op

Haalt alle discipline-urls op voor de ingelogde Volksuniversiteit.

Authorizations:
BearerAuth

Responses

Response samples

Content type
application/json
[]

Voeg een discipline-url toe

Voegt een discipline-url toe voor de ingelogde Volksuniversiteit. Per discipline kan maximaal één URL worden gekoppeld.

Authorizations:
BearerAuth
Request Body schema: application/json
required
discipline
required
integer >= 1

ID van de discipline

url
required
string <uri> non-empty

Externe URL die aan de discipline wordt gekoppeld

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "success": true,
  • "message": "Discipline-url toegevoegd"
}

Verwijder een discipline-url

Verwijdert de discipline-url van de opgegeven discipline voor de ingelogde Volksuniversiteit.

Authorizations:
BearerAuth
Request Body schema: application/json
required
discipline
required
integer >= 1

ID van de discipline waarvan de URL verwijderd wordt

Responses

Request samples

Content type
application/json
{
  • "discipline": 5
}

Response samples

Content type
application/json
{
  • "success": true,
  • "message": "Discipline-url verwijderd"
}

Cursussen

CRUD operaties voor cursussen

Haal alle cursussen op

Haalt alle cursussen op voor de ingelogde Volksuniversiteit.

Authorizations:
BearerAuth

Responses

Response samples

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

Voeg een nieuwe cursus toe

Voegt een nieuwe cursus toe voor de ingelogde Volksuniversiteit. De cursus moet minimaal een titel, URL en een of meer disciplines bevatten. We adviseren om een of meer zoekwoorden toe te voegen

Authorizations:
BearerAuth
Request Body schema: application/json
required
titel
required
string non-empty

Titel van de cursus

url
required
string <uri>

Externe URL naar de cursuspagina (moet een geldige URL zijn)

disciplines
required
Array of integers non-empty [ items >= 1 ]

Lijst van discipline-IDs (moeten bestaan in het systeem). Minimaal één discipline is verplicht.

zoekwoorden
string

Komma-gescheiden zoekwoorden voor de cursus (optioneel)

Responses

Request samples

Content type
application/json
Example
{}

Response samples

Content type
application/json
{
  • "success": true,
  • "message": "Cursus is succesvol toegevoegd. De id van de nieuwe cursus is 123"
}

Haal een specifieke cursus op

Haalt de details van een specifieke cursus op. De cursus moet behoren tot de ingelogde Volksuniversiteit.

Authorizations:
BearerAuth
path Parameters
id
required
integer >= 1
Example: 123

De unieke identifier van de cursus

Responses

Response samples

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

Werk een cursus bij

Werkt een bestaande cursus bij. De cursus moet behoren tot de ingelogde Volksuniversiteit. Alle velden moeten worden meegegeven, ook als ze niet wijzigen.

Authorizations:
BearerAuth
path Parameters
id
required
integer >= 1
Example: 123

De unieke identifier van de cursus

Request Body schema: application/json
required
titel
required
string non-empty

Titel van de cursus

url
required
string <uri>

Externe URL naar de cursuspagina (moet een geldige URL zijn)

disciplines
required
Array of integers non-empty [ items >= 1 ]

Lijst van discipline-IDs (moeten bestaan in het systeem). Minimaal één discipline is verplicht.

zoekwoorden
string

Komma-gescheiden zoekwoorden voor de cursus (optioneel)

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "success": true,
  • "message": "Cursus is succesvol bijgewerkt"
}

Verwijder een cursus

Verwijdert een cursus permanent uit het systeem. De cursus moet behoren tot de ingelogde Volksuniversiteit.

Authorizations:
BearerAuth
path Parameters
id
required
integer >= 1
Example: 123

De unieke identifier van de cursus

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "message": "Cursus succesvol verwijderd"
}