Compare commits
2 Commits
develop
...
feature/OV
| Author | SHA1 | Date | |
|---|---|---|---|
| 80c9fe7599 | |||
| e6b2146706 |
@ -31,12 +31,6 @@ paths:
|
|||||||
schema:
|
schema:
|
||||||
type: integer
|
type: integer
|
||||||
description: Filter by customer profile ID
|
description: Filter by customer profile ID
|
||||||
- name: ovPayTokenId
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
schema:
|
|
||||||
type: integer
|
|
||||||
description: Filter by OV Pay token ID
|
|
||||||
- name: isCurrentlyActive
|
- name: isCurrentlyActive
|
||||||
in: query
|
in: query
|
||||||
required: false
|
required: false
|
||||||
@ -50,13 +44,6 @@ paths:
|
|||||||
type: integer
|
type: integer
|
||||||
default: 1
|
default: 1
|
||||||
description: Limit the number of subscription activities returned per subscription (default is 1)
|
description: Limit the number of subscription activities returned per subscription (default is 1)
|
||||||
- name: expand
|
|
||||||
in: query
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
enum: [none, notificationPreference, eventTypeChannel]
|
|
||||||
default: none
|
|
||||||
description: "Expand nested attributes. Possible values: `none`, `notificationPreference`, and `eventTypeChannel`."
|
|
||||||
responses:
|
responses:
|
||||||
"200":
|
"200":
|
||||||
description: A list of notification subscriptions
|
description: A list of notification subscriptions
|
||||||
@ -66,21 +53,17 @@ paths:
|
|||||||
$ref: "#/components/schemas/GetNotificationSubscriptionsResponse"
|
$ref: "#/components/schemas/GetNotificationSubscriptionsResponse"
|
||||||
examples:
|
examples:
|
||||||
emptyNotificationSubscriptionResponse:
|
emptyNotificationSubscriptionResponse:
|
||||||
summary: No notification subscriptions found
|
|
||||||
value:
|
value:
|
||||||
notificationSubscriptions: []
|
notificationSubscriptions: []
|
||||||
href: null
|
href: null
|
||||||
notificationSubscriptionResponse?expand=none:
|
fullNotificationSubscriptionResponse:
|
||||||
summary: Return notification subscriptions without nested attributes (expand=none)
|
|
||||||
value:
|
value:
|
||||||
notificationSubscriptions:
|
notificationSubscriptions:
|
||||||
- notificationSubscriptionId: 5bedce29-af0c-4f3c-b182-2caa8a1f9377
|
- notificationSubscriptionId: 5bedce29-af0c-4f3c-b182-2caa8a1f9377
|
||||||
notificationCategory:
|
notificationCategory:
|
||||||
notificationCategoryId: 1
|
notificationCategoryId: 1
|
||||||
name: Mijn Reizen
|
name: Mijn Reizen
|
||||||
groupName: Mijn Passen
|
|
||||||
customerProfileId: 1337
|
customerProfileId: 1337
|
||||||
ovPayTokenId: 42
|
|
||||||
subscriptionActivities:
|
subscriptionActivities:
|
||||||
- subscriptionActivityId: 30b32657-1ba1-44e0-8868-4db807695387
|
- subscriptionActivityId: 30b32657-1ba1-44e0-8868-4db807695387
|
||||||
user: "1001337"
|
user: "1001337"
|
||||||
@ -94,9 +77,7 @@ paths:
|
|||||||
notificationCategory:
|
notificationCategory:
|
||||||
notificationCategoryId: 2
|
notificationCategoryId: 2
|
||||||
name: Nieuwsbrief aanmelding
|
name: Nieuwsbrief aanmelding
|
||||||
groupName: Marketing
|
|
||||||
customerProfileId: 1338
|
customerProfileId: 1338
|
||||||
ovPayTokenId: null
|
|
||||||
subscriptionActivities:
|
subscriptionActivities:
|
||||||
- subscriptionActivityId: 7fae0d2c-1e20-4f3e-b25d-fd8505a381c4
|
- subscriptionActivityId: 7fae0d2c-1e20-4f3e-b25d-fd8505a381c4
|
||||||
user: "1001338"
|
user: "1001338"
|
||||||
@ -107,113 +88,6 @@ paths:
|
|||||||
timestamp: "2025-10-02T14:00:00Z"
|
timestamp: "2025-10-02T14:00:00Z"
|
||||||
isActive: true
|
isActive: true
|
||||||
href: null
|
href: null
|
||||||
notificationSubscriptionResponse?expand=notificationPreference:
|
|
||||||
summary: Return notification subscriptions with nested notification preferences (expand=notificationPreference)
|
|
||||||
value:
|
|
||||||
notificationSubscriptions:
|
|
||||||
- notificationSubscriptionId: 5bedce29-af0c-4f3c-b182-2caa8a1f9377
|
|
||||||
notificationCategory:
|
|
||||||
notificationCategoryId: 1
|
|
||||||
name: Mijn Reizen
|
|
||||||
groupName: Mijn Passen
|
|
||||||
customerProfileId: 1337
|
|
||||||
ovPayTokenId: 42
|
|
||||||
subscriptionActivities:
|
|
||||||
- subscriptionActivityId: 30b32657-1ba1-44e0-8868-4db807695387
|
|
||||||
user: "1001337"
|
|
||||||
timestamp: "2025-10-02T15:00:00Z"
|
|
||||||
isActive: true
|
|
||||||
- subscriptionActivityId: f78bc171-a50e-4b88-88d3-a76585bffd54
|
|
||||||
user: "1001337"
|
|
||||||
timestamp: "2025-10-02T14:00:00Z"
|
|
||||||
isActive: false
|
|
||||||
notificationPreferences:
|
|
||||||
- notificationPreferenceId: d4e5f6a7-b8c9-40d1-ef01-234567890abc
|
|
||||||
eventTypeChannelId: ccc8c025-06b5-4928-a632-23e1c55cd173
|
|
||||||
resourceIdentifier: null
|
|
||||||
- notificationPreferenceId: e5f6a7b8-c9d0-41e2-f012-34567890abcd
|
|
||||||
eventTypeChannelId: da2deb4c-ce77-4b5f-aecc-ddebfd14349d
|
|
||||||
resourceIdentifier: 44
|
|
||||||
- notificationSubscriptionId: 39e8d8e6-5c85-49b6-ba4b-62e47fa4f7fd
|
|
||||||
notificationCategory:
|
|
||||||
notificationCategoryId: 2
|
|
||||||
name: Nieuwsbrief aanmelding
|
|
||||||
groupName: Marketing
|
|
||||||
customerProfileId: 1338
|
|
||||||
ovPayTokenId: null
|
|
||||||
subscriptionActivities:
|
|
||||||
- subscriptionActivityId: 7fae0d2c-1e20-4f3e-b25d-fd8505a381c4
|
|
||||||
user: "1001338"
|
|
||||||
timestamp: "2025-10-02T15:00:00Z"
|
|
||||||
isActive: false
|
|
||||||
- subscriptionActivityId: cb2fc1d3-f143-4dd7-8608-4538e5637e3a
|
|
||||||
user: "1001338"
|
|
||||||
timestamp: "2025-10-02T14:00:00Z"
|
|
||||||
isActive: true
|
|
||||||
notificationPreferences: []
|
|
||||||
href: null
|
|
||||||
notificationSubscriptionResponse?expand=eventTypeChannel:
|
|
||||||
summary: Return notification subscriptions with nested event type channels (expand=eventTypeChannel)
|
|
||||||
value:
|
|
||||||
notificationSubscriptions:
|
|
||||||
- notificationSubscriptionId: 5bedce29-af0c-4f3c-b182-2caa8a1f9377
|
|
||||||
notificationCategory:
|
|
||||||
notificationCategoryId: 1
|
|
||||||
name: Mijn Reizen
|
|
||||||
groupName: Mijn Passen
|
|
||||||
customerProfileId: 1337
|
|
||||||
ovPayTokenId: 42
|
|
||||||
subscriptionActivities:
|
|
||||||
- subscriptionActivityId: 30b32657-1ba1-44e0-8868-4db807695387
|
|
||||||
user: "1001337"
|
|
||||||
timestamp: "2025-10-02T15:00:00Z"
|
|
||||||
isActive: true
|
|
||||||
- subscriptionActivityId: f78bc171-a50e-4b88-88d3-a76585bffd54
|
|
||||||
user: "1001337"
|
|
||||||
timestamp: "2025-10-02T14:00:00Z"
|
|
||||||
isActive: false
|
|
||||||
notificationPreferences:
|
|
||||||
- notificationPreferenceId: d4e5f6a7-b8c9-40d1-ef01-234567890abc
|
|
||||||
eventTypeChannel:
|
|
||||||
eventTypeChannelId: ccc8c025-06b5-4928-a632-23e1c55cd173
|
|
||||||
channel:
|
|
||||||
channelId: 1
|
|
||||||
name: push
|
|
||||||
resourceName:
|
|
||||||
resourceNameId: 8
|
|
||||||
name: devices
|
|
||||||
isDefault: true
|
|
||||||
isMandatory: false
|
|
||||||
resourceIdentifier: null
|
|
||||||
- notificationPreferenceId: e5f6a7b8-c9d0-41e2-f012-34567890abcd
|
|
||||||
eventTypeChannelId:
|
|
||||||
eventTypeChannelId: da2deb4c-ce77-4b5f-aecc-ddebfd14349d
|
|
||||||
channel:
|
|
||||||
channelId: 2
|
|
||||||
name: email
|
|
||||||
resourceName:
|
|
||||||
resourceNameId: 4
|
|
||||||
name: customers
|
|
||||||
isDefault: false
|
|
||||||
isMandatory: false
|
|
||||||
resourceIdentifier: 44
|
|
||||||
- notificationSubscriptionId: 39e8d8e6-5c85-49b6-ba4b-62e47fa4f7fd
|
|
||||||
notificationCategory:
|
|
||||||
notificationCategoryId: 2
|
|
||||||
name: Nieuwsbrief aanmelding
|
|
||||||
groupName: Marketing
|
|
||||||
customerProfileId: 1338
|
|
||||||
ovPayTokenId: null
|
|
||||||
subscriptionActivities:
|
|
||||||
- subscriptionActivityId: 7fae0d2c-1e20-4f3e-b25d-fd8505a381c4
|
|
||||||
user: "1001338"
|
|
||||||
timestamp: "2025-10-02T15:00:00Z"
|
|
||||||
isActive: false
|
|
||||||
- subscriptionActivityId: cb2fc1d3-f143-4dd7-8608-4538e5637e3a
|
|
||||||
user: "1001338"
|
|
||||||
timestamp: "2025-10-02T14:00:00Z"
|
|
||||||
isActive: true
|
|
||||||
notificationPreferences: []
|
|
||||||
"400":
|
"400":
|
||||||
description: Bad request
|
description: Bad request
|
||||||
content:
|
content:
|
||||||
@ -301,71 +175,18 @@ paths:
|
|||||||
type: object
|
type: object
|
||||||
$ref: "#/components/schemas/500Response"
|
$ref: "#/components/schemas/500Response"
|
||||||
/notificationsubscriptions/{notificationSubscriptionId}:
|
/notificationsubscriptions/{notificationSubscriptionId}:
|
||||||
parameters:
|
|
||||||
- name: notificationSubscriptionId
|
|
||||||
in: path
|
|
||||||
required: true
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
format: uuid
|
|
||||||
example: 5bedce29-af0c-4f3c-b182-2caa8a1f9377
|
|
||||||
patch:
|
|
||||||
summary: Update a notification subscription by ID
|
|
||||||
tags:
|
|
||||||
- Notification Subscriptions
|
|
||||||
requestBody:
|
|
||||||
required: true
|
|
||||||
content:
|
|
||||||
application/json:
|
|
||||||
schema:
|
|
||||||
$ref: "#/components/schemas/PatchNotificationSubscriptionRequest"
|
|
||||||
examples:
|
|
||||||
updateNotificationSubscriptionRequest:
|
|
||||||
value:
|
|
||||||
ovPayTokenId: 43
|
|
||||||
responses:
|
|
||||||
"200":
|
|
||||||
description: Notification subscription updated successfully
|
|
||||||
content:
|
|
||||||
application/json:
|
|
||||||
schema:
|
|
||||||
$ref: "#/components/schemas/PatchNotificationSubscriptionResponse"
|
|
||||||
examples:
|
|
||||||
updateNotificationSubscriptionResponse:
|
|
||||||
value:
|
|
||||||
notificationSubscriptionId: 5bedce29-af0c-4f3c-b182-2caa8a1f9377
|
|
||||||
"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:
|
delete:
|
||||||
summary: Delete a notification subscription by ID
|
summary: Delete a notification subscription by ID
|
||||||
tags:
|
tags:
|
||||||
- Notification Subscriptions
|
- Notification Subscriptions
|
||||||
|
parameters:
|
||||||
|
- name: notificationSubscriptionId
|
||||||
|
in: path
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
format: uuid
|
||||||
|
example: 5bedce29-af0c-4f3c-b182-2caa8a1f9377
|
||||||
responses:
|
responses:
|
||||||
"204":
|
"204":
|
||||||
description: No content
|
description: No content
|
||||||
@ -461,196 +282,12 @@ paths:
|
|||||||
schema:
|
schema:
|
||||||
type: object
|
type: object
|
||||||
$ref: "#/components/schemas/500Response"
|
$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:
|
/notificationcategories:
|
||||||
get:
|
get:
|
||||||
tags:
|
tags:
|
||||||
- Notification Categories
|
- Notification Categories
|
||||||
summary: Get all notification categories.
|
summary: Get all notification categories.
|
||||||
parameters:
|
parameters:
|
||||||
- name: notificationCategoryId
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
schema:
|
|
||||||
type: integer
|
|
||||||
description: Filter by notification category ID
|
|
||||||
- name: name
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
schema:
|
|
||||||
type: integer
|
|
||||||
description: Filter by notification category name (case-insensitive, partial match)
|
|
||||||
- name: groupName
|
|
||||||
in: query
|
|
||||||
required: false
|
|
||||||
schema:
|
|
||||||
type: integer
|
|
||||||
description: Filter by notification category group name (case-insensitive, partial match)
|
|
||||||
- name: expand
|
- name: expand
|
||||||
in: query
|
in: query
|
||||||
schema:
|
schema:
|
||||||
@ -666,58 +303,41 @@ paths:
|
|||||||
schema:
|
schema:
|
||||||
$ref: "#/components/schemas/GetNotificationCategoriesResponse"
|
$ref: "#/components/schemas/GetNotificationCategoriesResponse"
|
||||||
examples:
|
examples:
|
||||||
emptyNotificationCategoriesResponse:
|
|
||||||
summary: No notification categories found
|
|
||||||
value:
|
|
||||||
notificationCategories: []
|
|
||||||
getNotifactionCategories?expand=none:
|
getNotifactionCategories?expand=none:
|
||||||
summary: Return all the notification categories without nested attributes (expand=none)
|
summary: Return all the notification categories without nested attributes (expand=none)
|
||||||
value:
|
value:
|
||||||
notificationCategories:
|
notificationCategories:
|
||||||
- notificationCategoryId: 1
|
- notificationCategoryId: 1
|
||||||
name: Mijn Reizen
|
name: Mijn Reizen
|
||||||
groupName: Mijn Passen
|
|
||||||
- notificationCategoryId: 2
|
- notificationCategoryId: 2
|
||||||
name: Nieuwsbrief aanmelding
|
name: Nieuwsbrief aanmelding
|
||||||
groupName: Marketing
|
|
||||||
- notificationCategoryId: 3
|
- notificationCategoryId: 3
|
||||||
name: Serviceberichten
|
name: Mijn Passen
|
||||||
groupName: Mijn Passen
|
|
||||||
getNotifactionCategories?expand=eventType:
|
getNotifactionCategories?expand=eventType:
|
||||||
summary: Return all the notification categories with nested event types (expand=eventType)
|
summary: Return all the notification categories with nested event types (expand=eventType)
|
||||||
value:
|
value:
|
||||||
notificationCategories:
|
notificationCategories:
|
||||||
- notificationCategoryId: 1
|
- notificationCategoryId: 1
|
||||||
name: Mijn Reizen
|
name: Mijn Reizen
|
||||||
groupName: Mijn Passen
|
|
||||||
eventTypes:
|
eventTypes:
|
||||||
- eventTypeId: 2
|
- eventTypeId: 2
|
||||||
eventOrigin:
|
eventOrigin:
|
||||||
eventOriginId: 1
|
eventOriginId: 1
|
||||||
name: GBO
|
name: GBO
|
||||||
name: TRIPS
|
name: ALERTS, TRAVEL_SCHEME
|
||||||
subName: CKI
|
subName: CI
|
||||||
prettyName: Normal Check-in
|
prettyName: Check In
|
||||||
optinRequired: false
|
optinRequired: false
|
||||||
originSubscription:
|
|
||||||
originSubscriptionId: a1b2c3d4-e5f6-4789-abcd-1234567890ab
|
|
||||||
name: GBO_TRIPS
|
|
||||||
externalSubscriptionId: fedcba98-7654-3210-fedc-ba9876543210
|
|
||||||
- eventTypeId: 3
|
- eventTypeId: 3
|
||||||
eventOrigin:
|
eventOrigin:
|
||||||
eventOriginId: 1
|
eventOriginId: 1
|
||||||
name: GBO
|
name: GBO
|
||||||
name: PAD
|
name: ALERTS, PAD
|
||||||
subName: AMEND
|
subName: null
|
||||||
prettyName: PAD Wijzigen/Aanvullen
|
prettyName: Profielgegevens op de pas
|
||||||
optinRequired: false
|
optinRequired: false
|
||||||
originSubscription:
|
|
||||||
originSubscriptionId: b2c3d4e5-f678-49ab-bcde-2345678901bc
|
|
||||||
name: GBO_PAD
|
|
||||||
externalSubscriptionId: edcba987-6543-210f-edcb-a9876543210f
|
|
||||||
- notificationCategoryId: 2
|
- notificationCategoryId: 2
|
||||||
name: Nieuwsbrief aanmelding
|
name: Nieuwsbrief aanmelding
|
||||||
groupName: Marketing
|
|
||||||
eventTypes:
|
eventTypes:
|
||||||
- eventTypeId: 1
|
- eventTypeId: 1
|
||||||
eventOrigin:
|
eventOrigin:
|
||||||
@ -727,108 +347,76 @@ paths:
|
|||||||
subName: null
|
subName: null
|
||||||
prettyName: HTM nieuwsbrief
|
prettyName: HTM nieuwsbrief
|
||||||
optinRequired: false
|
optinRequired: false
|
||||||
originSubscription: null
|
|
||||||
- notificationCategoryId: 3
|
- notificationCategoryId: 3
|
||||||
name: Serviceberichten
|
name: Mijn Passen
|
||||||
groupName: Mijn Passen
|
|
||||||
eventTypes:
|
eventTypes:
|
||||||
- eventTypeId: 4
|
- eventTypeId: 4
|
||||||
eventOrigin:
|
eventOrigin:
|
||||||
eventOriginId: 1
|
eventOriginId: 1
|
||||||
name: GBO
|
name: GBO
|
||||||
name: PRODUCT
|
name: ALERTS, CARD
|
||||||
subName: ACTIVATE
|
subName: null
|
||||||
prettyName: Product Geactiveerd
|
prettyName: Mijn passen
|
||||||
optinRequired: false
|
optinRequired: false
|
||||||
originSubscription:
|
|
||||||
originSubscriptionId: f1a2b3c4-d5e6-4789-abcd-3456789012de
|
|
||||||
name: GBO_PRODUCT
|
|
||||||
externalSubscriptionId: 12345678-90ab-cdef-1234-567890abcdef
|
|
||||||
- eventTypeId: 5
|
- eventTypeId: 5
|
||||||
eventOrigin:
|
eventOrigin:
|
||||||
eventOriginId: 1
|
eventOriginId: 1
|
||||||
name: GBO
|
name: GBO
|
||||||
name: PAD
|
name: ALERTS, PAD
|
||||||
subName: MARK
|
subName: null
|
||||||
prettyName: PAD Markering
|
prettyName: Profielgegevens op de pas
|
||||||
optinRequired: false
|
optinRequired: false
|
||||||
originSubscription:
|
|
||||||
originSubscriptionId: b2c3d4e5-f678-49ab-bcde-2345678901bc
|
|
||||||
name: GBO_PAD
|
|
||||||
externalSubscriptionId: edcba987-6543-210f-edcb-a9876543210f
|
|
||||||
getNotifactionCategories?expand=eventTypeChannel:
|
getNotifactionCategories?expand=eventTypeChannel:
|
||||||
summary: Return all the notification categories with all nested attributes (expand=eventTypeChannel)
|
summary: Return all the notification categories with all nested attributes (expand=eventTypeChannel)
|
||||||
value:
|
value:
|
||||||
notificationCategories:
|
notificationCategories:
|
||||||
- notificationCategoryId: 1
|
- notificationCategoryId: 1
|
||||||
name: Mijn Reizen
|
name: Mijn Reizen
|
||||||
groupName: Mijn Passen
|
|
||||||
eventTypes:
|
eventTypes:
|
||||||
- eventTypeId: 2
|
- eventTypeId: 2
|
||||||
eventOrigin:
|
eventOrigin:
|
||||||
eventOriginId: 1
|
eventOriginId: 1
|
||||||
name: GBO
|
name: GBO
|
||||||
name: TRIPS
|
name: ALERTS, TRAVEL_SCHEME
|
||||||
subName: CKI
|
subName: CI
|
||||||
prettyName: Normal Check-in
|
prettyName: Check In
|
||||||
optinRequired: false
|
optinRequired: false
|
||||||
originSubscription:
|
|
||||||
originSubscriptionId: a1b2c3d4-e5f6-4789-abcd-1234567890ab
|
|
||||||
name: GBO_TRIPS
|
|
||||||
externalSubscriptionId: fedcba98-7654-3210-fedc-ba9876543210
|
|
||||||
eventTypeChannels:
|
eventTypeChannels:
|
||||||
- eventTypeChannelId: ccc8c025-06b5-4928-a632-23e1c55cd173
|
- eventTypeChannelId: ccc8c025-06b5-4928-a632-23e1c55cd173
|
||||||
channel:
|
channel:
|
||||||
channelId: 1
|
channelId: 1
|
||||||
name: push
|
name: push
|
||||||
resourceName:
|
|
||||||
resourceNameId: 8
|
|
||||||
name: devices
|
|
||||||
isDefault: true
|
isDefault: true
|
||||||
isMandatory: false
|
isMandatory: false
|
||||||
- eventTypeChannelId: da2deb4c-ce77-4b5f-aecc-ddebfd14349d
|
- eventTypeChannelId: da2deb4c-ce77-4b5f-aecc-ddebfd14349d
|
||||||
channel:
|
channel:
|
||||||
channelId: 2
|
channelId: 2
|
||||||
name: email
|
name: email
|
||||||
resourceName:
|
|
||||||
resourceNameId: 4
|
|
||||||
name: customers
|
|
||||||
isDefault: false
|
isDefault: false
|
||||||
isMandatory: false
|
isMandatory: false
|
||||||
- eventTypeId: 3
|
- eventTypeId: 3
|
||||||
eventOrigin:
|
eventOrigin:
|
||||||
eventOriginId: 1
|
eventOriginId: 1
|
||||||
name: GBO
|
name: GBO
|
||||||
name: PAD
|
name: ALERTS, PAD
|
||||||
subName: AMEND
|
subName: null
|
||||||
prettyName: PAD Wijzigen/Aanvullen
|
prettyName: Profielgegevens op de pas
|
||||||
optinRequired: false
|
optinRequired: false
|
||||||
originSubscription:
|
|
||||||
originSubscriptionId: b2c3d4e5-f678-49ab-bcde-2345678901bc
|
|
||||||
name: GBO_PAD
|
|
||||||
externalSubscriptionId: edcba987-6543-210f-edcb-a9876543210f
|
|
||||||
eventTypeChannels:
|
eventTypeChannels:
|
||||||
- eventTypeChannelId: 8e7df8f1-7e50-482f-8301-d399e75fd432
|
- eventTypeChannelId: 8e7df8f1-7e50-482f-8301-d399e75fd432
|
||||||
channel:
|
channel:
|
||||||
channelId: 1
|
channelId: 1
|
||||||
name: push
|
name: push
|
||||||
resourceName:
|
|
||||||
resourceNameId: 8
|
|
||||||
name: devices
|
|
||||||
isDefault: true
|
isDefault: true
|
||||||
isMandatory: false
|
isMandatory: false
|
||||||
- eventTypeChannelId: 72960a92-1855-469f-9cfd-5d72f57106f2
|
- eventTypeChannelId: 72960a92-1855-469f-9cfd-5d72f57106f2
|
||||||
channel:
|
channel:
|
||||||
channelId: 2
|
channelId: 2
|
||||||
name: email
|
name: email
|
||||||
resourceName:
|
|
||||||
resourceNameId: 4
|
|
||||||
name: customers
|
|
||||||
isDefault: false
|
isDefault: false
|
||||||
isMandatory: false
|
isMandatory: false
|
||||||
- notificationCategoryId: 2
|
- notificationCategoryId: 2
|
||||||
name: Nieuwsbrief aanmelding
|
name: Nieuwsbrief aanmelding
|
||||||
groupName: Marketing
|
|
||||||
eventTypes:
|
eventTypes:
|
||||||
- eventTypeId: 1
|
- eventTypeId: 1
|
||||||
eventOrigin:
|
eventOrigin:
|
||||||
@ -838,81 +426,56 @@ paths:
|
|||||||
subName: null
|
subName: null
|
||||||
prettyName: HTM nieuwsbrief
|
prettyName: HTM nieuwsbrief
|
||||||
optinRequired: false
|
optinRequired: false
|
||||||
originSubscription: null
|
|
||||||
eventTypeChannels:
|
eventTypeChannels:
|
||||||
- eventTypeChannelId: 447a1116-6cd7-4645-8c3d-43237b6186cd
|
- eventTypeChannelId: 447a1116-6cd7-4645-8c3d-43237b6186cd
|
||||||
channel:
|
channel:
|
||||||
channelId: 2
|
channelId: 2
|
||||||
name: email
|
name: email
|
||||||
resourceName:
|
|
||||||
resourceNameId: 4
|
|
||||||
name: customers
|
|
||||||
isDefault: true
|
isDefault: true
|
||||||
isMandatory: false
|
isMandatory: false
|
||||||
- notificationCategoryId: 3
|
- notificationCategoryId: 3
|
||||||
name: Serviceberichten
|
name: Mijn Passen
|
||||||
groupName: Mijn Passen
|
|
||||||
eventTypes:
|
eventTypes:
|
||||||
- eventTypeId: 4
|
- eventTypeId: 4
|
||||||
eventOrigin:
|
eventOrigin:
|
||||||
eventOriginId: 1
|
eventOriginId: 1
|
||||||
name: GBO
|
name: GBO
|
||||||
name: PRODUCT
|
name: ALERTS, CARD
|
||||||
subName: ACTIVATE
|
subName: null
|
||||||
prettyName: Product Geactiveerd
|
prettyName: Mijn passen
|
||||||
optinRequired: false
|
optinRequired: false
|
||||||
originSubscription:
|
|
||||||
originSubscriptionId: f1a2b3c4-d5e6-4789-abcd-3456789012de
|
|
||||||
name: GBO_PRODUCT
|
|
||||||
externalSubscriptionId: 12345678-90ab-cdef-1234-567890abcdef
|
|
||||||
eventTypeChannels:
|
eventTypeChannels:
|
||||||
- eventTypeChannelId: be07c7bb-714b-4637-acf5-a67025ad8e60
|
- eventTypeChannelId: be07c7bb-714b-4637-acf5-a67025ad8e60
|
||||||
channel:
|
channel:
|
||||||
channelId: 1
|
channelId: 1
|
||||||
name: push
|
name: push
|
||||||
resourceName:
|
|
||||||
resourceNameId: 8
|
|
||||||
name: devices
|
|
||||||
isDefault: true
|
isDefault: true
|
||||||
isMandatory: false
|
isMandatory: false
|
||||||
- eventTypeChannelId: 0c797b5a-ed34-494b-8c64-0a832830d392
|
- eventTypeChannelId: 0c797b5a-ed34-494b-8c64-0a832830d392
|
||||||
channel:
|
channel:
|
||||||
channelId: 2
|
channelId: 2
|
||||||
name: email
|
name: email
|
||||||
resourceName:
|
|
||||||
resourceNameId: 4
|
|
||||||
name: customers
|
|
||||||
isDefault: false
|
isDefault: false
|
||||||
isMandatory: false
|
isMandatory: false
|
||||||
- eventTypeId: 5
|
- eventTypeId: 5
|
||||||
eventOrigin:
|
eventOrigin:
|
||||||
eventOriginId: 1
|
eventOriginId: 1
|
||||||
name: GBO
|
name: GBO
|
||||||
name: PAD
|
name: ALERTS, PAD
|
||||||
subName: MARK
|
subName: null
|
||||||
prettyName: PAD Markering
|
prettyName: Profielgegevens op de pas
|
||||||
optinRequired: false
|
optinRequired: false
|
||||||
originSubscription:
|
|
||||||
originSubscriptionId: b2c3d4e5-f678-49ab-bcde-2345678901bc
|
|
||||||
name: GBO_PAD
|
|
||||||
externalSubscriptionId: edcba987-6543-210f-edcb-a9876543210f
|
|
||||||
eventTypeChannels:
|
eventTypeChannels:
|
||||||
- eventTypeChannelId: b910368f-c045-4e8e-b01d-bcbc78708bac
|
- eventTypeChannelId: b910368f-c045-4e8e-b01d-bcbc78708bac
|
||||||
channel:
|
channel:
|
||||||
channelId: 1
|
channelId: 1
|
||||||
name: push
|
name: push
|
||||||
resourceName:
|
|
||||||
resourceNameId: 8
|
|
||||||
name: devices
|
|
||||||
isDefault: true
|
isDefault: true
|
||||||
isMandatory: false
|
isMandatory: false
|
||||||
- eventTypeChannelId: 93e773da-ba3b-48da-9a0e-ee478eaa752f
|
- eventTypeChannelId: 93e773da-ba3b-48da-9a0e-ee478eaa752f
|
||||||
channel:
|
channel:
|
||||||
channelId: 2
|
channelId: 2
|
||||||
name: email
|
name: email
|
||||||
resourceName:
|
|
||||||
resourceNameId: 4
|
|
||||||
name: customers
|
|
||||||
isDefault: false
|
isDefault: false
|
||||||
isMandatory: false
|
isMandatory: false
|
||||||
"400":
|
"400":
|
||||||
@ -1033,24 +596,12 @@ paths:
|
|||||||
channels:
|
channels:
|
||||||
- channelId: 1
|
- channelId: 1
|
||||||
name: push
|
name: push
|
||||||
resourceName:
|
|
||||||
resourceNameId: 8
|
|
||||||
name: devices
|
|
||||||
- channelId: 2
|
- channelId: 2
|
||||||
name: email
|
name: email
|
||||||
resourceName:
|
|
||||||
resourceNameId: 4
|
|
||||||
name: customers
|
|
||||||
- channelId: 3
|
- channelId: 3
|
||||||
name: sms
|
name: sms
|
||||||
resourceName:
|
|
||||||
resourceNameId: 4
|
|
||||||
name: customers
|
|
||||||
- channelId: 4
|
- channelId: 4
|
||||||
name: mail
|
name: mail
|
||||||
resourceName:
|
|
||||||
resourceNameId: 4
|
|
||||||
name: customers
|
|
||||||
"400":
|
"400":
|
||||||
description: Bad request
|
description: Bad request
|
||||||
content:
|
content:
|
||||||
@ -1199,7 +750,6 @@ paths:
|
|||||||
notificationCategory:
|
notificationCategory:
|
||||||
notificationCategoryId: 1
|
notificationCategoryId: 1
|
||||||
name: Mijn Reizen
|
name: Mijn Reizen
|
||||||
groupName: Mijn Passen
|
|
||||||
- eventType:
|
- eventType:
|
||||||
eventTypeId: 16
|
eventTypeId: 16
|
||||||
eventOrigin:
|
eventOrigin:
|
||||||
@ -1212,7 +762,6 @@ paths:
|
|||||||
notificationCategory:
|
notificationCategory:
|
||||||
notificationCategoryId: 1
|
notificationCategoryId: 1
|
||||||
name: Mijn Reizen
|
name: Mijn Reizen
|
||||||
groupName: Mijn Passen
|
|
||||||
"400":
|
"400":
|
||||||
description: Bad request
|
description: Bad request
|
||||||
content:
|
content:
|
||||||
@ -1278,9 +827,6 @@ paths:
|
|||||||
channel:
|
channel:
|
||||||
channelId: 1
|
channelId: 1
|
||||||
name: push
|
name: push
|
||||||
resourceName:
|
|
||||||
resourceNameId: 8
|
|
||||||
name: devices
|
|
||||||
isDefault: true
|
isDefault: true
|
||||||
isMandatory: false
|
isMandatory: false
|
||||||
- eventTypeChannelId: c4729ad4-46ef-4329-94f9-5079be21dfc5
|
- eventTypeChannelId: c4729ad4-46ef-4329-94f9-5079be21dfc5
|
||||||
@ -1296,9 +842,6 @@ paths:
|
|||||||
channel:
|
channel:
|
||||||
channelId: 1
|
channelId: 1
|
||||||
name: push
|
name: push
|
||||||
resourceName:
|
|
||||||
resourceNameId: 8
|
|
||||||
name: devices
|
|
||||||
isDefault: true
|
isDefault: true
|
||||||
isMandatory: false
|
isMandatory: false
|
||||||
"400":
|
"400":
|
||||||
@ -1419,24 +962,6 @@ components:
|
|||||||
type: string
|
type: string
|
||||||
format: uuid
|
format: uuid
|
||||||
example: 5bedce29-af0c-4f3c-b182-2caa8a1f9377
|
example: 5bedce29-af0c-4f3c-b182-2caa8a1f9377
|
||||||
PatchNotificationSubscriptionRequest:
|
|
||||||
type: object
|
|
||||||
properties:
|
|
||||||
notificationCategoryId:
|
|
||||||
type: integer
|
|
||||||
example: 1
|
|
||||||
customerProfileId:
|
|
||||||
type: integer
|
|
||||||
example: 1337
|
|
||||||
required:
|
|
||||||
- notificationCategoryId
|
|
||||||
PatchNotificationSubscriptionResponse:
|
|
||||||
type: object
|
|
||||||
properties:
|
|
||||||
notificationSubscriptionId:
|
|
||||||
type: string
|
|
||||||
format: uuid
|
|
||||||
example: 5bedce29-af0c-4f3c-b182-2caa8a1f9377
|
|
||||||
PostSubscriptionActivityRequest:
|
PostSubscriptionActivityRequest:
|
||||||
type: object
|
type: object
|
||||||
properties:
|
properties:
|
||||||
@ -1461,40 +986,6 @@ components:
|
|||||||
type: string
|
type: string
|
||||||
format: uuid
|
format: uuid
|
||||||
example: 30b32657-1ba1-44e0-8868-4db807695387
|
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:
|
GetEventOriginsResponse:
|
||||||
type: object
|
type: object
|
||||||
properties:
|
properties:
|
||||||
@ -1585,24 +1076,6 @@ components:
|
|||||||
optInRequired:
|
optInRequired:
|
||||||
type: boolean
|
type: boolean
|
||||||
example: true
|
example: true
|
||||||
originSubscription:
|
|
||||||
type: object
|
|
||||||
properties:
|
|
||||||
originSubscriptionId:
|
|
||||||
type: string
|
|
||||||
format: uuid
|
|
||||||
example: a1b2c3d4-e5f6-4789-abcd-1234567890ab
|
|
||||||
name:
|
|
||||||
type: string
|
|
||||||
example: GBO_TRIPS
|
|
||||||
externalSubscriptionId:
|
|
||||||
type: string
|
|
||||||
format: uuid
|
|
||||||
example: fedcba98-7654-3210-fedc-ba9876543210
|
|
||||||
required:
|
|
||||||
- originSubscriptionId
|
|
||||||
- name
|
|
||||||
- externalSubscriptionId
|
|
||||||
eventTypeChannels:
|
eventTypeChannels:
|
||||||
type: array
|
type: array
|
||||||
items:
|
items:
|
||||||
@ -1634,22 +1107,9 @@ components:
|
|||||||
name:
|
name:
|
||||||
type: string
|
type: string
|
||||||
example: push
|
example: push
|
||||||
resourceName:
|
|
||||||
type: object
|
|
||||||
properties:
|
|
||||||
resourceNameId:
|
|
||||||
type: integer
|
|
||||||
example: 8
|
|
||||||
name:
|
|
||||||
type: string
|
|
||||||
example: devices
|
|
||||||
required:
|
|
||||||
- resourceNameId
|
|
||||||
- name
|
|
||||||
required:
|
required:
|
||||||
- channelId
|
- channelId
|
||||||
- name
|
- name
|
||||||
- resourceName
|
|
||||||
NotificationCategory:
|
NotificationCategory:
|
||||||
type: object
|
type: object
|
||||||
properties:
|
properties:
|
||||||
@ -1659,9 +1119,6 @@ components:
|
|||||||
name:
|
name:
|
||||||
type: string
|
type: string
|
||||||
example: Mijn Reizen
|
example: Mijn Reizen
|
||||||
groupName:
|
|
||||||
type: string
|
|
||||||
example: Mijn Passen
|
|
||||||
eventTypes:
|
eventTypes:
|
||||||
type: array
|
type: array
|
||||||
items:
|
items:
|
||||||
|
|||||||
@ -1009,8 +1009,6 @@ paths:
|
|||||||
"value": "vlad.harkonnen@househarkonnen.net",
|
"value": "vlad.harkonnen@househarkonnen.net",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
"fromInclusive": "2024-10-04T12:34:56.000",
|
|
||||||
"untilInclusive": "2025-10-04T12:34:56.000",
|
|
||||||
}
|
}
|
||||||
responses:
|
responses:
|
||||||
"201":
|
"201":
|
||||||
@ -1106,8 +1104,6 @@ paths:
|
|||||||
"value": "vlad.harkonnen@househarkonnen.net",
|
"value": "vlad.harkonnen@househarkonnen.net",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
"fromInclusive": "2024-10-04T12:34:56.000",
|
|
||||||
"untilInclusive": "2025-10-04T12:34:56.000",
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
@ -1185,266 +1181,262 @@ paths:
|
|||||||
Create Single Purchased GBO Product:
|
Create Single Purchased GBO Product:
|
||||||
value:
|
value:
|
||||||
{
|
{
|
||||||
"purchasedProducts":
|
"purchasedProducts":[
|
||||||
[
|
{
|
||||||
{
|
"productId": 11,
|
||||||
"productId": 11,
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
||||||
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
"purchasedProductResources":
|
||||||
"purchasedProductResources":
|
[
|
||||||
[
|
{
|
||||||
{
|
"resourceNameId": 1,
|
||||||
"resourceNameId": 1,
|
"resourceIdentifier": "408eefa9-b393-4bb3-8439-b2e51833abc7",
|
||||||
"resourceIdentifier": "408eefa9-b393-4bb3-8439-b2e51833abc7",
|
},
|
||||||
},
|
{
|
||||||
{
|
"resourceNameId": 2,
|
||||||
"resourceNameId": 2,
|
"resourceIdentifier": "f809a6e1-1c8d-4f8e-8a6e-0d0b1e1e1e1e",
|
||||||
"resourceIdentifier": "f809a6e1-1c8d-4f8e-8a6e-0d0b1e1e1e1e",
|
},
|
||||||
},
|
],
|
||||||
],
|
"purchasedGboProducts":
|
||||||
"purchasedGboProducts":
|
[
|
||||||
[
|
{
|
||||||
{
|
"salesTimestamp": "2024-10-04T12:34:56.000",
|
||||||
"salesTimestamp": "2024-10-04T12:34:56.000",
|
"refundTimestamp": "2024-10-04T12:34:56.000",
|
||||||
"refundTimestamp": "2024-10-04T12:34:56.000",
|
"fromInclusive": "2024-10-04T12:34:56.000",
|
||||||
"fromInclusive": "2024-10-04T12:34:56.000",
|
"untilInclusive": "2024-10-04T12:34:56.000",
|
||||||
"untilInclusive": "2024-10-04T12:34:56.000",
|
"packageTemplateId": "30003",
|
||||||
"packageTemplateId": "30003",
|
"xBot": "f15efe6f-7353-4968-b134-60ba6fc2da8b",
|
||||||
"xBot": "f15efe6f-7353-4968-b134-60ba6fc2da8b",
|
"xTat": "42efebf7-132e-4ee0-9cbb-4037a9a54ad8",
|
||||||
"xTat": "42efebf7-132e-4ee0-9cbb-4037a9a54ad8",
|
"xSpit": "d67b2f72-918a-4e6c-957d-a39ed9c9e16b",
|
||||||
"xSpit": "d67b2f72-918a-4e6c-957d-a39ed9c9e16b",
|
"customerTokenId": "b6492322-c458-4857-9ac3-a109c1887b9f",
|
||||||
"customerTokenId": "b6492322-c458-4857-9ac3-a109c1887b9f",
|
"ovPayTokenId": 13,
|
||||||
"ovPayTokenId": 13,
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
||||||
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
"createdBy": "someuser",
|
||||||
"createdBy": "someuser",
|
"lastUpdatedBy": null,
|
||||||
"lastUpdatedBy": null,
|
},
|
||||||
},
|
],
|
||||||
],
|
"purchasedTapconnectTickets": [],
|
||||||
"purchasedTapconnectTickets": [],
|
"issuedVouchers": [],
|
||||||
"issuedVouchers": [],
|
}
|
||||||
},
|
]
|
||||||
],
|
|
||||||
}
|
}
|
||||||
Create Single Purchased TapConnet Ticket:
|
Create Single Purchased TapConnet Ticket:
|
||||||
value:
|
value:
|
||||||
{
|
{
|
||||||
"purchasedProducts":
|
"purchasedProducts":[
|
||||||
[
|
{
|
||||||
{
|
"productId": 11,
|
||||||
"productId": 11,
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
||||||
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
"purchasedProductResources":
|
||||||
"purchasedProductResources":
|
[
|
||||||
[
|
{
|
||||||
{
|
"resourceNameId": 1,
|
||||||
"resourceNameId": 1,
|
"resourceIdentifier": "408eefa9-b393-4bb3-8439-b2e51833abc7",
|
||||||
"resourceIdentifier": "408eefa9-b393-4bb3-8439-b2e51833abc7",
|
},
|
||||||
},
|
{
|
||||||
{
|
"resourceNameId": 2,
|
||||||
"resourceNameId": 2,
|
"resourceIdentifier": "f809a6e1-1c8d-4f8e-8a6e-0d0b1e1e1e1e",
|
||||||
"resourceIdentifier": "f809a6e1-1c8d-4f8e-8a6e-0d0b1e1e1e1e",
|
},
|
||||||
},
|
],
|
||||||
],
|
"purchasedGboProducts": [],
|
||||||
"purchasedGboProducts": [],
|
"purchasedTapconnectTickets":
|
||||||
"purchasedTapconnectTickets":
|
[
|
||||||
[
|
{
|
||||||
{
|
"issuedAt": "2024-10-04T12:34:56.000",
|
||||||
"issuedAt": "2024-10-04T12:34:56.000",
|
"activatedAt": "2024-10-04T12:34:56.000",
|
||||||
"activatedAt": "2024-10-04T12:34:56.000",
|
"cancelledAt": null,
|
||||||
"cancelledAt": null,
|
"ticketReference": "KJj43nejhbTxhr897287",
|
||||||
"ticketReference": "KJj43nejhbTxhr897287",
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
||||||
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
"createdBy": "user",
|
||||||
"createdBy": "user",
|
"lastUpdatedBy": "user",
|
||||||
"lastUpdatedBy": "user",
|
},
|
||||||
},
|
],
|
||||||
],
|
"issuedVouchers": [],
|
||||||
"issuedVouchers": [],
|
}
|
||||||
},
|
]
|
||||||
],
|
|
||||||
}
|
}
|
||||||
Create Single Issued Voucher:
|
Create Single Issued Voucher:
|
||||||
value:
|
value:
|
||||||
{
|
{
|
||||||
"purchasedProducts":
|
"purchasedProducts":[
|
||||||
[
|
{
|
||||||
{
|
"productId": 11,
|
||||||
"productId": 11,
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
||||||
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
"purchasedProductResources":
|
||||||
"purchasedProductResources":
|
[
|
||||||
[
|
{
|
||||||
{
|
"resourceNameId": 1,
|
||||||
"resourceNameId": 1,
|
"resourceIdentifier": "408eefa9-b393-4bb3-8439-b2e51833abc7",
|
||||||
"resourceIdentifier": "408eefa9-b393-4bb3-8439-b2e51833abc7",
|
},
|
||||||
},
|
{
|
||||||
{
|
"resourceNameId": 2,
|
||||||
"resourceNameId": 2,
|
"resourceIdentifier": "f809a6e1-1c8d-4f8e-8a6e-0d0b1e1e1e1e",
|
||||||
"resourceIdentifier": "f809a6e1-1c8d-4f8e-8a6e-0d0b1e1e1e1e",
|
},
|
||||||
},
|
],
|
||||||
],
|
"purchasedGboProducts": [],
|
||||||
"purchasedGboProducts": [],
|
"purchasedTapconnectTickets": [],
|
||||||
"purchasedTapconnectTickets": [],
|
"issuedVouchers":
|
||||||
"issuedVouchers":
|
[
|
||||||
[
|
{
|
||||||
{
|
"voucherCode": "VOUCHER123",
|
||||||
"voucherCode": "VOUCHER123",
|
"voucherStatusInstances":
|
||||||
"voucherStatusInstances":
|
[
|
||||||
[
|
{
|
||||||
{
|
"voucherStatusId": 1,
|
||||||
"voucherStatusId": 1,
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
},
|
||||||
},
|
],
|
||||||
],
|
"voucherClaims":
|
||||||
"voucherClaims":
|
[
|
||||||
[
|
{
|
||||||
{
|
"mandatoryCustomerDataItemId": 8,
|
||||||
"mandatoryCustomerDataItemId": 8,
|
"value": "1999-12-31",
|
||||||
"value": "1999-12-31",
|
},
|
||||||
},
|
{
|
||||||
{
|
"mandatoryCustomerDataItemId": 4,
|
||||||
"mandatoryCustomerDataItemId": 4,
|
"value": "vlad.harkonnen@househarkonnen.net",
|
||||||
"value": "vlad.harkonnen@househarkonnen.net",
|
},
|
||||||
},
|
],
|
||||||
],
|
},
|
||||||
},
|
],
|
||||||
],
|
}
|
||||||
},
|
]
|
||||||
],
|
|
||||||
}
|
}
|
||||||
Create Multiple Issued Vouchers:
|
Create Multiple Issued Vouchers:
|
||||||
value:
|
value:
|
||||||
{
|
{
|
||||||
"purchasedProducts":
|
"purchasedProducts":[
|
||||||
[
|
{
|
||||||
{
|
"productId": 11,
|
||||||
"productId": 11,
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
||||||
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
"purchasedProductResources":
|
||||||
"purchasedProductResources":
|
[
|
||||||
[
|
{
|
||||||
{
|
"resourceNameId": 1,
|
||||||
"resourceNameId": 1,
|
"resourceIdentifier": "408eefa9-b393-4bb3-8439-b2e51833abc7",
|
||||||
"resourceIdentifier": "408eefa9-b393-4bb3-8439-b2e51833abc7",
|
},
|
||||||
},
|
{
|
||||||
{
|
"resourceNameId": 2,
|
||||||
"resourceNameId": 2,
|
"resourceIdentifier": "f809a6e1-1c8d-4f8e-8a6e-0d0b1e1e1e1e",
|
||||||
"resourceIdentifier": "f809a6e1-1c8d-4f8e-8a6e-0d0b1e1e1e1e",
|
},
|
||||||
},
|
],
|
||||||
],
|
"purchasedGboProducts": [],
|
||||||
"purchasedGboProducts": [],
|
"purchasedTapconnectTickets": [],
|
||||||
"purchasedTapconnectTickets": [],
|
"issuedVouchers":
|
||||||
"issuedVouchers":
|
[
|
||||||
[
|
{
|
||||||
{
|
"voucherCode": "VOUCHER123",
|
||||||
"voucherCode": "VOUCHER123",
|
"voucherStatusInstances":
|
||||||
"voucherStatusInstances":
|
[
|
||||||
[
|
{
|
||||||
{
|
"voucherStatusId": 1,
|
||||||
"voucherStatusId": 1,
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
},
|
||||||
},
|
],
|
||||||
],
|
"voucherClaims":
|
||||||
"voucherClaims":
|
[
|
||||||
[
|
{
|
||||||
{
|
"mandatoryCustomerDataItemId": 8,
|
||||||
"mandatoryCustomerDataItemId": 8,
|
"value": "1999-12-31",
|
||||||
"value": "1999-12-31",
|
},
|
||||||
},
|
{
|
||||||
{
|
"mandatoryCustomerDataItemId": 4,
|
||||||
"mandatoryCustomerDataItemId": 4,
|
"value": "vlad.harkonnen@househarkonnen.net",
|
||||||
"value": "vlad.harkonnen@househarkonnen.net",
|
},
|
||||||
},
|
],
|
||||||
],
|
},
|
||||||
},
|
],
|
||||||
],
|
},
|
||||||
},
|
{
|
||||||
{
|
"productId": 11,
|
||||||
"productId": 11,
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
||||||
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
"purchasedProductResources":
|
||||||
"purchasedProductResources":
|
[
|
||||||
[
|
{
|
||||||
{
|
"resourceNameId": 1,
|
||||||
"resourceNameId": 1,
|
"resourceIdentifier": "7ce32f9b-52f0-4e80-a527-0c6184b57f52",
|
||||||
"resourceIdentifier": "7ce32f9b-52f0-4e80-a527-0c6184b57f52",
|
},
|
||||||
},
|
{
|
||||||
{
|
"resourceNameId": 2,
|
||||||
"resourceNameId": 2,
|
"resourceIdentifier": "02047745-f03e-4c00-8e1b-8dc5c86a786e",
|
||||||
"resourceIdentifier": "02047745-f03e-4c00-8e1b-8dc5c86a786e",
|
},
|
||||||
},
|
],
|
||||||
],
|
"purchasedGboProducts": [],
|
||||||
"purchasedGboProducts": [],
|
"purchasedTapconnectTickets": [],
|
||||||
"purchasedTapconnectTickets": [],
|
"issuedVouchers":
|
||||||
"issuedVouchers":
|
[
|
||||||
[
|
{
|
||||||
{
|
"voucherCode": "VOUCHER123",
|
||||||
"voucherCode": "VOUCHER123",
|
"voucherStatusInstances":
|
||||||
"voucherStatusInstances":
|
[
|
||||||
[
|
{
|
||||||
{
|
"voucherStatusId": 1,
|
||||||
"voucherStatusId": 1,
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
},
|
||||||
},
|
],
|
||||||
],
|
"voucherClaims":
|
||||||
"voucherClaims":
|
[
|
||||||
[
|
{
|
||||||
{
|
"mandatoryCustomerDataItemId": 8,
|
||||||
"mandatoryCustomerDataItemId": 8,
|
"value": "1940-01-18",
|
||||||
"value": "1940-01-18",
|
},
|
||||||
},
|
{
|
||||||
{
|
"mandatoryCustomerDataItemId": 4,
|
||||||
"mandatoryCustomerDataItemId": 4,
|
"value": "valdemar.hoskanner@househarkonnen.net",
|
||||||
"value": "valdemar.hoskanner@househarkonnen.net",
|
},
|
||||||
},
|
],
|
||||||
],
|
},
|
||||||
},
|
],
|
||||||
],
|
},
|
||||||
},
|
{
|
||||||
{
|
"productId": 11,
|
||||||
"productId": 11,
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
||||||
"lastUpdatedOn": "2024-10-04T12:34:56.000",
|
"purchasedProductResources":
|
||||||
"purchasedProductResources":
|
[
|
||||||
[
|
{
|
||||||
{
|
"resourceNameId": 1,
|
||||||
"resourceNameId": 1,
|
"resourceIdentifier": "7c71ec8a-3326-451f-9464-3e36d10260e3",
|
||||||
"resourceIdentifier": "7c71ec8a-3326-451f-9464-3e36d10260e3",
|
},
|
||||||
},
|
{
|
||||||
{
|
"resourceNameId": 2,
|
||||||
"resourceNameId": 2,
|
"resourceIdentifier": "73c7a805-2edf-4616-a04c-267e88e0931c",
|
||||||
"resourceIdentifier": "73c7a805-2edf-4616-a04c-267e88e0931c",
|
},
|
||||||
},
|
],
|
||||||
],
|
"purchasedGboProducts": [],
|
||||||
"purchasedGboProducts": [],
|
"purchasedTapconnectTickets": [],
|
||||||
"purchasedTapconnectTickets": [],
|
"issuedVouchers":
|
||||||
"issuedVouchers":
|
[
|
||||||
[
|
{
|
||||||
{
|
"voucherCode": "VOUCHER123",
|
||||||
"voucherCode": "VOUCHER123",
|
"voucherStatusInstances":
|
||||||
"voucherStatusInstances":
|
[
|
||||||
[
|
{
|
||||||
{
|
"voucherStatusId": 1,
|
||||||
"voucherStatusId": 1,
|
"createdOn": "2024-10-04T12:34:56.000",
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
},
|
||||||
},
|
],
|
||||||
],
|
"voucherClaims":
|
||||||
"voucherClaims":
|
[
|
||||||
[
|
{
|
||||||
{
|
"mandatoryCustomerDataItemId": 8,
|
||||||
"mandatoryCustomerDataItemId": 8,
|
"value": "2016-06-08",
|
||||||
"value": "2016-06-08",
|
},
|
||||||
},
|
{
|
||||||
{
|
"mandatoryCustomerDataItemId": 4,
|
||||||
"mandatoryCustomerDataItemId": 4,
|
"value": "alia.artreides@housearteides.net",
|
||||||
"value": "alia.artreides@housearteides.net",
|
},
|
||||||
},
|
],
|
||||||
],
|
},
|
||||||
},
|
],
|
||||||
],
|
}
|
||||||
},
|
]
|
||||||
],
|
|
||||||
}
|
}
|
||||||
responses:
|
responses:
|
||||||
"202":
|
"202":
|
||||||
@ -1520,36 +1512,35 @@ paths:
|
|||||||
summary: List of issued vouchers to set status to revoked
|
summary: List of issued vouchers to set status to revoked
|
||||||
description: List of issued vouchers to set status to revoked
|
description: List of issued vouchers to set status to revoked
|
||||||
value:
|
value:
|
||||||
{
|
{
|
||||||
"voucherStatusInstances":
|
"voucherStatusInstances":[
|
||||||
[
|
{
|
||||||
{
|
"issuedVoucherId": "8a63552f-faf5-43f3-b22d-bebc976a8a5e",
|
||||||
"issuedVoucherId": "8a63552f-faf5-43f3-b22d-bebc976a8a5e",
|
"voucherStatusId": 4,
|
||||||
"voucherStatusId": 4,
|
"createdOn": "2024-10-04T12:34:56.000"
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
},
|
||||||
},
|
{
|
||||||
{
|
"issuedVoucherId": "a9ff40ec-2940-413a-9957-dfd471c4caf3",
|
||||||
"issuedVoucherId": "a9ff40ec-2940-413a-9957-dfd471c4caf3",
|
"voucherStatusId": 4,
|
||||||
"voucherStatusId": 4,
|
"createdOn": "2024-10-04T12:34:56.000"
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
},
|
||||||
},
|
{
|
||||||
{
|
"issuedVoucherId": "9e7363e6-beaa-4c38-9ed6-c8afed459bd5",
|
||||||
"issuedVoucherId": "9e7363e6-beaa-4c38-9ed6-c8afed459bd5",
|
"voucherStatusId": 4,
|
||||||
"voucherStatusId": 4,
|
"createdOn": "2024-10-04T12:34:56.000"
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
},
|
||||||
},
|
{
|
||||||
{
|
"issuedVoucherId": "9d7332d6-1949-4c20-aa99-d87096b035fa",
|
||||||
"issuedVoucherId": "9d7332d6-1949-4c20-aa99-d87096b035fa",
|
"voucherStatusId": 4,
|
||||||
"voucherStatusId": 4,
|
"createdOn": "2024-10-04T12:34:56.000"
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
},
|
||||||
},
|
{
|
||||||
{
|
"issuedVoucherId": "43ca757b-8370-4cb0-92b9-717948383d5e",
|
||||||
"issuedVoucherId": "43ca757b-8370-4cb0-92b9-717948383d5e",
|
"voucherStatusId": 4,
|
||||||
"voucherStatusId": 4,
|
"createdOn": "2024-10-04T12:34:56.000"
|
||||||
"createdOn": "2024-10-04T12:34:56.000",
|
},
|
||||||
},
|
]
|
||||||
],
|
}
|
||||||
}
|
|
||||||
responses:
|
responses:
|
||||||
"202":
|
"202":
|
||||||
description: Accepted
|
description: Accepted
|
||||||
|
|||||||
211
src/openapi/products/vouchers-se.yaml
Normal file
211
src/openapi/products/vouchers-se.yaml
Normal file
@ -0,0 +1,211 @@
|
|||||||
|
openapi: 3.0.1
|
||||||
|
info:
|
||||||
|
title: Service Engine APIs for HTM vouchers
|
||||||
|
description: Service Engine APIs for HTM vouchers. These are NOT the CRUD APIs to the data hub.
|
||||||
|
version: "1.0"
|
||||||
|
servers:
|
||||||
|
- url: https://services.acc.api.htm.nl/abt/abtvouchers/1.0
|
||||||
|
paths:
|
||||||
|
/issuedvouchers/{voucherCode}:
|
||||||
|
get:
|
||||||
|
summary: Get voucher details by voucher code
|
||||||
|
description: Retrieve voucher details using its unique voucher code.
|
||||||
|
parameters:
|
||||||
|
- name: voucherCode
|
||||||
|
in: path
|
||||||
|
required: true
|
||||||
|
description: The unique code of the voucher details to retrieve.
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
tags:
|
||||||
|
- Vouchers
|
||||||
|
responses:
|
||||||
|
"200":
|
||||||
|
description: Successful retrieval of voucher instance
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/unavailable"
|
||||||
|
examples:
|
||||||
|
Voucher for a product with required attributes:
|
||||||
|
summary: Voucher for a single product with required attributes
|
||||||
|
value:
|
||||||
|
{
|
||||||
|
"issuedVoucher":
|
||||||
|
{
|
||||||
|
"issuedVoucherId": "d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90",
|
||||||
|
"voucherCode": "VOUCHER123",
|
||||||
|
"fromInclusive": "2024-10-04T00:00:00.000",
|
||||||
|
"untilInclusive": "2024-11-04T00:00:00.000",
|
||||||
|
"voucherStatus":
|
||||||
|
{ "voucherStatusId": 1, "name": "New" },
|
||||||
|
"product":
|
||||||
|
{
|
||||||
|
"productId": 263,
|
||||||
|
"productName": "HTM-80001",
|
||||||
|
"productDescription": "10 euro korting op Regiovrij maand.",
|
||||||
|
"productCategory":
|
||||||
|
{
|
||||||
|
"productCategoryId": 9,
|
||||||
|
"isTravelProduct": false,
|
||||||
|
"name": "Voucher",
|
||||||
|
},
|
||||||
|
"amountInclTax": -1000,
|
||||||
|
"requiredProducts":
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"productId": 126,
|
||||||
|
"productName": "HTM-30001",
|
||||||
|
"productDescription": "Reis met 20% korting op je betaalpas bij HTM.",
|
||||||
|
"_links":
|
||||||
|
{
|
||||||
|
"get_details":
|
||||||
|
{
|
||||||
|
"href": "https://api.integratielaag.nl/abt/touchpoint/1.0/products/126",
|
||||||
|
"method": "GET",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
"_links":
|
||||||
|
{
|
||||||
|
"get_details":
|
||||||
|
{
|
||||||
|
"href": "https://api.integratielaag.nl/abt/touchpoint/1.0/products/263",
|
||||||
|
"method": "GET",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
"mandatoryCustomerDataItems":
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"mandatoryCustomerDataItemId": 8,
|
||||||
|
"customerDataItem": "padBirthDate",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"mandatoryCustomerDataItemId": 4,
|
||||||
|
"customerDataItem": "emailAddress",
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
}
|
||||||
|
Voucher for a whole order:
|
||||||
|
summary: Voucher for a whole order
|
||||||
|
value:
|
||||||
|
{
|
||||||
|
"issuedVoucher":
|
||||||
|
{
|
||||||
|
"issuedVoucherId": "d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90",
|
||||||
|
"voucherCode": "VOUCHER123",
|
||||||
|
"fromInclusive": "2024-10-04T00:00:00.000",
|
||||||
|
"untilInclusive": "2024-11-04T00:00:00.000",
|
||||||
|
"voucherStatus":
|
||||||
|
{ "voucherStatusId": 1, "name": "New" },
|
||||||
|
"product":
|
||||||
|
{
|
||||||
|
"productId": 263,
|
||||||
|
"productName": "HTM-80002",
|
||||||
|
"productDescription": "10 euro korting op je gehele winkelmand.",
|
||||||
|
"productCategory":
|
||||||
|
{
|
||||||
|
"productCategoryId": 9,
|
||||||
|
"isTravelProduct": false,
|
||||||
|
"name": "Voucher",
|
||||||
|
},
|
||||||
|
"amountInclTax": -1000,
|
||||||
|
"requiredProducts": [],
|
||||||
|
"_links":
|
||||||
|
{
|
||||||
|
"get_details":
|
||||||
|
{
|
||||||
|
"href": "https://api.integratielaag.nl/abt/touchpoint/1.0/products/263",
|
||||||
|
"method": "GET",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
"mandatoryCustomerDataItems": [],
|
||||||
|
}
|
||||||
|
"403":
|
||||||
|
description: Forbidden
|
||||||
|
content:
|
||||||
|
application/problem+json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/rfc9457"
|
||||||
|
examples:
|
||||||
|
Access denied due to insufficient permissions:
|
||||||
|
summary: Access denied due to insufficient permissions
|
||||||
|
value:
|
||||||
|
{
|
||||||
|
"type": "https://example.com/probs/forbidden",
|
||||||
|
"title": "Access denied",
|
||||||
|
"detail": "You do not have permission to access this resource.",
|
||||||
|
"instance": "/issuedvouchers/VOUCHER123",
|
||||||
|
}
|
||||||
|
"404":
|
||||||
|
description: Not found
|
||||||
|
content:
|
||||||
|
application/problem+json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/rfc9457"
|
||||||
|
examples:
|
||||||
|
Voucher not found:
|
||||||
|
summary: Voucher not found
|
||||||
|
value:
|
||||||
|
{
|
||||||
|
"type": "https://example.com/probs/not-found",
|
||||||
|
"title": "Voucher not found",
|
||||||
|
"detail": "The voucher with code VOUCHER123 does not exist.",
|
||||||
|
"instance": "/issuedvouchers/VOUCHER123",
|
||||||
|
}
|
||||||
|
"500":
|
||||||
|
description: Internal server error
|
||||||
|
content:
|
||||||
|
application/problem+json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/rfc9457"
|
||||||
|
examples:
|
||||||
|
Unexpected server error:
|
||||||
|
summary: Unexpected server error
|
||||||
|
value:
|
||||||
|
{
|
||||||
|
"type": "https://example.com/probs/internal-server-error",
|
||||||
|
"title": "Internal Server Error",
|
||||||
|
"detail": "An unexpected error occurred while processing your request.",
|
||||||
|
"instance": "/issuedvouchers/VOUCHER123",
|
||||||
|
}
|
||||||
|
components:
|
||||||
|
securitySchemes:
|
||||||
|
bearerToken:
|
||||||
|
type: http
|
||||||
|
scheme: bearer
|
||||||
|
bearerFormat: JWT
|
||||||
|
schemas:
|
||||||
|
unavailable:
|
||||||
|
type: object
|
||||||
|
rfc9457:
|
||||||
|
type: object
|
||||||
|
properties:
|
||||||
|
type:
|
||||||
|
type: string
|
||||||
|
format: url
|
||||||
|
example: https://example.com/probs/out-of-credit
|
||||||
|
title:
|
||||||
|
type: string
|
||||||
|
example: You do not have enough credit.
|
||||||
|
detail:
|
||||||
|
type: string
|
||||||
|
example: Your current balance is 30, but that costs 50.
|
||||||
|
instance:
|
||||||
|
type: string
|
||||||
|
example: /account/12345/msgs/abc
|
||||||
|
balance:
|
||||||
|
type: string
|
||||||
|
example: 30
|
||||||
|
accounts:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
example:
|
||||||
|
- /account/12345
|
||||||
|
- /account/67890
|
||||||
Loading…
Reference in New Issue
Block a user