openapi: 3.0.0 info: title: Contactmomenten API description: 'Een API om contactmomenten met klanten te registreren of op te vragen. **Afhankelijkheden** Deze API is afhankelijk van: * Autorisaties API * Notificaties API * Klanten API * Zaken API *(optioneel)* * Verzoeken API *(optioneel)* * Documenten API *(optioneel)* **Autorisatie** Deze API vereist autorisatie. Je kan de [token-tool](https://zaken-auth.vng.cloud/) gebruiken om JWT-tokens te genereren. ** Notificaties Deze API publiceert notificaties op het kanaal `contactmomenten`. **Main resource** `contactmoment` **Kenmerken** * `bronorganisatie`: Het RSIN van de Niet-natuurlijk persoon zijnde de organisatie die de klantinteractie heeft gecreeerd. Dit moet een geldig RSIN zijn van 9 nummers en voldoen aan https://nl.wikipedia.org/wiki/Burgerservicenummer#11-proef * `kanaal`: Het communicatiekanaal waarlangs het CONTACTMOMENT gevoerd wordt **Resources en acties** **Handige links** * [Documentatie](https://zaakgerichtwerken.vng.cloud/standaard) * [Zaakgericht werken](https://zaakgerichtwerken.vng.cloud) ' contact: url: https://zaakgerichtwerken.vng.cloud email: standaarden.ondersteuning@vng.nl license: name: EUPL 1.2 url: https://opensource.org/licenses/EUPL-1.2 version: 1.1.0 security: - JWT-Claims: [] paths: /contactmomenten: get: operationId: contactmoment_list summary: Alle CONTACTMOMENTen opvragen. description: Alle CONTACTMOMENTen opvragen. parameters: - name: vorigContactmoment in: query description: URL-referentie naar het vorige CONTACTMOMENT. required: false schema: type: string format: uri - name: volgendContactmoment in: query description: URL-referentie naar het volgende CONTACTMOMENT. required: false schema: type: string format: uri - name: bronorganisatie in: query description: Het RSIN van de Niet-natuurlijk persoon zijnde de organisatie die de klantinteractie heeft gecreeerd. Dit moet een geldig RSIN zijn van 9 nummers en voldoen aan https://nl.wikipedia.org/wiki/Burgerservicenummer#11-proef required: false schema: type: string - name: registratiedatum in: query description: De datum en het tijdstip waarop het CONTACTMOMENT is geregistreerd. required: false schema: type: string - name: registratiedatum__gt in: query description: De datum en het tijdstip waarop het CONTACTMOMENT is geregistreerd. required: false schema: type: string - name: registratiedatum__gte in: query description: De datum en het tijdstip waarop het CONTACTMOMENT is geregistreerd. required: false schema: type: string - name: registratiedatum__lt in: query description: De datum en het tijdstip waarop het CONTACTMOMENT is geregistreerd. required: false schema: type: string - name: registratiedatum__lte in: query description: De datum en het tijdstip waarop het CONTACTMOMENT is geregistreerd. required: false schema: type: string - name: kanaal in: query description: Het communicatiekanaal waarlangs het CONTACTMOMENT gevoerd wordt required: false schema: type: string - name: voorkeurskanaal in: query description: Het communicatiekanaal dat voor opvolging van deze klantinteractie de voorkeur heeft van de KLANT. required: false schema: type: string - name: voorkeurstaal in: query description: 'Een ISO 639-2/B taalcode waarin de voorkeurstaal van de KLANT voor de opvolging van deze klantinteractie is vastgelegd. Voorbeeld: `nld`. Zie: https://www.iso.org/standard/4767.html' required: false schema: type: string - name: initiatiefnemer in: query description: "De partij die het contact heeft ge\xEFnitieerd." required: false schema: type: string enum: - gemeente - klant - name: medewerker in: query description: URL-referentie naar een medewerker required: false schema: type: string format: uri - name: ordering in: query description: Het veld waarop de resultaten geordend worden. required: false schema: type: string enum: - url - -url - bronorganisatie - -bronorganisatie - klant - -klant - registratiedatum - -registratiedatum - kanaal - -kanaal - voorkeurskanaal - -voorkeurskanaal - tekst - -tekst - onderwerp_links - -onderwerp_links - initiatiefnemer - -initiatiefnemer - medewerker - -medewerker - medewerker_identificatie - -medewerker_identificatie - name: page in: query description: Een pagina binnen de gepagineerde set resultaten. required: false schema: type: integer responses: '200': description: OK headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/json: schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri nullable: true previous: type: string format: uri nullable: true results: type: array items: $ref: '#/components/schemas/ContactMoment' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - contactmomenten security: - JWT-Claims: - contactmomenten.lezen post: operationId: contactmoment_create summary: Maak een CONTACTMOMENT aan. description: Maak een CONTACTMOMENT aan. parameters: - name: Content-Type in: header description: Content type van de verzoekinhoud. required: true schema: type: string enum: - application/json - name: X-NLX-Logrecord-ID in: header description: Identifier of the request, traceable throughout the network required: false schema: type: string - name: X-Audit-Toelichting in: header description: Toelichting waarom een bepaald verzoek wordt gedaan required: false schema: type: string requestBody: $ref: '#/components/requestBodies/ContactMoment' responses: '201': description: Created headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' Location: schema: type: string format: uri description: URL waar de resource leeft. content: application/json: schema: $ref: '#/components/schemas/ContactMoment' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - contactmomenten security: - JWT-Claims: - contactmomenten.aanmaken parameters: [] /contactmomenten/{contactmoment_uuid}/audittrail: get: operationId: audittrail_list summary: Alle audit trail regels behorend bij de CONTACTMOMENT. description: Alle audit trail regels behorend bij de CONTACTMOMENT. responses: '200': description: OK headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/json: schema: type: array items: $ref: '#/components/schemas/AuditTrail' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - contactmomenten security: - JWT-Claims: - audittrails.lezen parameters: - name: contactmoment_uuid in: path required: true description: Unieke resource identifier (UUID4) schema: type: string format: uuid /contactmomenten/{contactmoment_uuid}/audittrail/{uuid}: get: operationId: audittrail_read summary: Een specifieke audit trail regel opvragen. description: Een specifieke audit trail regel opvragen. parameters: - name: If-None-Match in: header description: "Voer een voorwaardelijk verzoek uit. Deze header moet \xE9\xE9\ n of meerdere ETag-waardes bevatten van resources die de consumer gecached\ \ heeft. Indien de waarde van de ETag van de huidige resource voorkomt in\ \ deze set, dan antwoordt de provider met een lege HTTP 304 request. Zie\ \ [MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-None-Match)\ \ voor meer informatie." required: false examples: oneValue: summary: "E\xE9n ETag-waarde" value: '"79054025255fb1a26e4bc422aef54eb4"' multipleValues: summary: Meerdere ETag-waardes value: '"79054025255fb1a26e4bc422aef54eb4", "e4d909c290d0fb1ca068ffaddf22cbd0"' schema: type: string responses: '200': description: OK headers: ETag: description: De ETag berekend op de response body JSON. Indien twee resources exact dezelfde ETag hebben, dan zijn deze resources identiek aan elkaar. Je kan de ETag gebruiken om caching te implementeren. schema: type: string API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/json: schema: $ref: '#/components/schemas/AuditTrail' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - contactmomenten security: - JWT-Claims: - audittrails.lezen parameters: - name: contactmoment_uuid in: path required: true description: Unieke resource identifier (UUID4) schema: type: string format: uuid - name: uuid in: path description: Unieke identificatie van de audit regel. required: true schema: type: string format: uuid /contactmomenten/{uuid}: get: operationId: contactmoment_read summary: Een specifiek CONTACTMOMENT opvragen. description: Een specifiek CONTACTMOMENT opvragen. parameters: - name: If-None-Match in: header description: "Voer een voorwaardelijk verzoek uit. Deze header moet \xE9\xE9\ n of meerdere ETag-waardes bevatten van resources die de consumer gecached\ \ heeft. Indien de waarde van de ETag van de huidige resource voorkomt in\ \ deze set, dan antwoordt de provider met een lege HTTP 304 request. Zie\ \ [MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-None-Match)\ \ voor meer informatie." required: false examples: oneValue: summary: "E\xE9n ETag-waarde" value: '"79054025255fb1a26e4bc422aef54eb4"' multipleValues: summary: Meerdere ETag-waardes value: '"79054025255fb1a26e4bc422aef54eb4", "e4d909c290d0fb1ca068ffaddf22cbd0"' schema: type: string responses: '200': description: OK headers: ETag: description: De ETag berekend op de response body JSON. Indien twee resources exact dezelfde ETag hebben, dan zijn deze resources identiek aan elkaar. Je kan de ETag gebruiken om caching te implementeren. schema: type: string API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/json: schema: $ref: '#/components/schemas/ContactMoment' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - contactmomenten security: - JWT-Claims: - contactmomenten.lezen put: operationId: contactmoment_update summary: Werk een CONTACTMOMENT in zijn geheel bij. description: Werk een CONTACTMOMENT in zijn geheel bij. parameters: - name: Content-Type in: header description: Content type van de verzoekinhoud. required: true schema: type: string enum: - application/json - name: X-NLX-Logrecord-ID in: header description: Identifier of the request, traceable throughout the network required: false schema: type: string - name: X-Audit-Toelichting in: header description: Toelichting waarom een bepaald verzoek wordt gedaan required: false schema: type: string requestBody: $ref: '#/components/requestBodies/ContactMoment' responses: '200': description: OK headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/json: schema: $ref: '#/components/schemas/ContactMoment' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - contactmomenten security: - JWT-Claims: - contactmomenten.bijwerken patch: operationId: contactmoment_partial_update summary: Werk een CONTACTMOMENT deels bij. description: Werk een CONTACTMOMENT deels bij. parameters: - name: Content-Type in: header description: Content type van de verzoekinhoud. required: true schema: type: string enum: - application/json - name: X-NLX-Logrecord-ID in: header description: Identifier of the request, traceable throughout the network required: false schema: type: string - name: X-Audit-Toelichting in: header description: Toelichting waarom een bepaald verzoek wordt gedaan required: false schema: type: string requestBody: $ref: '#/components/requestBodies/ContactMoment' responses: '200': description: OK headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/json: schema: $ref: '#/components/schemas/ContactMoment' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - contactmomenten security: - JWT-Claims: - contactmomenten.bijwerken delete: operationId: contactmoment_delete summary: Verwijder een CONTACTMOMENT. description: Verwijder een CONTACTMOMENT. parameters: - name: X-NLX-Logrecord-ID in: header description: Identifier of the request, traceable throughout the network required: false schema: type: string - name: X-Audit-Toelichting in: header description: Toelichting waarom een bepaald verzoek wordt gedaan required: false schema: type: string responses: '204': description: No content headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - contactmomenten security: - JWT-Claims: - contactmomenten.verwijderen parameters: - name: uuid in: path description: Unieke resource identifier (UUID4) required: true schema: type: string format: uuid /klantcontactmomenten: get: operationId: klantcontactmoment_list summary: Alle KLANT-CONTACTMOMENT relaties opvragen. description: Deze lijst kan gefilterd wordt met query-string parameters. parameters: - name: contactmoment in: query description: URL-referentie naar het CONTACTMOMENT. required: false schema: type: string format: uri - name: klant in: query description: URL-referentie naar de KLANT. required: false schema: type: string format: uri - name: rol in: query description: De rol van de KLANT in het CONTACTMOMENT. Indien de KLANT zowel gesprekspartner als belanghebbende is, dan worden er twee KLANTCONTACTMOMENTen aangemaakt. required: false schema: type: string enum: - belanghebbende - gesprekspartner - name: page in: query description: Een pagina binnen de gepagineerde set resultaten. required: false schema: type: integer responses: '200': description: OK headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/json: schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri nullable: true previous: type: string format: uri nullable: true results: type: array items: $ref: '#/components/schemas/KlantContactMoment' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - klantcontactmomenten security: - JWT-Claims: - contactmomenten.lezen post: operationId: klantcontactmoment_create summary: Maak een KLANT-CONTACTMOMENT relatie aan. description: 'Registreer een CONTACTMOMENT bij een KLANT. **Er wordt gevalideerd op** * geldigheid `contactmoment` URL * geldigheid `klant` URL * de combinatie `contactmoment` en `klant` moet uniek zijn' parameters: - name: Content-Type in: header description: Content type van de verzoekinhoud. required: true schema: type: string enum: - application/json requestBody: content: application/json: schema: $ref: '#/components/schemas/KlantContactMoment' required: true responses: '201': description: Created headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' Location: schema: type: string format: uri description: URL waar de resource leeft. content: application/json: schema: $ref: '#/components/schemas/KlantContactMoment' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - klantcontactmomenten security: - JWT-Claims: - contactmomenten.aanmaken parameters: [] /klantcontactmomenten/{uuid}: get: operationId: klantcontactmoment_read summary: Een specifieke KLANT-CONTACTMOMENT relatie opvragen. description: Een specifieke KLANT-CONTACTMOMENT relatie opvragen. parameters: - name: If-None-Match in: header description: "Voer een voorwaardelijk verzoek uit. Deze header moet \xE9\xE9\ n of meerdere ETag-waardes bevatten van resources die de consumer gecached\ \ heeft. Indien de waarde van de ETag van de huidige resource voorkomt in\ \ deze set, dan antwoordt de provider met een lege HTTP 304 request. Zie\ \ [MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-None-Match)\ \ voor meer informatie." required: false examples: oneValue: summary: "E\xE9n ETag-waarde" value: '"79054025255fb1a26e4bc422aef54eb4"' multipleValues: summary: Meerdere ETag-waardes value: '"79054025255fb1a26e4bc422aef54eb4", "e4d909c290d0fb1ca068ffaddf22cbd0"' schema: type: string responses: '200': description: OK headers: ETag: description: De ETag berekend op de response body JSON. Indien twee resources exact dezelfde ETag hebben, dan zijn deze resources identiek aan elkaar. Je kan de ETag gebruiken om caching te implementeren. schema: type: string API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/json: schema: $ref: '#/components/schemas/KlantContactMoment' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - klantcontactmomenten security: - JWT-Claims: - contactmomenten.lezen delete: operationId: klantcontactmoment_delete summary: Verwijder een KLANT-CONTACTMOMENT relatie. description: Verwijder een KLANT-CONTACTMOMENT relatie. responses: '204': description: No content headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - klantcontactmomenten security: - JWT-Claims: - contactmomenten.verwijderen parameters: - name: uuid in: path description: Unieke resource identifier (UUID4) required: true schema: type: string format: uuid /objectcontactmomenten: get: operationId: objectcontactmoment_list summary: Alle OBJECT-CONTACTMOMENT relaties opvragen. description: Alle OBJECT-CONTACTMOMENT relaties opvragen. parameters: - name: object in: query description: URL-referentie naar het gerelateerde OBJECT (in een andere API). required: false schema: type: string format: uri - name: contactmoment in: query description: URL-referentie naar het CONTACTMOMENT. required: false schema: type: string format: uri - name: objectType in: query description: Het type van het gerelateerde OBJECT. required: false schema: type: string enum: - zaak - name: page in: query description: Een pagina binnen de gepagineerde set resultaten. required: false schema: type: integer responses: '200': description: OK headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/json: schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri nullable: true previous: type: string format: uri nullable: true results: type: array items: $ref: '#/components/schemas/ObjectContactMoment' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - objectcontactmomenten security: - JWT-Claims: - contactmomenten.lezen post: operationId: objectcontactmoment_create summary: Maak een OBJECT-CONTACTMOMENT relatie aan. description: 'Maak een OBJECT-CONTACTMOMENT relatie aan. **LET OP: Dit endpoint hoor je als consumer niet zelf aan te spreken.** Andere API''s, zoals de Zaken API, gebruiken dit endpoint bij het synchroniseren van relaties.' parameters: - name: Content-Type in: header description: Content type van de verzoekinhoud. required: true schema: type: string enum: - application/json requestBody: content: application/json: schema: $ref: '#/components/schemas/ObjectContactMoment' required: true responses: '201': description: Created headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' Location: schema: type: string format: uri description: URL waar de resource leeft. content: application/json: schema: $ref: '#/components/schemas/ObjectContactMoment' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - objectcontactmomenten security: - JWT-Claims: - contactmomenten.aanmaken parameters: [] /objectcontactmomenten/{uuid}: get: operationId: objectcontactmoment_read summary: Een specifiek OBJECT-CONTACTMOMENT relatie opvragen. description: Een specifiek OBJECT-CONTACTMOMENT relatie opvragen. parameters: - name: If-None-Match in: header description: "Voer een voorwaardelijk verzoek uit. Deze header moet \xE9\xE9\ n of meerdere ETag-waardes bevatten van resources die de consumer gecached\ \ heeft. Indien de waarde van de ETag van de huidige resource voorkomt in\ \ deze set, dan antwoordt de provider met een lege HTTP 304 request. Zie\ \ [MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/If-None-Match)\ \ voor meer informatie." required: false examples: oneValue: summary: "E\xE9n ETag-waarde" value: '"79054025255fb1a26e4bc422aef54eb4"' multipleValues: summary: Meerdere ETag-waardes value: '"79054025255fb1a26e4bc422aef54eb4", "e4d909c290d0fb1ca068ffaddf22cbd0"' schema: type: string responses: '200': description: OK headers: ETag: description: De ETag berekend op de response body JSON. Indien twee resources exact dezelfde ETag hebben, dan zijn deze resources identiek aan elkaar. Je kan de ETag gebruiken om caching te implementeren. schema: type: string API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/json: schema: $ref: '#/components/schemas/ObjectContactMoment' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - objectcontactmomenten security: - JWT-Claims: - contactmomenten.lezen delete: operationId: objectcontactmoment_delete summary: Verwijder een OBJECT-CONTACTMOMENT relatie. description: 'Verwijder een OBJECT-CONTACTMOMENT relatie. **LET OP: Dit endpoint hoor je als consumer niet zelf aan te spreken.** Andere API''s, zoals de Zaken API, gebruiken dit endpoint bij het synchroniseren van relaties.' responses: '204': description: No content headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '406': $ref: '#/components/responses/406' '409': $ref: '#/components/responses/409' '410': $ref: '#/components/responses/410' '415': $ref: '#/components/responses/415' '429': $ref: '#/components/responses/429' '500': $ref: '#/components/responses/500' tags: - objectcontactmomenten security: - JWT-Claims: - contactmomenten.verwijderen parameters: - name: uuid in: path description: Unieke resource identifier (UUID4) required: true schema: type: string format: uuid tags: - name: contactmomenten description: '' - name: klantcontactmomenten description: 'Het betreft een relatie tussen een willekeurig OBJECT, bijvoorbeeld een ZAAK in de Zaken API, en een CONTACTMOMENT.' - name: objectcontactmomenten description: 'Het betreft een relatie tussen een willekeurig OBJECT, bijvoorbeeld een ZAAK in de Zaken API, en een CONTACTMOMENT.' servers: - url: /api/v1 components: responses: '400': description: Bad request headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/problem+json: schema: $ref: '#/components/schemas/ValidatieFout' '401': description: Unauthorized headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/problem+json: schema: $ref: '#/components/schemas/Fout' '403': description: Forbidden headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/problem+json: schema: $ref: '#/components/schemas/Fout' '404': description: Not found headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/problem+json: schema: $ref: '#/components/schemas/Fout' '406': description: Not acceptable headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/problem+json: schema: $ref: '#/components/schemas/Fout' '409': description: Conflict headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/problem+json: schema: $ref: '#/components/schemas/Fout' '410': description: Gone headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/problem+json: schema: $ref: '#/components/schemas/Fout' '412': description: Precondition failed headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/problem+json: schema: $ref: '#/components/schemas/Fout' '415': description: Unsupported media type headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/problem+json: schema: $ref: '#/components/schemas/Fout' '429': description: Too many requests headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/problem+json: schema: $ref: '#/components/schemas/Fout' '500': description: Internal server error headers: API-version: schema: type: string description: 'Geeft een specifieke API-versie aan in de context van een specifieke aanroep. Voorbeeld: 1.2.1.' content: application/problem+json: schema: $ref: '#/components/schemas/Fout' requestBodies: ContactMoment: content: application/json: schema: $ref: '#/components/schemas/ContactMoment' required: true securitySchemes: JWT-Claims: type: http scheme: bearer bearerFormat: JWT schemas: Medewerker: title: Medewerker identificatie type: object properties: identificatie: title: Identificatie description: Een korte unieke aanduiding van de MEDEWERKER. type: string maxLength: 24 achternaam: title: Achternaam description: De achternaam zoals de MEDEWERKER die in het dagelijkse verkeer gebruikt. type: string maxLength: 200 voorletters: title: Voorletters description: De verzameling letters die gevormd wordt door de eerste letter van alle in volgorde voorkomende voornamen. type: string maxLength: 20 voorvoegselAchternaam: title: Voorvoegsel achternaam description: Dat deel van de geslachtsnaam dat voorkomt in Tabel 36 (GBA), voorvoegseltabel, en door een spatie van de geslachtsnaam is type: string maxLength: 10 nullable: true ContactMoment: required: - bronorganisatie type: object properties: url: title: Url description: URL-referentie naar dit object. Dit is de unieke identificatie en locatie van dit object. type: string format: uri readOnly: true maxLength: 1000 minLength: 1 vorigContactmoment: title: Vorig contactmoment description: URL-referentie naar het vorige CONTACTMOMENT. type: string format: uri maxLength: 1000 minLength: 1 nullable: true volgendContactmoment: title: Volgend contactmoment description: URL-referentie naar het volgende CONTACTMOMENT. type: string format: uri readOnly: true maxLength: 1000 minLength: 1 nullable: true bronorganisatie: title: Bronorganisatie description: Het RSIN van de Niet-natuurlijk persoon zijnde de organisatie die de klantinteractie heeft gecreeerd. Dit moet een geldig RSIN zijn van 9 nummers en voldoen aan https://nl.wikipedia.org/wiki/Burgerservicenummer#11-proef type: string maxLength: 9 minLength: 1 registratiedatum: title: Registratiedatum description: De datum en het tijdstip waarop het CONTACTMOMENT is geregistreerd. type: string format: date-time kanaal: title: Kanaal description: Het communicatiekanaal waarlangs het CONTACTMOMENT gevoerd wordt type: string maxLength: 50 voorkeurskanaal: title: Voorkeurskanaal description: Het communicatiekanaal dat voor opvolging van deze klantinteractie de voorkeur heeft van de KLANT. type: string maxLength: 50 voorkeurstaal: title: Voorkeurstaal description: 'Een ISO 639-2/B taalcode waarin de voorkeurstaal van de KLANT voor de opvolging van deze klantinteractie is vastgelegd. Voorbeeld: `nld`. Zie: https://www.iso.org/standard/4767.html' type: string maxLength: 3 tekst: $ref: '#/components/schemas/Tekst' onderwerpLinks: description: "E\xE9n of meerdere links naar een product, webpagina of andere\ \ entiteit zodat contactmomenten gegroepeerd kunnen worden op onderwerp." type: array items: title: Onderwerp link description: URL naar een product, webpagina of andere entiteit zodat contactmomenten gegroepeerd kunnen worden. type: string format: uri maxLength: 1000 minLength: 1 initiatiefnemer: title: Initiatiefnemer description: "De partij die het contact heeft ge\xEFnitieerd." type: string enum: - gemeente - klant medewerker: title: Medewerker description: URL-referentie naar een medewerker type: string format: uri maxLength: 1000 medewerkerIdentificatie: $ref: '#/components/schemas/Medewerker' Fout: required: - code - title - status - detail - instance type: object properties: type: title: Type description: URI referentie naar het type fout, bedoeld voor developers type: string code: title: Code description: Systeemcode die het type fout aangeeft type: string minLength: 1 title: title: Title description: Generieke titel voor het type fout type: string minLength: 1 status: title: Status description: De HTTP status code type: integer detail: title: Detail description: Extra informatie bij de fout, indien beschikbaar type: string minLength: 1 instance: title: Instance description: URI met referentie naar dit specifiek voorkomen van de fout. Deze kan gebruikt worden in combinatie met server logs, bijvoorbeeld. type: string minLength: 1 FieldValidationError: required: - name - code - reason type: object properties: name: title: Name description: Naam van het veld met ongeldige gegevens type: string minLength: 1 code: title: Code description: Systeemcode die het type fout aangeeft type: string minLength: 1 reason: title: Reason description: Uitleg wat er precies fout is met de gegevens type: string minLength: 1 ValidatieFout: required: - code - title - status - detail - instance - invalidParams type: object properties: type: title: Type description: URI referentie naar het type fout, bedoeld voor developers type: string code: title: Code description: Systeemcode die het type fout aangeeft type: string minLength: 1 title: title: Title description: Generieke titel voor het type fout type: string minLength: 1 status: title: Status description: De HTTP status code type: integer detail: title: Detail description: Extra informatie bij de fout, indien beschikbaar type: string minLength: 1 instance: title: Instance description: URI met referentie naar dit specifiek voorkomen van de fout. Deze kan gebruikt worden in combinatie met server logs, bijvoorbeeld. type: string minLength: 1 invalidParams: type: array items: $ref: '#/components/schemas/FieldValidationError' Wijzigingen: title: Wijzigingen type: object properties: oud: title: Oud description: Volledige JSON body van het object zoals dat bestond voordat de actie heeft plaatsgevonden. type: object nieuw: title: Nieuw description: Volledige JSON body van het object na de actie. type: object AuditTrail: required: - bron - actie - resultaat - hoofdObject - resource - resourceUrl - resourceWeergave - wijzigingen type: object properties: uuid: title: Uuid description: Unieke identificatie van de audit regel. type: string format: uuid bron: title: Bron description: 'De naam van het component waar de wijziging in is gedaan. Uitleg bij mogelijke waarden: * `ac` - Autorisaties API * `nrc` - Notificaties API * `zrc` - Zaken API * `ztc` - Catalogi API * `drc` - Documenten API * `brc` - Besluiten API * `cmc` - Contactmomenten API * `kc` - Klanten API' type: string enum: - ac - nrc - zrc - ztc - drc - brc - cmc - kc applicatieId: title: Applicatie id description: Unieke identificatie van de applicatie, binnen de organisatie. type: string maxLength: 100 applicatieWeergave: title: Applicatie weergave description: Vriendelijke naam van de applicatie. type: string maxLength: 200 gebruikersId: title: Gebruikers id description: Unieke identificatie van de gebruiker die binnen de organisatie herleid kan worden naar een persoon. type: string maxLength: 255 gebruikersWeergave: title: Gebruikers weergave description: Vriendelijke naam van de gebruiker. type: string maxLength: 255 actie: title: Actie description: 'De uitgevoerde handeling. De bekende waardes voor dit veld zijn hieronder aangegeven, maar andere waardes zijn ook toegestaan Uitleg bij mogelijke waarden: * `create` - Object aangemaakt * `list` - Lijst van objecten opgehaald * `retrieve` - Object opgehaald * `destroy` - Object verwijderd * `update` - Object bijgewerkt * `partial_update` - Object deels bijgewerkt' type: string maxLength: 50 minLength: 1 actieWeergave: title: Actie weergave description: Vriendelijke naam van de actie. type: string maxLength: 200 resultaat: title: Resultaat description: HTTP status code van de API response van de uitgevoerde handeling. type: integer maximum: 599 minimum: 100 hoofdObject: title: Hoofd object description: De URL naar het hoofdobject van een component. type: string format: uri maxLength: 1000 minLength: 1 resource: title: Resource description: Het type resource waarop de actie gebeurde. type: string maxLength: 50 minLength: 1 resourceUrl: title: Resource url description: De URL naar het object. type: string format: uri maxLength: 1000 minLength: 1 toelichting: title: Toelichting description: Toelichting waarom de handeling is uitgevoerd. type: string resourceWeergave: title: Resource weergave description: Vriendelijke identificatie van het object. type: string maxLength: 200 minLength: 1 aanmaakdatum: title: Aanmaakdatum description: De datum waarop de handeling is gedaan. type: string format: date-time readOnly: true wijzigingen: $ref: '#/components/schemas/Wijzigingen' KlantContactMoment: required: - contactmoment - klant - rol type: object properties: url: title: Url description: URL-referentie naar dit object. Dit is de unieke identificatie en locatie van dit object. type: string format: uri readOnly: true maxLength: 1000 minLength: 1 contactmoment: title: Contactmoment description: URL-referentie naar het CONTACTMOMENT. type: string format: uri maxLength: 1000 minLength: 1 klant: title: Klant description: URL-referentie naar de KLANT. type: string format: uri maxLength: 1000 minLength: 1 rol: title: Rol description: De rol van de KLANT in het CONTACTMOMENT. Indien de KLANT zowel gesprekspartner als belanghebbende is, dan worden er twee KLANTCONTACTMOMENTen aangemaakt. type: string enum: - belanghebbende - gesprekspartner ObjectContactMoment: required: - contactmoment - object - objectType type: object properties: url: title: Url description: URL-referentie naar dit object. Dit is de unieke identificatie en locatie van dit object. type: string format: uri readOnly: true maxLength: 1000 minLength: 1 contactmoment: title: Contactmoment description: URL-referentie naar het CONTACTMOMENT. type: string format: uri maxLength: 1000 minLength: 1 object: title: Object description: URL-referentie naar het gerelateerde OBJECT (in een andere API). type: string format: uri maxLength: 1000 minLength: 1 objectType: title: Objecttype description: 'Het type van het gerelateerde OBJECT. Uitleg bij mogelijke waarden: * `zaak` - Zaak' type: string enum: - zaak Tekst: required: - inhoud - formaat - formaatWeergave type: object properties: inhoud: title: Inhoud description: Een toelichting die inhoudelijk de klantinteractie van de klant beschrijft. type: string example: "Tekst die in **MarkDown** formaat is opgemaakt." formaat: title: Formaat description: "Er zijn twee formaten waaruit gekozen kan worden: `plain` en `markdown`. Dit zijn afkortingen van de media types: `text/plain; charset=utf-8` (zie [RFC3676](https://www.rfc-editor.org/rfc/rfc3676.html)) en `text/markdown; charset=utf-8` (zie [RFC7763](https://www.rfc-editor.org/rfc/rfc7763.html)) zoals gepubliceerd in de lijst van [IANA](https://www.iana.org/assignments/media-types/media-types.xhtml)." type: string example: markdown enum: - plain - markdown formaatWeergave: title: Formaatweergave description: Volledige weergave van het formaat volgens IANA zoals hierboven beschreven. type: string readOnly: true minLength: 1 example: "text/markdown; charset=utf-8"