Materialen ========== Huidige versie: 1.0.0 Create ------ .. http:post:: /api2/materialen Maak een nieuwe materiaal **Voorbeeld request**: .. sourcecode:: http POST /api2/materialen HTTP/1.1 Host: demo.recras.nl Accept: application/json { "naam": "Fiets", } **Voorbeeld response**: .. sourcecode:: http HTTP/1.1 201 Created Content-Type: application/json Location: /api2/materialen/5 { "id": 1, "naam": "Fiets", "aantal": null, "aantal_groepen": null, "aantal_tegelijk_starten": null, "aantal_groepen_tegelijk_starten": null, "overzichtmenu": false, "percentage_online_te_boeken": 0 } :json int id: ID-nummer, mag niet veranderd worden :json string naam: Naam van het materiaal :json int aantal: Aantal dat van dit materiaal beschikbaar is :json int aantal_groepen: Maximaal aantal boekingen waarover dit materiaal verdeeld kan worden :json int aantal_tegelijk_starten: Aantal van dit materiaal dat op het zelfde moment uitgegeven kan worden :json int aantal_groepen_tegelijk_starten: Aantal boekingen dat tegelijk met dit materiaal kan beginnen :json boolean overzichtsmenu: Of dit materiaal in het overzichtsmenu in Recras getoond moet worden :json int percentage_online_te_boeken: Het percentage van dit materiaal dat maximaal uitgegeven mag worden via online boekingen :resheader Location: De locatie van het nieuwe materiaal :statuscode 201: Materiaal gemaakt :statuscode 406: Fout in de invoer :statuscode 403: Gebruiker heeft het recht ``editMateriaal`` niet Read ---- .. http:get:: /api2/materialen De materialen in Recras **Voorbeeld request**: .. sourcecode:: http GET /api2/materialen HTTP/1.1 Host: demo.recras.nl Accept: application/json **Voorbeeld response**: .. sourcecode:: http HTTP/1.1 200 OK Content-Type: application/json [ { "id": 1, "naam": "Fiets", "aantal": 25, "aantal_groepen": null, "aantal_tegelijk_starten": null, "aantal_groepen_tegelijk_starten": null, "overzichtmenu": false, "percentage_online_te_boeken": 0 } ] :statuscode 200: no error .. http:get:: /api2/materialen/(int:id) Een specifieke materiaal **Example request**: .. sourcecode:: http GET /api2/materialen/1 HTTP/1.1 Host: demo.recras.nl Accept: application/json **Example response**: .. sourcecode:: http HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "naam": "Fiets", "aantal": 25, "aantal_groepen": null, "aantal_tegelijk_starten": null, "aantal_groepen_tegelijk_starten": null, "overzichtmenu": false, "percentage_online_te_boeken": 0 } :statuscode 200: OK :statuscode 404: Geen materiaal met deze ``id`` Update ------ .. http:put:: /api2/materialen/(int:id) **Voorbeeld request**: .. sourcecode:: http PUT /api2/materialen/1 HTTP/1.1 Host: demo.recras.nl Accept: application/json { "id": 1, "naam": "Fiets", "aantal": 20, "overzichtmenu": true } **Voorbeeld response**: .. sourcecode:: http HTTP/1.1 200 OK Content-Type: application/json { "id": 1, "naam": "Fiets", "aantal": 20, "aantal_groepen": null, "aantal_tegelijk_starten": null, "aantal_groepen_tegelijk_starten": null, "overzichtmenu": true, "percentage_online_te_boeken": 0 } :json int id: ID-nummer, mag niet veranderd worden :json string naam: Naam van het materiaal :json int aantal: Aantal dat van dit materiaal beschikbaar is :json int aantal_groepen: Maximaal aantal boekingen waarover dit materiaal verdeeld kan worden :json int aantal_tegelijk_starten: Aantal van dit materiaal dat op het zelfde moment uitgegeven kan worden :json int aantal_groepen_tegelijk_starten: Aantal boekingen dat tegelijk met dit materiaal kan beginnen :json boolean overzichtsmenu: Of dit materiaal in het overzichtsmenu in Recras getoond moet worden :json int percentage_online_te_boeken: Het percentage van dit materiaal dat maximaal uitgegeven mag worden via online boekingen :statuscode 200: Materiaal aangepast :statuscode 406: Fout in de invoer :statuscode 403: Gebruiker heeft het recht ``editMateriaal`` niet Delete ------ .. http:delete:: /api2/materialen/(int:id) **Voorbeeld request**: .. sourcecode:: http DELETE /api2/materialen/1 HTTP/1.1 Host: demo.recras.nl **Voorbeeld response**: .. sourcecode:: http HTTP/1.1 200 OK :statuscode 200: Materiaal verwijderd :statuscode 403: Gebruiker heeft het recht ``editMateriaal`` niet