From b9fa0ceecc44bd2d594e88bb5f4ac613eb904799 Mon Sep 17 00:00:00 2001 From: Floris272 Date: Wed, 8 Jan 2025 15:38:34 +0100 Subject: [PATCH] update api spec --- src/producttypen-openapi.yaml | 2054 ++++++++++++++++++++++++++++----- 1 file changed, 1744 insertions(+), 310 deletions(-) diff --git a/src/producttypen-openapi.yaml b/src/producttypen-openapi.yaml index 90ae7b2..ee9ff92 100644 --- a/src/producttypen-openapi.yaml +++ b/src/producttypen-openapi.yaml @@ -1,14 +1,22 @@ openapi: 3.0.3 info: title: Open Producten API - version: 0.0.1 + version: 0.0.0 description: |2 Open Producten is an API to manage product types and products. + contact: + email: support@maykinmedia.nl + url: https://www.maykinmedia.nl + license: + name: EUPL 1.2 + url: https://opensource.org/licenses/EUPL-1.2 paths: - /api/v1/bestanden/: + /bestanden/: get: operationId: bestanden_list + description: Deze lijst kan gefilterd wordt met query-string parameters. + summary: Alle BESTANDEN opvragen. parameters: - name: page required: false @@ -39,8 +47,35 @@ paths: schema: $ref: '#/components/schemas/PaginatedBestandList' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' post: operationId: bestanden_create + description: Maak een BESTAND aan. + summary: Maak een BESTAND aan. tags: - bestanden requestBody: @@ -48,6 +83,12 @@ paths: multipart/form-data: schema: $ref: '#/components/schemas/BestandRequest' + examples: + CreateBestand: + value: + bestand: test.txt + product_type_id: 95792000-d57f-4d3a-b14c-c4c7aa964907 + summary: Create bestand required: true security: - tokenAuth: [] @@ -58,9 +99,36 @@ paths: schema: $ref: '#/components/schemas/Bestand' description: '' - /api/v1/bestanden/{id}/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /bestanden/{id}/: get: operationId: bestanden_retrieve + description: Een specifieke BESTAND opvragen. + summary: Een specifiek BESTAND opvragen. parameters: - in: path name: id @@ -80,8 +148,35 @@ paths: schema: $ref: '#/components/schemas/Bestand' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' put: operationId: bestanden_update + description: Werk een BESTAND in zijn geheel bij. + summary: Werk een BESTAND in zijn geheel bij. parameters: - in: path name: id @@ -107,8 +202,35 @@ paths: schema: $ref: '#/components/schemas/Bestand' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' patch: operationId: bestanden_partial_update + description: Werk een BESTAND deels bij. + summary: Werk een BESTAND deels bij. parameters: - in: path name: id @@ -133,8 +255,35 @@ paths: schema: $ref: '#/components/schemas/Bestand' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' delete: operationId: bestanden_destroy + description: Verwijder een BESTAND. + summary: Verwijder een BESTAND. parameters: - in: path name: id @@ -150,9 +299,36 @@ paths: responses: '204': description: No response body - /api/v1/contacten/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /contacten/: get: operationId: contacten_list + description: Deze lijst kan gefilterd wordt met query-string parameters. + summary: Alle CONTACTEN opvragen. parameters: - name: page required: false @@ -177,8 +353,35 @@ paths: schema: $ref: '#/components/schemas/PaginatedContactList' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' post: operationId: contacten_create + description: Maak een CONTACT aan. + summary: Maak een CONTACT aan. tags: - contacten requestBody: @@ -186,6 +389,16 @@ paths: application/json: schema: $ref: '#/components/schemas/ContactRequest' + examples: + CreateContact: + value: + organisatie_id: 73a745d4-7df0-4510-991e-abfb19f0d861 + voornaam: Bob + achternaam: de Vries + email: bob@example.com + telefoonnummer: '0611223344' + rol: medewerker + summary: Create contact required: true security: - tokenAuth: [] @@ -195,10 +408,47 @@ paths: application/json: schema: $ref: '#/components/schemas/Contact' + examples: + CreateContact: + value: + organisatie_id: 73a745d4-7df0-4510-991e-abfb19f0d861 + voornaam: Bob + achternaam: de Vries + email: bob@example.com + telefoonnummer: '0611223344' + rol: medewerker + summary: Create contact + description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' description: '' - /api/v1/contacten/{id}/: + /contacten/{id}/: get: operationId: contacten_retrieve + description: Een specifieke CONTACT opvragen. + summary: Een specifiek CONTACT opvragen. parameters: - in: path name: id @@ -218,8 +468,35 @@ paths: schema: $ref: '#/components/schemas/Contact' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' put: operationId: contacten_update + description: Werk een CONTACT in zijn geheel bij. + summary: Werk een CONTACT in zijn geheel bij. parameters: - in: path name: id @@ -245,8 +522,35 @@ paths: schema: $ref: '#/components/schemas/Contact' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' patch: operationId: contacten_partial_update + description: Werk een CONTACT deels bij. + summary: Werk een CONTACT deels bij. parameters: - in: path name: id @@ -271,8 +575,35 @@ paths: schema: $ref: '#/components/schemas/Contact' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' delete: operationId: contacten_destroy + description: Verwijder een CONTACT. + summary: Verwijder een CONTACT. parameters: - in: path name: id @@ -288,9 +619,36 @@ paths: responses: '204': description: No response body - /api/v1/links/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /links/: get: operationId: links_list + description: Deze lijst kan gefilterd wordt met query-string parameters. + summary: Alle LINKS opvragen. parameters: - name: page required: false @@ -321,8 +679,35 @@ paths: schema: $ref: '#/components/schemas/PaginatedLinkList' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' post: operationId: links_create + description: Maak een LINK aan. + summary: Maak een LINK aan. tags: - links requestBody: @@ -330,6 +715,13 @@ paths: application/json: schema: $ref: '#/components/schemas/LinkRequest' + examples: + CreateLink: + value: + product_type_id: 95792000-d57f-4d3a-b14c-c4c7aa964907 + naam: Open Producten + url: https://github.com/maykinmedia/open-producten + summary: Create link required: true security: - tokenAuth: [] @@ -339,10 +731,44 @@ paths: application/json: schema: $ref: '#/components/schemas/Link' + examples: + CreateLink: + value: + product_type_id: 95792000-d57f-4d3a-b14c-c4c7aa964907 + naam: Open Producten + url: https://github.com/maykinmedia/open-producten + summary: Create link description: '' - /api/v1/links/{id}/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /links/{id}/: get: operationId: links_retrieve + description: Een specifieke LINK opvragen. + summary: Een specifieke LINK opvragen. parameters: - in: path name: id @@ -362,8 +788,35 @@ paths: schema: $ref: '#/components/schemas/Link' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' put: operationId: links_update + description: Werk een LINK in zijn geheel bij. + summary: Werk een LINK in zijn geheel bij. parameters: - in: path name: id @@ -389,8 +842,35 @@ paths: schema: $ref: '#/components/schemas/Link' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' patch: operationId: links_partial_update + description: Werk een LINK deels bij + summary: Werk een LINK deels bij. parameters: - in: path name: id @@ -415,8 +895,35 @@ paths: schema: $ref: '#/components/schemas/Link' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' delete: operationId: links_destroy + description: Verwijder een LINK. + summary: Verwijder een LINK. parameters: - in: path name: id @@ -432,9 +939,36 @@ paths: responses: '204': description: No response body - /api/v1/locaties/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /locaties/: get: operationId: locaties_list + description: Deze lijst kan gefilterd wordt met query-string parameters. + summary: Alle LOCATIES opvragen. parameters: - name: page required: false @@ -459,8 +993,35 @@ paths: schema: $ref: '#/components/schemas/PaginatedLocatieList' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' post: operationId: locaties_create + description: Maak een LOCATIE aan. + summary: Maak een LOCATIE aan. tags: - locaties requestBody: @@ -468,6 +1029,17 @@ paths: application/json: schema: $ref: '#/components/schemas/LocatieRequest' + examples: + CreateLocatie: + value: + naam: Maykin Media + email: info@maykinmedia.nl + telefoonnummer: +31 0 20 753 05 23 + straat: Kingsfortweg + huisnummer: '151' + postcode: 1043GR + stad: Amsterdam + summary: Create locatie required: true security: - tokenAuth: [] @@ -477,10 +1049,48 @@ paths: application/json: schema: $ref: '#/components/schemas/Locatie' + examples: + CreateLocatie: + value: + naam: Maykin Media + email: info@maykinmedia.nl + telefoonnummer: +31 0 20 753 05 23 + straat: Kingsfortweg + huisnummer: '151' + postcode: 1043GR + stad: Amsterdam + summary: Create locatie description: '' - /api/v1/locaties/{id}/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /locaties/{id}/: get: operationId: locaties_retrieve + description: Een specifieke LOCATIE opvragen. + summary: Een specifiek LOCATIE opvragen. parameters: - in: path name: id @@ -500,8 +1110,35 @@ paths: schema: $ref: '#/components/schemas/Locatie' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' put: operationId: locaties_update + description: Werk een LOCATIE in zijn geheel bij. + summary: Werk een LOCATIE in zijn geheel bij. parameters: - in: path name: id @@ -527,8 +1164,35 @@ paths: schema: $ref: '#/components/schemas/Locatie' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' patch: operationId: locaties_partial_update + description: Werk een LOCATIE deels bij. + summary: Werk een LOCATIE deels bij. parameters: - in: path name: id @@ -553,8 +1217,35 @@ paths: schema: $ref: '#/components/schemas/Locatie' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' delete: operationId: locaties_destroy + description: Verwijder een LOCATIE. + summary: Verwijder een LOCATIE. parameters: - in: path name: id @@ -570,9 +1261,36 @@ paths: responses: '204': description: No response body - /api/v1/organisaties/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /organisaties/: get: operationId: organisaties_list + description: Deze lijst kan gefilterd wordt met query-string parameters. + summary: Alle ORGANISATIES opvragen. parameters: - name: page required: false @@ -597,8 +1315,35 @@ paths: schema: $ref: '#/components/schemas/PaginatedOrganisatieList' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' post: operationId: organisaties_create + description: Maak een ORGANISATIE aan. + summary: Maak een ORGANISATIE aan. tags: - organisaties requestBody: @@ -606,6 +1351,17 @@ paths: application/json: schema: $ref: '#/components/schemas/OrganisatieRequest' + examples: + CreateOrganisatie: + value: + naam: Maykin Media + email: info@maykinmedia.nl + telefoonnummer: +31 0 20 753 05 23 + straat: Kingsfortweg + huisnummer: '151' + postcode: 1043GR + stad: Amsterdam + summary: Create organisatie required: true security: - tokenAuth: [] @@ -615,10 +1371,48 @@ paths: application/json: schema: $ref: '#/components/schemas/Organisatie' + examples: + CreateOrganisatie: + value: + naam: Maykin Media + email: info@maykinmedia.nl + telefoonnummer: +31 0 20 753 05 23 + straat: Kingsfortweg + huisnummer: '151' + postcode: 1043GR + stad: Amsterdam + summary: Create organisatie description: '' - /api/v1/organisaties/{id}/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /organisaties/{id}/: get: operationId: organisaties_retrieve + description: Een specifieke ORGANISATIE opvragen. + summary: Een specifiek ORGANISATIE opvragen. parameters: - in: path name: id @@ -638,8 +1432,35 @@ paths: schema: $ref: '#/components/schemas/Organisatie' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' put: operationId: organisaties_update + description: Werk een ORGANISATIE in zijn geheel bij. + summary: Werk een ORGANISATIE in zijn geheel bij. parameters: - in: path name: id @@ -665,8 +1486,35 @@ paths: schema: $ref: '#/components/schemas/Organisatie' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' patch: operationId: organisaties_partial_update + description: Werk een ORGANISATIE deels bij. + summary: Werk een ORGANISATIE deels bij. parameters: - in: path name: id @@ -691,8 +1539,35 @@ paths: schema: $ref: '#/components/schemas/Organisatie' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' delete: operationId: organisaties_destroy + description: Verwijder een ORGANISATIE. + summary: Verwijder een ORGANISATIE. parameters: - in: path name: id @@ -708,9 +1583,36 @@ paths: responses: '204': description: No response body - /api/v1/prijzen/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /prijzen/: get: operationId: prijzen_list + description: Deze lijst kan gefilterd wordt met query-string parameters. + summary: Alle PRIJZEN opvragen. parameters: - name: page required: false @@ -741,8 +1643,35 @@ paths: schema: $ref: '#/components/schemas/PaginatedPrijsList' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' post: operationId: prijzen_create + description: Maak een PRIJS aan. + summary: Maak een PRIJS aan. tags: - prijzen requestBody: @@ -750,6 +1679,19 @@ paths: application/json: schema: $ref: '#/components/schemas/PrijsRequest' + examples: + CreatePrijs: + value: + prijsopties: + - bedrag: 50,99 + beschrijving: normaal + - bedrag: 70,99 + beschrijving: spoed + product_type_id: 95792000-d57f-4d3a-b14c-c4c7aa964907 + actief_vanaf: '2024-12-01' + summary: Create prijs + description: prijsOptie bedragen kunnen worden ingevuld als een getal + of als string met een . of , voor de decimalen required: true security: - tokenAuth: [] @@ -759,10 +1701,50 @@ paths: application/json: schema: $ref: '#/components/schemas/Prijs' + examples: + CreatePrijs: + value: + prijsopties: + - bedrag: 50,99 + beschrijving: normaal + - bedrag: 70,99 + beschrijving: spoed + product_type_id: 95792000-d57f-4d3a-b14c-c4c7aa964907 + actief_vanaf: '2024-12-01' + summary: Create prijs + description: prijsOptie bedragen kunnen worden ingevuld als een + getal of als string met een . of , voor de decimalen + description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' description: '' - /api/v1/prijzen/{id}/: + /prijzen/{id}/: get: operationId: prijzen_retrieve + description: Een specifieke PRIJS opvragen. + summary: Een specifieke PRIJS opvragen. parameters: - in: path name: id @@ -782,8 +1764,35 @@ paths: schema: $ref: '#/components/schemas/Prijs' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' put: operationId: prijzen_update + description: Werk een PRIJS in zijn geheel bij. + summary: Werk een PRIJS in zijn geheel bij. parameters: - in: path name: id @@ -809,34 +1818,37 @@ paths: schema: $ref: '#/components/schemas/Prijs' description: '' - patch: - operationId: prijzen_partial_update - parameters: - - in: path - name: id - schema: - type: string - format: uuid - description: A UUID string identifying this Prijs. - required: true - tags: - - prijzen - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedPrijsRequest' - security: - - tokenAuth: [] - responses: - '200': + '400': content: application/json: schema: - $ref: '#/components/schemas/Prijs' + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' description: '' - delete: - operationId: prijzen_destroy + patch: + operationId: prijzen_partial_update + description: |- + Werk een PRIJS deels bij. + Als prijsopties in een patch request wordt meegegeven wordt deze lijst geheel overschreven. + summary: Werk een PRIJS deels bij. parameters: - in: path name: id @@ -847,74 +1859,11 @@ paths: required: true tags: - prijzen - security: - - tokenAuth: [] - responses: - '204': - description: No response body - /api/v1/producten/: - get: - operationId: producten_list - parameters: - - in: query - name: gepubliceerd - schema: - type: boolean - - name: page - required: false - in: query - description: Een pagina binnen de gepagineerde set resultaten. - schema: - type: integer - - name: page_size - required: false - in: query - description: Het aantal resultaten terug te geven per pagina. - schema: - type: integer - tags: - - producten - security: - - tokenAuth: [] - responses: - '200': - content: - application/json: - schema: - $ref: '#/components/schemas/PaginatedProductList' - description: '' - post: - operationId: producten_create - tags: - - producten requestBody: content: application/json: schema: - $ref: '#/components/schemas/ProductRequest' - required: true - security: - - tokenAuth: [] - responses: - '201': - content: - application/json: - schema: - $ref: '#/components/schemas/Product' - description: '' - /api/v1/producten/{id}/: - get: - operationId: producten_retrieve - parameters: - - in: path - name: id - schema: - type: string - format: uuid - description: A UUID string identifying this Product. - required: true - tags: - - producten + $ref: '#/components/schemas/PatchedPrijsRequest' security: - tokenAuth: [] responses: @@ -922,81 +1871,82 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/Product' + $ref: '#/components/schemas/Prijs' description: '' - put: - operationId: producten_update - parameters: - - in: path - name: id - schema: - type: string - format: uuid - description: A UUID string identifying this Product. - required: true - tags: - - producten - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/ProductRequest' - required: true - security: - - tokenAuth: [] - responses: - '200': + '400': content: application/json: - schema: - $ref: '#/components/schemas/Product' - description: '' - patch: - operationId: producten_partial_update - parameters: - - in: path - name: id - schema: - type: string - format: uuid - description: A UUID string identifying this Product. - required: true - tags: - - producten - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/PatchedProductRequest' - security: - - tokenAuth: [] - responses: - '200': + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': content: application/json: schema: - $ref: '#/components/schemas/Product' + $ref: '#/components/schemas/DetailError' description: '' delete: - operationId: producten_destroy + operationId: prijzen_destroy + description: Verwijder een PRIJS. + summary: Verwijder een PRIJS. parameters: - in: path name: id schema: type: string format: uuid - description: A UUID string identifying this Product. + description: A UUID string identifying this Prijs. required: true tags: - - producten + - prijzen security: - tokenAuth: [] responses: '204': description: No response body - /api/v1/producttypen/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /producttypen/: get: operationId: producttypen_list + description: Deze lijst kan gefilterd wordt met query-string parameters. + summary: Alle PRODUCTTYPEN opvragen. parameters: - in: query name: gepubliceerd @@ -1025,8 +1975,35 @@ paths: schema: $ref: '#/components/schemas/PaginatedProductTypeList' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' post: operationId: producttypen_create + description: Maak een PRODUCTTYPE aan. + summary: Maak een PRODUCTTYPE aan. tags: - producttypen requestBody: @@ -1034,6 +2011,25 @@ paths: application/json: schema: $ref: '#/components/schemas/ProductTypeRequest' + examples: + CreateProductType: + value: + uniforme_product_naam: http://standaarden.overheid.nl/owms/terms/aanleunwoning + thema_ids: + - 497f6eca-6276-4993-bfeb-53cbbbba6f08 + locatie_ids: + - 235de068-a9c5-4eda-b61d-92fd7f09e9dc + organisatie_ids: + - 2c2694f1-f948-4960-8312-d51c3a0e540f + contact_ids: + - 6863d699-460d-4c1e-9297-16812d75d8ca + gepubliceerd: false + naam: Aanleunwoning + samenvatting: korte samenvatting... + beschrijving: uitgebreide beschrijving... + keywords: + - wonen + summary: Create product type required: true security: - tokenAuth: [] @@ -1043,10 +2039,56 @@ paths: application/json: schema: $ref: '#/components/schemas/ProductType' + examples: + CreateProductType: + value: + uniforme_product_naam: http://standaarden.overheid.nl/owms/terms/aanleunwoning + thema_ids: + - 497f6eca-6276-4993-bfeb-53cbbbba6f08 + locatie_ids: + - 235de068-a9c5-4eda-b61d-92fd7f09e9dc + organisatie_ids: + - 2c2694f1-f948-4960-8312-d51c3a0e540f + contact_ids: + - 6863d699-460d-4c1e-9297-16812d75d8ca + gepubliceerd: false + naam: Aanleunwoning + samenvatting: korte samenvatting... + beschrijving: uitgebreide beschrijving... + keywords: + - wonen + summary: Create product type + description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' description: '' - /api/v1/producttypen/{id}/: + /producttypen/{id}/: get: operationId: producttypen_retrieve + description: Een specifiek PRODUCTTYPE opvragen. + summary: Een specifiek PRODUCTTYPE opvragen. parameters: - in: path name: id @@ -1066,8 +2108,35 @@ paths: schema: $ref: '#/components/schemas/ProductType' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' put: operationId: producttypen_update + description: Werk een PRODUCTTYPE in zijn geheel bij. + summary: Werk een PRODUCTTYPE in zijn geheel bij. parameters: - in: path name: id @@ -1093,8 +2162,37 @@ paths: schema: $ref: '#/components/schemas/ProductType' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' patch: operationId: producttypen_partial_update + description: |- + Werk een PRODUCTTYPE deels bij + Als thema_ids, locatie_ids, organisatie_ids of contact_ids in een patch request wordt meegegeven wordt deze lijst geheel overschreven. + summary: Werk een PRODUCTTYPE deels bij. parameters: - in: path name: id @@ -1119,8 +2217,35 @@ paths: schema: $ref: '#/components/schemas/ProductType' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' delete: operationId: producttypen_destroy + description: Verwijder een PRODUCTTYPE. + summary: Verwijder een PRODUCTTYPE. parameters: - in: path name: id @@ -1136,9 +2261,36 @@ paths: responses: '204': description: No response body - /api/v1/producttypen/{id}/actuele-prijs/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /producttypen/{id}/actuele-prijs/: get: - operationId: producttypen_actuele_prijs_retrieve + operationId: actuele_prijs + description: Geeft de huidige prijzen van alle PRODUCTTYPEN terug. + summary: De actuele PRIJS van een PRODUCTTYPE opvragen. parameters: - in: path name: id @@ -1158,9 +2310,36 @@ paths: schema: $ref: '#/components/schemas/ProductTypeActuelePrijs' description: '' - /api/v1/producttypen/actuele-prijzen/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /producttypen/actuele-prijzen/: get: - operationId: producttypen_actuele_prijzen_retrieve + operationId: actuele_prijzen + description: Geeft de huidige prijzen van alle PRODUCTTYPEN terug. + summary: Alle ACTUELE PRIJZEN opvragen. tags: - producttypen security: @@ -1172,9 +2351,36 @@ paths: schema: $ref: '#/components/schemas/ProductTypeActuelePrijs' description: '' - /api/v1/themas/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /themas/: get: operationId: themas_list + description: Deze lijst kan gefilterd wordt met query-string parameters. + summary: Alle THEMA'S opvragen. parameters: - in: query name: gepubliceerd @@ -1203,8 +2409,35 @@ paths: schema: $ref: '#/components/schemas/PaginatedThemaList' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' post: operationId: themas_create + description: Maak een THEMA aan. + summary: Maak een THEMA aan. tags: - themas requestBody: @@ -1212,6 +2445,16 @@ paths: application/json: schema: $ref: '#/components/schemas/ThemaRequest' + examples: + CreateThema: + value: + hoofd_thema: 5f6a2219-5768-4e11-8a8e-ffbafff32482 + product_type_ids: + - 95792000-d57f-4d3a-b14c-c4c7aa964907 + gepubliceerd: true + naam: Parkeren + beschrijving: Parkeren in gemeente ABC + summary: Create thema required: true security: - tokenAuth: [] @@ -1221,10 +2464,47 @@ paths: application/json: schema: $ref: '#/components/schemas/Thema' + examples: + CreateThema: + value: + hoofd_thema: 5f6a2219-5768-4e11-8a8e-ffbafff32482 + product_type_ids: + - 95792000-d57f-4d3a-b14c-c4c7aa964907 + gepubliceerd: true + naam: Parkeren + beschrijving: Parkeren in gemeente ABC + summary: Create thema + description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' description: '' - /api/v1/themas/{id}/: + /themas/{id}/: get: operationId: themas_retrieve + description: Een specifieke THEMA opvragen. + summary: Een specifiek THEMA opvragen. parameters: - in: path name: id @@ -1244,8 +2524,35 @@ paths: schema: $ref: '#/components/schemas/Thema' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' put: operationId: themas_update + description: Werk een THEMA in zijn geheel bij. + summary: Werk een THEMA in zijn geheel bij. parameters: - in: path name: id @@ -1271,8 +2578,37 @@ paths: schema: $ref: '#/components/schemas/Thema' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' patch: operationId: themas_partial_update + description: |- + Werk een THEMA deels bij. + Als product_type_ids in een patch request wordt meegegeven wordt deze lijst geheel overschreven. + summary: Werk een THEMA deels bij. parameters: - in: path name: id @@ -1297,8 +2633,35 @@ paths: schema: $ref: '#/components/schemas/Thema' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' delete: operationId: themas_destroy + description: Verwijder een THEMA. + summary: Verwijder een THEMA. parameters: - in: path name: id @@ -1314,9 +2677,36 @@ paths: responses: '204': description: No response body - /api/v1/vragen/: + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' + /vragen/: get: operationId: vragen_list + description: Deze lijst kan gefilterd wordt met query-string parameters. + summary: Alle VRAGEN opvragen. parameters: - name: page required: false @@ -1355,8 +2745,35 @@ paths: schema: $ref: '#/components/schemas/PaginatedVraagList' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' post: operationId: vragen_create + description: Maak een VRAAG aan. + summary: Maak een VRAAG aan. tags: - vragen requestBody: @@ -1364,6 +2781,13 @@ paths: application/json: schema: $ref: '#/components/schemas/VraagRequest' + examples: + CreateVraag: + value: + product_type_id: 95792000-d57f-4d3a-b14c-c4c7aa964907 + vraag: Kom ik in aanmerking voor dit product? + antwoord: Ja + summary: Create vraag required: true security: - tokenAuth: [] @@ -1373,10 +2797,44 @@ paths: application/json: schema: $ref: '#/components/schemas/Vraag' + examples: + CreateVraag: + value: + product_type_id: 95792000-d57f-4d3a-b14c-c4c7aa964907 + vraag: Kom ik in aanmerking voor dit product? + antwoord: Ja + summary: Create vraag + description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' description: '' - /api/v1/vragen/{id}/: + /vragen/{id}/: get: operationId: vragen_retrieve + description: Een specifieke VRAAG opvragen. + summary: Een specifieke VRAAG opvragen. parameters: - in: path name: id @@ -1396,8 +2854,35 @@ paths: schema: $ref: '#/components/schemas/Vraag' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' put: operationId: vragen_update + description: Werk een VRAAG in zijn geheel bij. + summary: Werk een VRAAG in zijn geheel bij. parameters: - in: path name: id @@ -1423,8 +2908,35 @@ paths: schema: $ref: '#/components/schemas/Vraag' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' patch: operationId: vragen_partial_update + description: Werk een VRAAG deels bij. + summary: Werk een VRAAG deels bij. parameters: - in: path name: id @@ -1449,8 +2961,35 @@ paths: schema: $ref: '#/components/schemas/Vraag' description: '' + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' delete: operationId: vragen_destroy + description: Verwijder een VRAAG. + summary: Verwijder een VRAAG. parameters: - in: path name: id @@ -1466,6 +3005,31 @@ paths: responses: '204': description: No response body + '400': + content: + application/json: + schema: + $ref: '#/components/schemas/Error' + examples: + BadRequestExample: + value: + prijsopties: + - Er is minimaal één optie vereist. + product_type_id: + - ‘’ is geen geldige UUID. + actief_vanaf: + - 'Date heeft het verkeerde formaat, gebruik 1 van deze formaten: + DD-MM-YYYY.' + summary: Bad request example + description: Errors worden per veld teruggegeven. Hieronder volgt + een voorbeeld van het model Prijs. + description: Validation error + '403': + content: + application/json: + schema: + $ref: '#/components/schemas/DetailError' + description: '' components: schemas: Bestand: @@ -1569,6 +3133,20 @@ components: required: - achternaam - voornaam + DetailError: + type: object + properties: + detail: + type: string + required: + - detail + Error: + type: object + properties: + veld: + type: string + required: + - veld Link: type: object properties: @@ -1759,7 +3337,6 @@ components: type: array items: $ref: '#/components/schemas/PrijsOptie' - default: [] actief_vanaf: type: string format: date @@ -1768,6 +3345,7 @@ components: required: - actief_vanaf - id + - prijsopties NestedPrijsRequest: type: object properties: @@ -1775,7 +3353,6 @@ components: type: array items: $ref: '#/components/schemas/PrijsOptieRequest' - default: [] actief_vanaf: type: string format: date @@ -1783,6 +3360,7 @@ components: description: De datum vanaf wanneer de prijs actief is. required: - actief_vanaf + - prijsopties NestedProductType: type: object properties: @@ -2177,29 +3755,6 @@ components: type: array items: $ref: '#/components/schemas/Prijs' - PaginatedProductList: - type: object - required: - - count - - results - properties: - count: - type: integer - example: 123 - next: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=4 - previous: - type: string - nullable: true - format: uri - example: http://api.example.org/accounts/?page=2 - results: - type: array - items: - $ref: '#/components/schemas/Product' PaginatedProductTypeList: type: object required: @@ -2404,43 +3959,11 @@ components: type: array items: $ref: '#/components/schemas/PrijsOptieRequest' - default: [] actief_vanaf: type: string format: date title: Start datum description: De datum vanaf wanneer de prijs actief is. - PatchedProductRequest: - type: object - properties: - product_type_id: - type: string - format: uuid - writeOnly: true - gepubliceerd: - type: boolean - description: Geeft aan of het object getoond kan worden. - start_datum: - type: string - format: date - description: De start datum van dit product. - eind_datum: - type: string - format: date - description: De einddatum van dit product. - bsn: - type: string - nullable: true - description: De BSN van de product eigenaar, BSN van 8 karakters moet met - een extra 0 beginnen. - kvk: - type: string - nullable: true - title: KVK nummer - description: Het kvk nummer van de product eigenaar - pattern: ^[0-9]*$ - maxLength: 8 - minLength: 8 PatchedProductTypeRequest: type: object properties: @@ -2560,7 +4083,6 @@ components: type: array items: $ref: '#/components/schemas/PrijsOptie' - default: [] actief_vanaf: type: string format: date @@ -2569,6 +4091,7 @@ components: required: - actief_vanaf - id + - prijsopties - product_type_id PrijsOptie: type: object @@ -2617,7 +4140,6 @@ components: type: array items: $ref: '#/components/schemas/PrijsOptieRequest' - default: [] actief_vanaf: type: string format: date @@ -2625,96 +4147,8 @@ components: description: De datum vanaf wanneer de prijs actief is. required: - actief_vanaf + - prijsopties - product_type_id - Product: - type: object - properties: - id: - type: string - format: uuid - readOnly: true - product_type: - allOf: - - $ref: '#/components/schemas/NestedProductType' - readOnly: true - gepubliceerd: - type: boolean - description: Geeft aan of het object getoond kan worden. - aanmaak_datum: - type: string - format: date-time - readOnly: true - title: Created on - description: De datum waarop het object is aangemaakt. - update_datum: - type: string - format: date-time - readOnly: true - title: Updated on - description: De datum waarop het object voor het laatst is gewijzigd. - start_datum: - type: string - format: date - description: De start datum van dit product. - eind_datum: - type: string - format: date - description: De einddatum van dit product. - bsn: - type: string - nullable: true - description: De BSN van de product eigenaar, BSN van 8 karakters moet met - een extra 0 beginnen. - kvk: - type: string - nullable: true - title: KVK nummer - description: Het kvk nummer van de product eigenaar - pattern: ^[0-9]*$ - maxLength: 8 - minLength: 8 - required: - - aanmaak_datum - - eind_datum - - id - - product_type - - start_datum - - update_datum - ProductRequest: - type: object - properties: - product_type_id: - type: string - format: uuid - writeOnly: true - gepubliceerd: - type: boolean - description: Geeft aan of het object getoond kan worden. - start_datum: - type: string - format: date - description: De start datum van dit product. - eind_datum: - type: string - format: date - description: De einddatum van dit product. - bsn: - type: string - nullable: true - description: De BSN van de product eigenaar, BSN van 8 karakters moet met - een extra 0 beginnen. - kvk: - type: string - nullable: true - title: KVK nummer - description: Het kvk nummer van de product eigenaar - pattern: ^[0-9]*$ - maxLength: 8 - minLength: 8 - required: - - eind_datum - - product_type_id - - start_datum ProductType: type: object properties: