From f6766f922554138df9f21c710221fa9ab661a1a7 Mon Sep 17 00:00:00 2001 From: Mirjam Herald Date: Fri, 28 Mar 2025 10:32:24 +0100 Subject: [PATCH] all token endpoints added in swagger --- src/openapi/customers/SE-customers.yaml | 493 ++++++++++++++++++++++-- 1 file changed, 469 insertions(+), 24 deletions(-) diff --git a/src/openapi/customers/SE-customers.yaml b/src/openapi/customers/SE-customers.yaml index 6e184ee..171c6f4 100644 --- a/src/openapi/customers/SE-customers.yaml +++ b/src/openapi/customers/SE-customers.yaml @@ -224,13 +224,13 @@ paths: example: 91641b54-056c-49ea-b598-ccde81d6c45a required: false description: Filter on the xBot of a customer token - - name: ovPasNumber + - name: OV pasNumber in: query schema: type: string example: 56HYRTL required: false - description: Filter on the ovPasNumber of a customer token of type OV Pas + description: Filter on the OV pasNumber of a customer token of type OV Pas - name: lastDigits in: query schema: @@ -340,9 +340,9 @@ paths: } ] } - OVPAS without PAD: - summary: OVPAS without PAD - description: OVPAS without PAD + OV pas without PAD: + summary: OV pas without PAD + description: OV pas without PAD value: { "ovPayTokens": [ @@ -406,9 +406,9 @@ paths: } ] } - OVPAS with PAD: - summary: OVPAS with PAD - description: OVPAS with PAD + OV pas with PAD and autoReload: + summary: OV pas with PAD and autoReload + description: OV pas with PAD and autoReload value: { "ovPayTokens": [ @@ -502,9 +502,9 @@ paths: } ] } - OVPAS with partial PAD: - summary: OVPAS with partial PAD - description: OVPAS with partial PAD + OV pas with partial PAD: + summary: OV pas with partial PAD + description: OV pas with partial PAD value: { "ovPayTokens": [ @@ -592,9 +592,9 @@ paths: } ] } - OVPAS with invalid PAD: - summary: OVPAS with invalid PAD - description: OVPAS with invalid PAD + OV pas with invalid PAD: + summary: OV pas with invalid PAD + description: OV pas with invalid PAD value: { "ovPayTokens": [ @@ -726,9 +726,9 @@ paths: "alias": "Mijn token" } } - Add OVpas physical token: - summary: Add OVpas physical token - description: Add OVpas physical token + Add OV pas physical token: + summary: Add OV pas physical token + description: Add OV pas physical token value: { "ovPayToken": { @@ -756,7 +756,7 @@ paths: "ovPayTokenId": 1, "tokenTypeId": 1, "lastDigits": null, - "ovpasNumber": null, + "OV pasNumber": null, "alias": "Mijn token", "tokenStatusId": 2, "expirationDate": "2028-08-31T23:59:00+02:00", @@ -806,7 +806,7 @@ paths: } } } - Add OVpas physical token: + Add OV pas physical token: summary: Add EMV token description: Add EMV token value: @@ -816,7 +816,7 @@ paths: "ovPayTokenId": 1, "tokenTypeId": 2, "lastDigits": null, - "ovpasNumber": "OV34567", + "OV pasNumber": "OV34567", "alias": "Mijn token", "tokenStatusId": 2, "expirationDate": "2028-08-31T23:59:00+02:00", @@ -904,7 +904,7 @@ paths: type: integer example: 1 required: true - summary: Replace an OV paytoken for a customerProfile + summary: Replace an OV paytoken with another description: Replace an OV paytoken in the database for a given customer with another token requestBody: content: @@ -912,7 +912,7 @@ paths: schema: $ref: "#/components/schemas/unavailable" examples: - Replace with new EMV token: + Replace with new EMV token: summary: Replace with new token description: Replace with new token value: @@ -925,6 +925,27 @@ paths: "alias": "Nieuw token" } } + Replace with existing EMV token: + summary: Replace with existing token + description: Replace with existing token + value: + { + "ovPayToken": { + "newTokenId": 10 + } + } + Replace with new OV pas token: + summary: Replace with new OV pas token + description: Replace with new OV pas token + value: + { + "ovPayToken": { + "tokenTypeId": 2, + "ovpasNumber": "OV34567", + "verificationCode": "211", + "alias": "Mijn token" + } + } responses: "201": description: Created @@ -943,7 +964,7 @@ paths: "ovPayTokenId": 5, "tokenTypeId": 1, "lastDigits": null, - "ovpasNumber": null, + "OV pasNumber": null, "alias": "Mijn token", "tokenStatusId": 2, "expirationDate": "2028-08-31T23:59:00+02:00", @@ -965,7 +986,7 @@ paths: "method": "PATCH" }, "replace_token": { - "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5/replace", + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", "method": "POST" }, "delete_token": { @@ -993,6 +1014,430 @@ paths: } } } + Replace with new OV pas token: + summary: Replace with new OV pas token + description: Replace with new OV pas token + value: + { + "ovPayToken": { + "customerProfileId": 8, + "ovPayTokenId": 5, + "tokenTypeId": 2, + "lastDigits": null, + "OV pasNumber":"OV34567", + "alias": "Mijn token", + "tokenStatusId": 2, + "expirationDate": "2028-08-31T23:59:00+02:00", + "replacedByTokenId": null, + "autoReloadRegistration": null, + "ePurse": { + "e-PurseBalance": { + "currency": "EUR", + "amount": 350 + }, + "status": "ACTIVE", + "originDate": "2024-07-16T11:00:00+02:00" + }, + + "personalAccountData":{ + "name": null, + "birthDate": null, + "photo": null + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens?ovpaytokenId=5", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5/trips", + "method": "GET" + }, + "create_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/pad?ovpaytokenId=5", + "method": "POST" + } + } + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens", + "method": "POST" + } + } + } + "200": + description: Ok + content: + application/json: + schema: + $ref: "#/components/schemas/unavailable" + examples: + Replace with existing EMV token: + summary: Replace with existing EMV token + description: Replace with existing EMV token + value: + { + "ovPayToken": { + "customerProfileId": 8, + "ovPayTokenId": 10, + "tokenTypeId": 1, + "lastDigits": null, + "OV pasNumber": null, + "alias": "Mijn bestaandetoken", + "tokenStatusId": 2, + "expirationDate": "2028-08-31T23:59:00+02:00", + "replacedByTokenId": null, + "autoReloadRegistration": null, + "ePurse": null, + "personalAccountData":{ + "name": null, + "birthDate": null, + "photo": null + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens?ovpaytokenId=5", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5/trips", + "method": "GET" + }, + "create_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/pad?ovpaytokenId=5", + "method": "POST" + } + } + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens", + "method": "POST" + } + } + } + patch: + tags: + - Customers + parameters: + - name: X-HTM-JWT-AUTH-HEADER + in: header + schema: + type: string + example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c + required: false + description: The JWT of a customer in case of touchpoint were customer logs in themselves + - name: X-HTM-CUSTOMER-PROFILE-ID-HEADER + in: header + schema: + type: string + example: feaaef83-a551-4283-8419-340b1ada3b55 + required: false + description: The customerProfileId of a customer in the case of the SMP + - name: X-HTM-ROLE-HEADER + in: header + schema: + type: string + example: Customer + required: false + - name: ovpayTokenId + in: path + schema: + type: integer + example: 1 + required: true + summary: Edit an existing OV paytoken + description: Edit an existing OV paytoken in the database for a given customer + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/unavailable" + examples: + Update an OV pay token status: + summary: Update an OV pay token status + description: Update an OV pay token status + value: + { + "ovPayToken": { + "tokenStatusId": 4 + } + } + Update an OV pay token alias: + summary: Update an OV pay token alias + description: Update an OV pay token alias + value: + { + "ovPayToken": { + "alias": "Mijn nieuwe tokennaam" + } + } + Update an OV pay token full: + summary: Update an OV pay token full + description: Update an OV pay token full + value: + { + "ovPayToken": { + "tokenStatusId": 4, + "alias": "Mijn verloren pas" + } + } + responses: + "200": + description: Ok + content: + application/json: + schema: + $ref: "#/components/schemas/unavailable" + examples: + Update an OV pay token status: + summary: Update an OV pay token status + description: Update an OV pay token status + value: + { + "ovPayToken": { + "customerProfileId": 8, + "ovPayTokenId": 1, + "tokenTypeId": 1, + "lastDigits": null, + "OV pasNumber": null, + "alias": "Mijn token", + "tokenStatusId": 4, + "expirationDate": "2028-08-31T23:59:00+02:00", + "replacedByTokenId": null, + "autoReloadRegistration": null, + "ePurse": null, + "personalAccountData":{ + "name": null, + "birthDate": null, + "photo": null + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens?ovpaytokenId=5", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5/trips", + "method": "GET" + }, + "create_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/pad?ovpaytokenId=5", + "method": "POST" + } + } + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens", + "method": "POST" + } + } + } + Update an OV pay token alias: + summary: Update an OV pay token alias + description: Update an OV pay token alias + value: + { + "ovPayToken": { + "customerProfileId": 8, + "ovPayTokenId": 1, + "tokenTypeId": 1, + "lastDigits": null, + "OV pasNumber": null, + "alias": "Mijn nieuwe tokennaam", + "tokenStatusId": 2, + "expirationDate": "2028-08-31T23:59:00+02:00", + "replacedByTokenId": null, + "autoReloadRegistration": null, + "ePurse": null, + "personalAccountData":{ + "name": null, + "birthDate": null, + "photo": null + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens?ovpaytokenId=5", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5/trips", + "method": "GET" + }, + "create_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/pad?ovpaytokenId=5", + "method": "POST" + } + } + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens", + "method": "POST" + } + } + } + Update an OV pay token full: + summary: Update an OV pay token full + description: Update an OV pay token full + value: + { + "ovPayToken": { + "customerProfileId": 8, + "ovPayTokenId": 1, + "tokenTypeId": 1, + "lastDigits": null, + "OV pasNumber": null, + "alias": "Mijn verloren pas", + "tokenStatusId": 4, + "expirationDate": "2028-08-31T23:59:00+02:00", + "replacedByTokenId": null, + "autoReloadRegistration": null, + "ePurse": null, + "personalAccountData":{ + "name": null, + "birthDate": null, + "photo": null + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens?ovpaytokenId=5", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/5/trips", + "method": "GET" + }, + "create_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/pad?ovpaytokenId=5", + "method": "POST" + } + } + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens", + "method": "POST" + } + } + } + delete: + tags: + - Customers + parameters: + - name: X-HTM-JWT-AUTH-HEADER + in: header + schema: + type: string + example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c + required: false + description: The JWT of a customer in case of touchpoint were customer logs in themselves + - name: X-HTM-CUSTOMER-PROFILE-ID-HEADER + in: header + schema: + type: string + example: feaaef83-a551-4283-8419-340b1ada3b55 + required: false + description: The customerProfileId of a customer in the case of the SMP + - name: X-HTM-ROLE-HEADER + in: header + schema: + type: string + example: Customer + required: false + - name: ovpayTokenId + in: path + schema: + type: integer + example: 1 + required: true + summary: Delete an existing OV paytoken + description: Delete an existing OV paytoken for a given customer + responses: + "200": + description: Ok /customers/tokens/{ovPayTokenId}/productinstances: get: tags: