REST API Design
SMALS STANDARDS.
REST is de industriestandaard geworden voor het ontwikkelen van API's op het web en is de de facto standaard om te communiceren tussen een browser/mobiele applicatie en een backend server. In deze opleiding leert u over de RESTful design aanpak en past u deze methodologie toe om uw bedrijfsgegevens en functionaliteit te modelleren in een REST API. Onze REST API's zullen ook voldoen aan de G-Cloud REST stijlgids.
Deze training is ontwikkeld door Willem Salembier van het ICC team. Als u vragen heeft met betrekking tot deze cursus, stuur dan een e-mail naar icc-training@smals.be.
Als je vragen hebt over REST standaarden, stuur dan een mail naar rest-styleguide@gcloud.belgium.be of open een issue via GitHub.
De onderwerpen die in deze training aan bod komen zijn:
* Introductie
* Uniforme interface
* Collectie bronnen
* Document bronnen
* Controller-bronnen
* Hypermedia
* Methoden
* Representaties
* OpenAPI-schema
* OpenAPI
* Foutafhandeling
* Documentatie
* Governance
* Links
//
Aanvraag indienen
window.hideEnrolWarning = window.hideEnrolWarning || function() {
mdlUtils.hideAll("div.continuebutton");
mdlUtils.hideById("notice");
};
window.enhanceEhrButtons = window.enhanceEhrButtons || function(root = document) {
document.querySelectorAll('.coursebox, .course-info-container').forEach(container => {
const link = container.querySelector('a[href*="course/view.php?id="]');
if (!link) return;
//get de id van de cursus
const match = link.href.match(/id=(\d+)/);
if (!match) return;
const courseId = match[1];
const btn = container.querySelector('.ehr-btn');
if (!btn) return;
// voorkom dubbel uitvoeren
if (btn.dataset.enhanced) return;
btn.dataset.enhanced = "true";
let ehrid = btn.dataset.ehrid;
// ✅ als FilterCodes werkte → gewoon gebruiken
if (ehrid && ehrid.trim() !== '' && !ehrid.includes('{')) {
btn.href = btn.dataset.base + ehrid;
return;
}
// ❌ fallback: reconstructie (optioneel)
btn.href = "https://eacademy.smals.be/course/enrol.php?id=" + courseId;
});
}
mdlUtils.runWhenReady(hideEnrolWarning);
mdlUtils.runWhenReady(enhanceEhrButtons);
mdlUtils.observeDom(enhanceEhrButtons);