Eerst je gegevensstructuur kiezen
Bepaal welk dossier je nodig hebt en wat erin hoort. Een installatie heeft bijvoorbeeld een naam, serienummer en onderhoudsdatum. Geef het object een korte technische ID die je koppeling blijft gebruiken, ook wanneer het zichtbare label verandert.
Object-ID’s beginnen met een kleine letter en bevatten maximaal 61 kleine letters, cijfers, onderstrepingen of streepjes. Een object heeft maximaal zestig eigenschappen. Geef iedere eigenschap een unieke sleutel en zichtbare naam.
Een eigen object aanmaken
Gebruik POST /objects/installaties met schema:write, If-Match en een vaste Idempotency-Key. Dit is een voorbeeldschema. Het eerste request maakt de inrichting; een volgend request maakt pas een installatiedossier.
{
"name": "Installaties",
"singular": "Installatie",
"fields": [
{"id":"serial","name":"Serienummer","type":"text","required":true},
{"id":"onderhoud","name":"Onderhoudsdatum","type":"date"},
{"id":"categorie","name":"Categorie","type":"select","options":["Ketel","Warmtepomp"]}
]
}Een dossier vullen
Gebruik daarna POST /objects/installaties/records met objects.installaties:write of records:write. Lees de nieuwste revisie na het maken van het schema. Een verplicht serienummer wordt ook gecontroleerd als je properties helemaal weglaat.
{
"name": "Warmtepomp fictief",
"properties": {
"serial": "DEMO-001",
"onderhoud": "2027-04-01",
"categorie": "Warmtepomp"
}
}Eigenschappen later aanpassen
Lees eerst GET /objects/installaties. Stuur bij PATCH /objects/installaties de volledige schemadefinitie met alle te behouden velden, name en singular. Dit is geen losse toevoeging van één veld. Bestaande systeemvelden behouden hun id, type, native en valueKey.
Ondersteunde veldtypen zijn text, email, number, date, select, checkbox, multiselect en relation. select en multiselect vragen options. Het verwijderen van een object loopt via Eigen inrichting na controle van afhankelijkheden; DELETE op de schema-API is geblokkeerd.
Twee dossiers verbinden
POST /relations maakt een verband tussen twee bestaande dossiers. from.scope en to.scope zijn object-ID’s; id is steeds een dossier-ID. Dit aanvullende verband verandert geen ondertekende offerte of financiële eigenaar.
Voor een directe projectklant gebruik je het daarvoor bedoelde projectveld relation met de klant-ID. Een aanvullend dossierverband is context en vervangt die commerciële koppeling niet.
{
"from": {"scope":"projects","id":"<PROJECT_ID>"},
"to": {"scope":"installaties","id":"<INSTALLATIE_ID>"}
}Relaties lezen of verwijderen
GET /relations geeft opgeslagen aanvullende dossierkoppelingen terug. DELETE /relations/<link-id> verwijdert één koppeling, met de actuele If-Match en Idempotency-Key. De dossiers zelf blijven bestaan.
De huidige link-ID kan link:0 zijn. Dit is een positie binnen een revisie. Lees de koppeling opnieuw voordat je haar verwijdert; bewaar zulke link-ID’s niet als permanente externe dossiersleutel.
Kom je er niet uit? Stel Jerryt je vraag.