From 46bf7874d9105dc359388db4337c05f5bc98debb Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Tue, 13 Jan 2026 16:08:39 +0100 Subject: [PATCH] OVPAY-2394 - Added POST, PATCH and DELETE operations for NotificationPreferences. --- src/openapi/customers/notifications-crud.yaml | 200 ++++++++++++++++++ 1 file changed, 200 insertions(+) diff --git a/src/openapi/customers/notifications-crud.yaml b/src/openapi/customers/notifications-crud.yaml index cb1e1a6..24eb33c 100644 --- a/src/openapi/customers/notifications-crud.yaml +++ b/src/openapi/customers/notifications-crud.yaml @@ -455,6 +455,172 @@ paths: schema: type: object $ref: "#/components/schemas/500Response" + /notificationsubscriptions/{notificationSubscriptionId}/notificationpreferences: + parameters: + - name: notificationSubscriptionId + in: path + required: true + schema: + type: string + format: uuid + example: 5bedce29-af0c-4f3c-b182-2caa8a1f9377 + post: + summary: Add a notification preference to a notification subscription + tags: + - Notification Preferences + requestBody: + required: true + content: + application/json: + schema: + $ref: "#/components/schemas/PostNotificationPreferenceRequest" + examples: + addNotificationPreferenceNotNull: + summary: With non-null resource identifier + value: + eventTypeChannelId: ccc8c025-06b5-4928-a632-23e1c55cd173 + resourceIdentifier: 44 + addNotificationPreferenceNull: + summary: With null resource identifier + value: + eventTypeChannelId: ccc8c025-06b5-4928-a632-23e1c55cd173 + resourceIdentifier: null + responses: + "201": + description: Notification preference added successfully + content: + application/json: + schema: + $ref: "#/components/schemas/PostNotificationPreferenceResponse" + examples: + addNotificationPreferenceResponse: + value: + notificationPreferenceId: d4e5f6a7-b8c9-40d1-ef01-234567890abc + "400": + description: Bad request + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/400Response" + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/401Response" + "404": + description: Not found + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/404Response" + "500": + description: Internal server error + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/500Response" + /notificationpreferences/{notificationPreferenceId}: + parameters: + - name: notificationPreferenceId + in: path + required: true + schema: + type: string + format: uuid + example: d4e5f6a7-b8c9-40d1-ef01-234567890abc + patch: + summary: Update a notification preference by ID + tags: + - Notification Preferences + requestBody: + required: true + content: + application/json: + schema: + $ref: "#/components/schemas/PatchNotificationPreferenceRequest" + examples: + updateNotificationPreferenceRequest: + value: + resourceIdentifier: 55 + responses: + "200": + description: Notification preference updated successfully + content: + application/json: + schema: + $ref: "#/components/schemas/PatchNotificationPreferenceResponse" + examples: + updateNotificationPreferenceResponse: + value: + notificationPreferenceId: d4e5f6a7-b8c9-40d1-ef01-234567890abc + "400": + description: Bad request + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/400Response" + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/401Response" + "404": + description: Not found + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/404Response" + "500": + description: Internal server error + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/500Response" + delete: + summary: Delete a notification preference by ID + tags: + - Notification Preferences + responses: + "204": + description: No content + "400": + description: Bad request + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/400Response" + "401": + description: Unauthorized + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/401Response" + "404": + description: Not found + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/404Response" + "500": + description: Internal server error + content: + application/json: + schema: + type: object + $ref: "#/components/schemas/500Response" /notificationcategories: get: tags: @@ -1285,6 +1451,40 @@ components: type: string format: uuid example: 30b32657-1ba1-44e0-8868-4db807695387 + PostNotificationPreferenceRequest: + type: object + properties: + eventTypeChannelId: + type: string + format: uuid + example: 22a9ab1cb-b1a3-482e-bae3-9a517a8cfb4f + resourceIdentifier: + type: string + format: uuid + example: d4e5f678-49ab-bcde-2345-678901bcdef0 + required: + - eventTypeChannelId + PostNotificationPreferenceResponse: + type: object + properties: + notificationPreferenceId: + type: string + format: uuid + example: d4e5f678-49ab-bcde-2345-678901bcdef0 + PatchNotificationPreferenceRequest: + type: object + properties: + resourceIdentifier: + type: string + format: uuid + example: d4e5f678-49ab-bcde-2345-678901bcdef0 + PatchNotificationPreferenceResponse: + type: object + properties: + notificationPreferenceId: + type: string + format: uuid + example: d4e5f678-49ab-bcde-2345-678901bcdef0 GetEventOriginsResponse: type: object properties: