diff --git a/src/openapi/products/SE-vouchers-supplier.yaml b/src/openapi/products/SE-vouchers-supplier.yaml index 9a03c91..2ed5e39 100644 --- a/src/openapi/products/SE-vouchers-supplier.yaml +++ b/src/openapi/products/SE-vouchers-supplier.yaml @@ -316,19 +316,17 @@ paths: "mandatoryCustomerDataItem": { "mandatoryCustomerDataItemId": 8, - "customerDataItem": "padBirthDate" + "customerDataItem": "padBirthDate", }, - "value": "1980-06-31" - + "value": "1980-06-31", }, { "mandatoryCustomerDataItem": { "mandatoryCustomerDataItemId": 4, - "customerDataItem": "emailAddress" + "customerDataItem": "emailAddress", }, - "value": "harry@griffindor.co.uk" - + "value": "harry@griffindor.co.uk", }, ], }, @@ -422,10 +420,10 @@ paths: "instance": "/issuedvouchers", } post: - summary: Issue one or more vouchers for a specific product + summary: Issue a voucher for a specific product description: | - Issue one ore more vouchers for a specific product. The vouchers will be issued for the touch point that is associated with the access token used in the request. - The product for which the vouchers should be issued must have active selling periods for touch points within the same retailer as the calling touch point. + Issue a voucher for a specific product. The voucher will be issued for the touch point that is associated with the access token used in the request. + The product for which the voucher should be issued must have active selling periods for touch points within the same retailer as the calling touch point. tags: - Vouchers requestBody: @@ -435,70 +433,42 @@ paths: schema: $ref: "#/components/schemas/unavailable" examples: - Issue a single voucher: - summary: Issue a single voucher + Issue a voucher with prefilled voucher code: + summary: Issue a voucher with prefilled voucher code value: { - "issuedVouchers": + "voucherCode": "VOUCHER123", + "fromInclusive": "2024-10-04T00:00:00.000", + "untilInclusive": "2024-11-04T00:00:00.000", + "productId": 263, + "voucherClaims": [ { - "voucherCode": "VOUCHER123", - "fromInclusive": "2024-10-04T00:00:00.000", - "untilInclusive": "2024-11-04T00:00:00.000", - "productId": 263, - "voucherClaims": - [ - { - "mandatoryCustomerDataItemId": 8, - "value": "1970-01-01", - }, - { - "mandatoryCustomerDataItemId": 4, - "value": "stasjo@html.nl", - }, - ], + "mandatoryCustomerDataItemId": 8, + "value": "1970-01-01", + }, + { + "mandatoryCustomerDataItemId": 4, + "value": "stasjo@html.nl", }, ], } - Issue multiple vouchers: - summary: Issue multiple vouchers + Issue a voucher without prefilled voucher code: + summary: Issue a voucher without prefilled voucher code value: { - "issuedVouchers": + "fromInclusive": "2024-10-04T00:00:00.000", + "untilInclusive": "2024-11-04T00:00:00.000", + "productId": 263, + "voucherClaims": [ { - "voucherCode": "VOUCHER123", - "fromInclusive": "2024-10-04T00:00:00.000", - "untilInclusive": "2024-11-04T00:00:00.000", - "productId": 263, - "voucherClaims": - [ - { - "mandatoryCustomerDataItemId": 8, - "value": "1970-01-01", - }, - { - "mandatoryCustomerDataItemId": 4, - "value": "stasjo@html.nl", - }, - ], + "mandatoryCustomerDataItemId": 8, + "value": "1970-01-01", }, { - "voucherCode": "VOUCHER456", - "fromInclusive": "2024-10-04T00:00:00.000", - "untilInclusive": "2024-11-04T00:00:00.000", - "productId": 263, - "voucherClaims": - [ - { - "mandatoryCustomerDataItemId": 8, - "value": "1970-01-01", - }, - { - "mandatoryCustomerDataItemId": 4, - "value": "joey@htm.nl", - }, - ], + "mandatoryCustomerDataItemId": 4, + "value": "stasjo@html.nl", }, ], } @@ -510,26 +480,51 @@ paths: schema: $ref: "#/components/schemas/unavailable" examples: - Successfully issued a single voucher: - summary: Successfully issued a single voucher + Successfully issued a voucher: + summary: Successfully issued a voucher value: { - "issuedVoucherIds": - ["d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90"], - } - Successfully issued multiple vouchers: - summary: Successfully issued multiple vouchers - value: - { - "issuedVoucherIds": - [ - "d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90", - "a1b2c3d4-e5f6-7a8b-9c0d-1e2f3a4b5c6d", - ], + "issuedVoucherId": "d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90", + "voucherCode": "HKV-A7J-128-PYT", + "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", + }, + }, + }, } + /issuedvouchers/{issuedVoucherId}: + parameters: + - name: issuedVoucherId + in: path + required: true + description: The unique identifier of the issued voucher instance to update the status for. + schema: + type: string + format: uuid + example: d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90 patch: - summary: Update the status of one ore more issued vouchers - description: Update the status of one ore more issued vouchers. This can be used to mark a voucher as redeemed, revoked or expired. + summary: Update the status of an issued voucher + description: Update the status of an issued voucher. This can be used to mark a voucher as redeemed, revoked or expired. tags: - Vouchers requestBody: @@ -540,32 +535,10 @@ paths: $ref: "#/components/schemas/unavailable" examples: Mark a voucher as expired: - summary: Mark a single voucher as expired + summary: Mark a voucher as expired value: { - "issuedVouchers": - [ - { - "issuedVoucherId": "d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90", - "voucherStatusId": 5, - }, - ], - } - Mark multiple vouchers as revoked: - summary: Mark multiple vouchers as revoked - value: - { - "issuedVouchers": - [ - { - "issuedVoucherId": "d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90", - "voucherStatusId": 4, - }, - { - "issuedVoucherId": "a1b2c3d4-e5f6-7a8b-9c0d-1e2f3a4b5c6d", - "voucherStatusId": 4, - }, - ], + "voucherStatusId": 5, } responses: "200": @@ -575,22 +548,37 @@ paths: schema: $ref: "#/components/schemas/unavailable" examples: - Successfully updated the status of a single voucher: - summary: Successfully updated the status of a single voucher + Successfully updated the status of a voucher: + summary: Successfully updated the status of a voucher value: { - "issuedVoucherIds": - ["d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90"], - } - Successfully updated the status of multiple vouchers: - summary: Successfully updated the status of multiple vouchers - value: - { - "issuedVoucherIds": - [ - "d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90", - "a1b2c3d4-e5f6-7a8b-9c0d-1e2f3a4b5c6d", - ], + "issuedVoucherId": "d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90", + "voucherCode": "HKV-A7J-128-PYT", + "fromInclusive": "2024-10-04T00:00:00.000", + "untilInclusive": "2024-11-04T00:00:00.000", + "voucherStatus": { "voucherStatusId": 5, "name": "Expired" }, + "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", + }, + }, + }, } components: securitySchemes: