Skip to end of metadata
Go to start of metadata

Onder deze pagina worden de verschillende APIs en dataformaten beschreven waar we aan bezig zijn.

We bouwen REST APIs die Json returnen (xml optional). Of daarnaast ondersteuning voor XML nuttig is, moeten we bezien.

Voor het ontwerp van de APIs gebruiken we zoveel mogelijk de richtlijnen uit het document "Web API design: crafting interfaces that developers love" door Brian Mullow van APIgee.

Zie ook [http://petstore.swagger.wordnik.com/#!/pet/findPetsByStatus_get_3]

API paden zien er als volgt uit:

<endpoint>/<version>/<resource>/<data_specifiek>/?<parameters>

Dus bijvoorbeeld: https://api.exmaple.edu/api/v0/courses/TN301

naam

Voorbeeld

Omschrijving

endpoint

https://api.example.edu/api

Generieke endpoint voor de API van een instelling. Moet een https-url zijn.

versie

v0

Versie van het endpoint. Voor nu altijd v0. Getal loopt linear op met nieuwe versies

resource

courses

Naam van de API. Altijd een generiek Engels zelfstandig naamwoord in de meervoudsvorm.

parameters

?year=2013&class=ext1

Extra parameters om specifieke data op te vragen.

Mogelijk HTTP verbs:

GET

Lees

POST

Overschrijf

HEAD

 

PUT

Voeg toe

PATCH

Wijzig

Voor sommige APIs zal authenticatie en autorisatie van de gebruiker nodig zijn. Hiervoor gebruiken we uitsluitend OAuth2, waarbij de service in ieder geval de "authroization code" en de "implicit" profiles ondersteunen.

Resource

Beschrijving

people

Informatie over een gebruiker

groups

Groepslidmaatschappen

phonedirectory

Telefoongids

news

Nieuws

stats

Statistieken over studievoortgang

schedule

Roosters

course

Cursusinformatie

elo

Electronische leeromgeving

results

Tentamenresultaten

inuse

Beschikbare PCs & werkplekken

library

Bibliotheeksystemen

  • No labels

1 Comment

  1. Tom stelt het volgende voor: "ik zou het endpoint /elo (voor elektronische leeromgeving) willen wijzigen naar /lms (Learning Management System), omdat dit een internationale benaming is. De overige endpoints zijn namelijk ook Engelstalig."

    +1!