From cc8881b9d5e4f676eae5ee3edb1de0d0b5be4639 Mon Sep 17 00:00:00 2001 From: Max Martens Date: Thu, 11 Jun 2026 12:06:47 +0200 Subject: [PATCH] Add onlyVouchers queryParam and needsVoucher product attribute --- .../products/productreference-crud.yaml | 3 ++ src/openapi/products/products-crud.yaml | 28 +++++++++++++++++++ 2 files changed, 31 insertions(+) diff --git a/src/openapi/products/productreference-crud.yaml b/src/openapi/products/productreference-crud.yaml index 2867779..55ac58c 100644 --- a/src/openapi/products/productreference-crud.yaml +++ b/src/openapi/products/productreference-crud.yaml @@ -1553,6 +1553,9 @@ components: - productCategoryId: 8 name: Saldo isTravelProduct: true + - productCategoryId: 9 + name: Voucher + isTravelProduct: false type: array items: $ref: '#/components/schemas/productCategoryGetEntity' diff --git a/src/openapi/products/products-crud.yaml b/src/openapi/products/products-crud.yaml index 1065260..d03bf6f 100644 --- a/src/openapi/products/products-crud.yaml +++ b/src/openapi/products/products-crud.yaml @@ -46,6 +46,13 @@ paths: when false, return only non-archived products (isArchived = false). schema: type: boolean + - name: onlyVouchers + in: query + required: false + description: |- + When omitted, defaults to false (i.e. return all normal products that are NOT voucher definitions); when true, return only voucher definitions + schema: + type: boolean responses: '200': description: OK @@ -387,6 +394,7 @@ paths: "fikoArticleNumber": "1234", "isValid": true, "isArchived": false, + "needsVoucher": false, "gboPackageTemplateId": "30901", "productName": "HTM pilot 90% korting", "productDescription": "Reis met 90% korting gedurende de eerste F&F pilot!", @@ -474,6 +482,7 @@ paths: "fikoArticleNumber": "1234", "isValid": true, "isArchived": false, + "needsVoucher": false, "gboPackageTemplateId": "30901", "productName": "HTM pilot 90% korting", "productDescription": "Reis met 90% korting gedurende de eerste F&F pilot!", @@ -560,6 +569,7 @@ paths: "fikoArticleNumber": "1234", "isValid": true, "isArchived": false, + "needsVoucher": false, "gboPackageTemplateId": "30901", "productName": "HTM pilot 90% korting", "productDescription": "Reis met 90% korting gedurende de eerste F&F pilot!", @@ -680,6 +690,7 @@ paths: "fikoArticleNumber": "1234", "isValid": true, "isArchived": false, + "needsVoucher": false, "gboPackageTemplateId": "33610", "productName": "HTM Regio Vrij DH73", "productDescription": "Voor een vast bedrag onbeperkt reizen met EBS, HTM en RET in het gekozen gebied in de regio Rotterdam Den Haag.", @@ -866,6 +877,7 @@ paths: "fikoArticleNumber": "1234", "isValid": true, "isArchived": false, + "needsVoucher": false, "gboPackageTemplateId": "30901", "tapConnectProductCode": null, "productName": "HTM pilot 90% korting", @@ -1028,6 +1040,7 @@ paths: "fikoArticleNumber": "1234", "isValid": true, "isArchived": false, + "needsVoucher": false, "gboPackageTemplateId": "30901", "tapConnectProductCode": null, "productName": "HTM pilot 90% korting", @@ -1270,6 +1283,7 @@ paths: "fikoArticleNumber": "1234", "isValid": true, "isArchived": false, + "needsVoucher": false, "gboPackageTemplateId": "33610", "tapConnectProductCode": null, "productName": "HTM Regio Vrij DH73", @@ -1475,6 +1489,7 @@ paths: "fikoArticleNumber": "1234", "isValid": true, "isArchived": false, + "needsVoucher": false, "gboPackageTemplateId": null, "tapConnectProductCode": null, "productName": "IBAN wijzigen functioneel product", @@ -1672,6 +1687,7 @@ paths: "fikoArticleNumber": "1234", "isValid": true, "isArchived": false, + "needsVoucher": false, "gboPackageTemplateId": null, "tapConnectProductCode": null, "productName": "OV-pas saldo (1 eurocent)", @@ -2775,6 +2791,10 @@ components: type: boolean description: Indicates if the product is archived - if true, the Service Engine will prevent touchpoints from seeing this product example: false + needsVoucher: + type: boolean + description: Indicates if the product needs a voucher (with this productId as requiredProductId) to be bought - if false, this is optional, but still allowed + example: false gboPackageTemplateId: type: string example: '30901' @@ -3132,6 +3152,10 @@ components: type: boolean description: Indicates if the product is archived - if true, the Service Engine will prevent touchpoints from seeing this product example: false + needsVoucher: + type: boolean + description: Indicates if the product needs a voucher (with this productId as requiredProductId) to be bought - if false, this is optional, but still allowed + example: false gboPackageTemplateId: type: string description: >- @@ -3503,6 +3527,10 @@ components: type: boolean description: Indicates if the product is archived - if true, the Service Engine will prevent touchpoints from seeing this product example: false + needsVoucher: + type: boolean + description: Indicates if the product needs a voucher (with this productId as requiredProductId) to be bought - if false, this is optional, but still allowed + example: false gboPackageTemplateId: type: string description: >-