diff --git a/src/openapi/orders/SE-orders-gboAgeProfile.yaml b/src/openapi/orders/SE-orders-gboAgeProfile.yaml new file mode 100644 index 0000000..a78d4e4 --- /dev/null +++ b/src/openapi/orders/SE-orders-gboAgeProfile.yaml @@ -0,0 +1,180 @@ +openapi: 3.0.1 +info: + title: ABT Service Engine Order APIs + version: "1.0" + description: Order APIs available in the Service Engine for order validation and fulfillment. +servers: + - url: https://api.integratielaag.nl/abt/abtserviceengine/1.0 +paths: + /orders/validation/gboAgeProfile: + get: + tags: + - ServiceEngine Order validation + summary: Get GBO age profile that is valid for the given input + description: |- + Only one age profile can be valid at any one time, so only one profile is returned. + parameters: + - name: productStartDate + in: query + required: true + description: Start date of product validity + schema: + type: string + format: date + example: 2025-03-20 + - name: birthDate + in: query + required: false + description: Birthdate of the OVpay-token holder + schema: + type: string + format: date + example: 2000-01-01 + - name: ovPayTokenId + in: query + required: false + description: ovPayTokenId of the customer's selected token + schema: + type: integer + example: 1 + - name: customerTokenId + in: query + required: false + description: customerTokenId of the customer's selected token + schema: + type: string + format: uuid + example: "4a2d2c9c-1e5d-4d8a-9c0a-6c0a6c0a6c0a" + - name: serviceReferenceId + in: query + required: false + description: serviceReferenceId of the customer's selected token + schema: + type: string + example: "NLOV1234567ABCDEFG" + - name: amount + in: query + required: false + description: amount belonging to the serviceReferenceId + schema: + type: integer + example: 100 + - name: ovpasNumber + in: query + required: false + description: OVpas number of the customer's selected token + schema: + type: string + example: "63AW974" + - name: verificationCode + in: query + required: false + description: verification code belonging to the OVpas number + schema: + type: string + example: 1A3C7D + responses: + "200": + description: OK + content: + application/json: + schema: + $ref: "#/components/schemas/GboAgeProfileResponse" + + "400": + description: Bad request + content: + application/json: + schema: + $ref: "#/components/schemas/rfc9457Response" + examples: + Missing parameter(s): + summary: Missing parameter(s) + value: + { + "type": "https://www.htm.nl/api/v1/400Error", + "title": "Missing parameter(s)", + "detail": "At least one of the following parameters must be present: birthDate, ovPayTokenId, customerTokenId, (serviceReferenceId and amount), (ovpasNumber and verificationCode)", + "instance": "urn:uuid:13c8416f-7632-4c8b-8a16-2132197be60c", + "apiErrorCode": "htm.api.err.400.2", + } + Invalid date format: + summary: Invalid date format + value: + { + "type": "https://www.htm.nl/api/v1/400Error", + "title": "Invalid input", + "detail": "The given birthDate is not a valid Date format", + "instance": "urn:uuid:13c8416f-7632-4c8b-8a16-2132197be60c", + "apiErrorCode": "htm.api.err.400.3", + } + "404": + description: Not found + content: + application/json: + schema: + $ref: "#/components/schemas/rfc9457Response" + examples: + No birthdate present in PAD of OVpay token: + summary: No birthdate present in PAD of OVpay token + value: + { + "type": "https://www.htm.nl/api/v1/404Error", + "title": "Missing birthdate in PAD", + "detail": "There is no birthdate present in the PAD of the OVpay token, or there is no PAD present at all", + "instance": "urn:uuid:13c8416f-7632-4c8b-8a16-2132197be60c", + "apiErrorCode": "htm.api.err.404.1", + } +components: + schemas: + GboAgeProfileResponse: + type: object + required: + - gboAgeProfileId + - name + - ageFromInclusive + - ageToInclusive + properties: + gboAgeProfileId: + type: integer + example: 1 + name: + type: string + example: Kind (4 t/m 11 jaar) + ageFromInclusive: + type: integer + example: 4 + ageToInclusive: + type: integer + example: 11 + rfc9457Response: + type: object + properties: + type: + type: string + format: url + example: "https://www.htm.nl/api/v1/rfc9457Error" + title: + type: string + description: "Short summary of the error." + example: "The request is not valid." + detail: + type: string + description: "More detailed descriptionof the error." + example: "Some required parameters are missing." + instance: + type: string + description: "Unique identifier to correlate this specific error with logging in other applications." + example: "urn:uuid:13c8416f-7632-4c8b-8a16-2132197be60c" + additionalProperty1: + type: string + description: "Example of an additional property value to be used for error reporting." + example: "additionalValue1" + additionalProperty2: + type: array + description: "Example of an additional property array to be used for error reporting." + items: + type: string + example: + - "additionalValue2-1" + - "additionalValue2-2"