From f63fbe1c9a9f968de50465506c47eba345a20a0f Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Wed, 29 Oct 2025 17:49:37 +0100 Subject: [PATCH 1/2] OVPAY-94 - Updated to Maileon MVP. --- src/openapi/customers/notifications-crud.yaml | 238 ++---------------- 1 file changed, 19 insertions(+), 219 deletions(-) diff --git a/src/openapi/customers/notifications-crud.yaml b/src/openapi/customers/notifications-crud.yaml index 2330cd6..6e53439 100644 --- a/src/openapi/customers/notifications-crud.yaml +++ b/src/openapi/customers/notifications-crud.yaml @@ -19,57 +19,18 @@ paths: type: string format: uuid description: Filter by notification subscription ID - - name: eventTypeChannelId + - name: notificationCategoryId in: query required: false schema: - type: string - format: uuid - description: Filter by event type channel ID - - name: eventTypeId - in: query - required: false - schema: - type: array - items: - type: integer - explode: false - description: Filter by event type IDs - - name: eventOriginId - in: query - required: false - schema: - type: array - items: - type: integer - description: Filter by event origin IDs - - name: channelId - in: query - required: false - schema: - type: array - items: - type: integer - description: Filter by channel IDs + type: integer + description: Filter by notification category ID - name: customerProfileId in: query required: false schema: type: integer description: Filter by customer profile ID - - name: ovpayTokenId - in: query - required: false - schema: - type: integer - description: Filter by OVPay token ID - # - name: deviceId - # in: query - # required: false - # schema: - # type: string - # format: uuid - # description: Filter by device ID - name: isCurrentlyActive in: query required: false @@ -95,100 +56,14 @@ paths: value: notificationSubscriptions: [] href: null - minimalNotificationSubscriptionResponse: - value: - notificationSubscriptions: - - notificationSubscriptionId: 5bedce29-af0c-4f3c-b182-2caa8a1f9377 - eventTypeChannel: - eventTypeChannelId: 22a9ab1cb-b1a3-482e-bae3-9a517a8cfb4f - eventType: - eventTypeId: 15 - eventOrigin: - eventOriginId: 1 - name: GBO - description: Events originated at GBO - name: Travel - subname: Missing CKO - prettyName: Checkout gemist - optInRequired: true - channel: - channelId: 1 - name: push - isDefault: true - isMandatory: false - customerProfileId: null - ovpayTokenId: null - # deviceId: null - subscriptionActivities: - - subscriptionActivityId: 579405e3-e7e2-433a-874d-2a129fd10183 - user: "1001337" - timestamp: "2025-10-02T14:00:00Z" - isActive: true - _links: - edit: - href: /notificationsubscriptions/5bedce29-af0c-4f3c-b182-2caa8a1f9377 - method: PATCH - delete: - href: /notificationsubscriptions/5bedce29-af0c-4f3c-b182-2caa8a1f9377 - method: DELETE - - notificationSubscriptionId: 39e8d8e6-5c85-49b6-ba4b-62e47fa4f7fd - eventTypeChannel: - eventTypeChannelId: c4729ad4-46ef-4329-94f9-5079be21dfc5 - eventType: - eventTypeId: 16 - eventOrigin: - eventOriginId: 1 - name: GBO - description: Events originated at GBO - name: Travel - subname: Missing CKI - prettyName: Checkin gemist - optInRequired: true - channel: - channelId: 1 - name: push - isDefault: true - isMandatory: false - customerProfileId: null - ovpayTokenId: null - # deviceId: null - subscriptionActivities: - - subscriptionActivityId: 90353a1d-c5bd-44c2-aa75-57873b8071c8 - user: "1001338" - timestamp: "2025-10-02T14:00:00Z" - isActive: false - _links: - edit: - href: /notificationsubscriptions/39e8d8e6-5c85-49b6-ba4b-62e47fa4f7fd - method: PATCH - delete: - href: /notificationsubscriptions/39e8d8e6-5c85-49b6-ba4b-62e47fa4f7fd - method: DELETE - href: null fullNotificationSubscriptionResponse: value: notificationSubscriptions: - notificationSubscriptionId: 5bedce29-af0c-4f3c-b182-2caa8a1f9377 - eventTypeChannel: - eventTypeChannelId: 22a9ab1cb-b1a3-482e-bae3-9a517a8cfb4f - eventType: - eventTypeId: 15 - eventOrigin: - eventOriginId: 1 - name: GBO - description: Events originated at GBO - name: Travel - subname: Missing CKO - prettyName: Checkout gemist - optInRequired: true - channel: - channelId: 1 - name: push - isDefault: true - isMandatory: false + notifcationCategory: + notifcationCategoryId: 1 + name: Mijn Reizen customerProfileId: 1337 - ovpayTokenId: 42 - # deviceId: 7122a988-a00a-417d-a5b4-da2d91354976 subscriptionActivities: - subscriptionActivityId: 30b32657-1ba1-44e0-8868-4db807695387 user: "1001337" @@ -206,26 +81,10 @@ paths: href: /notificationsubscriptions/5bedce29-af0c-4f3c-b182-2caa8a1f9377 method: DELETE - notificationSubscriptionId: 39e8d8e6-5c85-49b6-ba4b-62e47fa4f7fd - eventTypeChannel: - eventTypeChannelId: c4729ad4-46ef-4329-94f9-5079be21dfc5 - eventType: - eventTypeId: 16 - eventOrigin: - eventOriginId: 1 - name: GBO - description: Events originated at GBO - name: Travel - subname: Missing CKI - prettyName: Checkin gemist - optInRequired: true - channel: - channelId: 1 - name: push - isDefault: true - isMandatory: false + notifcationCategory: + notifcationCategoryId: 2 + name: Mijn Passen customerProfileId: 1338 - ovpayTokenId: 43 - # deviceId: c4b8e1f3-8f4e-4d2a-9f3e-1c2b3a4d5e6f subscriptionActivities: - subscriptionActivityId: 7fae0d2c-1e20-4f3e-b25d-fd8505a381c4 user: "1001338" @@ -282,29 +141,14 @@ paths: schema: $ref: "#/components/schemas/PostNotificationSubscriptionRequest" examples: - minimalNotificationSubscriptionRequest: - value: - eventTypeChannelId: 22a9ab1cb-b1a3-482e-bae3-9a517a8cfb4f - subscriptionActivities: [ - { - user: "1001337", - timestamp: "2025-10-02T14:00:00Z", - isActive: true - } - ] fullNotificationSubscriptionRequest: value: - eventTypeChannelId: 22a9ab1cb-b1a3-482e-bae3-9a517a8cfb4f + notifcationCategoryId: 1 customerProfileId: 1337 - ovpayTokenId: 42 - # deviceId: 7122a988-a00a-417d-a5b4-da2d91354976 - subscriptionActivities: [ - { - user: "1001337", - timestamp: "2025-10-02T14:00:00Z", - isActive: true - } - ] + subscriptionActivities: + - user: "1001337" + timestamp: "2025-10-02T14:00:00Z" + isActive: true, responses: "201": description: Notification subscription created successfully @@ -313,62 +157,18 @@ paths: schema: $ref: "#/components/schemas/PostNotificationSubscriptionResponse" examples: - minimalNotificationSubscriptionResponse: - value: - notificationSubscriptionId: 5bedce29-af0c-4f3c-b182-2caa8a1f9377 - eventTypeChannel: - eventTypeChannelId: 22a9ab1cb-b1a3-482e-bae3-9a517a8cfb4f - eventType: - eventTypeId: 15 - eventOrigin: - eventOriginId: 1 - name: GBO - description: Events originated at GBO - name: Travel - subname: Missing CKO - prettyName: Checkout gemist - optInRequired: true - channel: - channelId: 1 - name: push - isDefault: true - isMandatory: false - customerProfileId: null - ovpayTokenId: null - # deviceId: null - subscriptionActivities: - - subscriptionActivityId: 90353a1d-c5bd-44c2-aa75-57873b8071c8 - user: "1001338" - timestamp: "2025-10-02T14:00:00Z" - isActive: false fullNotificationSubscriptionResponse: value: notificationSubscriptionId: 5bedce29-af0c-4f3c-b182-2caa8a1f9377 - eventTypeChannel: - eventTypeChannelId: 22a9ab1cb-b1a3-482e-bae3-9a517a8cfb4f - eventType: - eventTypeId: 15 - eventOrigin: - eventOriginId: 1 - name: GBO - description: Events originated at GBO - name: Travel - subname: Missing CKO - prettyName: Checkout gemist - optInRequired: true - channel: - channelId: 1 - name: push - isDefault: true - isMandatory: false + notifcationCategory: + notifcationCategoryId: 1 + name: Mijn Reizen customerProfileId: 1337 - ovpayTokenId: 42 - # deviceId: 7122a988-a00a-417d-a5b4-da2d91354976 subscriptionActivities: - subscriptionActivityId: 90353a1d-c5bd-44c2-aa75-57873b8071c8 - user: "1001338" + user: "1001337" timestamp: "2025-10-02T14:00:00Z" - isActive: false + isActive: true "400": description: Bad request content: From 81b3a0c96d98a208d4c62b41525e7cfcf41ea2e1 Mon Sep 17 00:00:00 2001 From: "b.boterman@htm.nl" Date: Wed, 29 Oct 2025 17:51:31 +0100 Subject: [PATCH 2/2] OVPAY-94 - Updated schemas. --- src/openapi/customers/notifications-crud.yaml | 31 ++++++------------- 1 file changed, 9 insertions(+), 22 deletions(-) diff --git a/src/openapi/customers/notifications-crud.yaml b/src/openapi/customers/notifications-crud.yaml index 6e53439..c54cc8f 100644 --- a/src/openapi/customers/notifications-crud.yaml +++ b/src/openapi/customers/notifications-crud.yaml @@ -779,18 +779,11 @@ components: type: string format: uuid example: 5bedce29-af0c-4f3c-b182-2caa8a1f9377 - eventTypeChannel: - $ref: "#/components/schemas/EventTypeChannel" + notifcationCategory: + $ref: "#/components/schemas/NotificationCategory" customerProfileId: type: integer example: 1337 - ovpayTokenId: - type: integer - example: 42 - # deviceId: - # type: string - # format: uuid - # example: 7122a988-a00a-417d-a5b4-da2d91354976 subscriptionActivities: type: array items: @@ -817,24 +810,17 @@ components: - isActive required: - notificationSubscriptionId - - eventTypeChannel + - notifcationCategory + - customerProfileId PostNotificationSubscriptionRequest: type: object properties: - eventTypeChannelId: - type: string - format: uuid - example: 22a9ab1cb-b1a3-482e-bae3-9a517a8cfb4f + notifcationCategoryId: + type: integer + example: 1 customerProfileId: type: integer example: 1337 - ovpayTokenId: - type: integer - example: 42 - # deviceId: - # type: string - # format: uuid - # example: 7122a988-a00a-417d-a5b4-da2d91354976 subscriptionActivities: type: array items: @@ -855,7 +841,8 @@ components: - timestamp - isActive required: - - eventTypeChannelId + - notifcationCategoryId + - customerProfileId PostNotificationSubscriptionResponse: $ref: "#/components/schemas/NotificationSubscription" PostSubscriptionActivityRequest: