Overview
Met deze documentatie leer je werken met de NOVI Dynamic API: een tool waarmee jij in een handomdraai data beschikbaar maakt voor jouw frontend. In plaats van afhankelijk te zijn van de beperkte functionaliteit van bestaande ( en vaak betaalde) API's van derde partijen, stel je via één configuratiebestand je eigen database samen. Zo kun je je frontend-project precies inrichten zoals jij dat wilt — zonder een backend te hoeven bouwen.
Je geeft zelf aan welke soorten gegevens je nodig hebt in jouw database: denk aan producten, klanten, boeken, recepten of blogposts. Op basis van jouw JSON-configuratie wordt automatisch een REST-API opgezet, waarmee je die gegevens kunt opvragen, toevoegen, aanpassen en verwijderen via netwerk-requests.
In een notendop
Met de Dynamic API kun je dus helemaal zelf bepalen hoe jouw database eruitziet via een configuratie-bestand. In die configuratie beschrijf je onder andere de volgende zaken:
- Collecties – bijvoorbeeld ‘boeken’, 'auteurs', ‘producten’ of ‘recepten’ (vergelijkbaar met tabellen in een database)
- Velden per collectie – zoals titel, prijs of aantal sterren
- Relaties tussen collecties – bijvoorbeeld: elk boek hoort bij één auteur
- Gebruikers en hun rollen – denk aan medewerkers en klanten, of admins en gewone gebruikers
- Toegangsrechten – per rol én per bewerking (wie mag data alleen bekijken en wie mag het aanpassen?)
Zodra je jouw JSON-configuratie geüpload hebt, worden er automatisch API-endpoints gegenereerd die je meteen kunt aanspreken. Alle CRUD-acties zoals Create, Read, Update en Delete zijn dan beschikbaar.
Een typisch configuratiebestand bestaat grofweg uit drie hoofdonderdelen:
{ "collections": [ // Definitie van je gegevenscollecties, ofwel de blauwdruk entiteiten // zoals boeken, producten, recepten of blogposts ], "users": [ // Definitie van gebruikers die toegang hebben ], "data": { // Initiële gegevens voor je collecties, ofwel de daadwerkelijke database-data } }
Je kunt zelf bepalen of je de database al vult met testgegevens (zoals een paar boeken of gebruikers), of dat je met een lege database start en die via je frontend laat vullen. In beide gevallen kun je binnen een paar minuten aan de slag.
Disclaimer
Deze API is uitsluitend bedoeld voor educatieve doeleinden binnen een leertraject. Dit betekent ook dat:
- Jouw database dagelijks automatisch wordt geleegd. Alle ingevoerde data wordt daarmee onherroepelijk verwijderd. Zorg er dus voor dat je belangrijke gegevens opslaat het JSON-bestand dat je gebruikt om de database te vullen.
- Wij géén back-ups maken van de gegevens. Verlies van data — ongeacht de oorzaak — kan niet worden hersteld.
- Deze omgeving niet bedoeld is voor het verwerken of opslaan van gevoelige, persoonlijke of vertrouwelijke informatie. Voer alleen test- of oefengegevens in die geschikt zijn voor een publieke leeromgeving.
- Deze API en bijbehorende database uitsluitend gebruikt mogen worden als onderdeel van de lessen en eindopdracht binnen de opleiding. Misbruik of commercieel gebruik is niet toegestaan.
Door gebruik te maken van deze API ga je akkoord met bovenstaande voorwaarden.
Aan de slag
In het hoofdstuk Getting started laten we je stap voor stap zien hoe je direct aan de slag kunt met een kant-en-klaar JSON-bestand. Daarmee leer je hoe je de API opzet, hoe je verbinding maakt en hoe je de beschikbare endpoints gebruikt in jouw frontend-app.
Heb je dat onder de knie? Dan gaan we in de hoofdstukken daarna dieper in op hoe je zélf een JSON-configuratie maakt. Je leert hoe je je eigen collecties en velden definieert, hoe je gebruikersrollen instelt en hoe je de API volledig afstemt op jouw project. Zo bouw je straks niet alleen met de API — je ontwerpt 'm ook helemaal zelf.