From 51386625566cb707404cd9a648fd605480bb0a1d Mon Sep 17 00:00:00 2001 From: Mirjam Herald Date: Thu, 27 Mar 2025 16:14:55 +0100 Subject: [PATCH] first version --- src/openapi/customers/SE-customers.yaml | 867 +++++++++++++++++++++++- 1 file changed, 836 insertions(+), 31 deletions(-) diff --git a/src/openapi/customers/SE-customers.yaml b/src/openapi/customers/SE-customers.yaml index 7238481..04494cf 100644 --- a/src/openapi/customers/SE-customers.yaml +++ b/src/openapi/customers/SE-customers.yaml @@ -4,11 +4,11 @@ info: description: >- Service Engine APIs for HTM Customers. These are NOT the CRUD APIs to access raw data in the database. To be used by touchpoints to get information about HTM customers. - version: 'x.x' + version: '1.0' servers: - - url: https://api.integratielaag.nl/abt/serviceengine/customers/x.x + - url: https://api.integratielaag.nl/v1/touchpoint tags: - - name: ServiceEngine Customers + - name: Customers description: >- Service Engine APIs for HTM Customers. These are NOT the CRUD APIs to access raw data in the database. To be used by touchpoints to get information about HTM customers. @@ -16,7 +16,7 @@ paths: /customers: get: tags: - - ServiceEngine Customers + - Customers summary: Get a single customer profile based on search parameters description: Get a single customer profile based on search parameters. Only returns a profile if a single result matches the parameters; when multiple results are found, additional seach parameters are required to disambiguate. parameters: @@ -145,7 +145,7 @@ paths: application/json: example: { - "type": "https://api.integratielaag.nl/abt/serviceengine/x.x/customers", + "type": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers", "apiErrorCode": "400.1", "title": "Niet gevonden", "detail": "Klant niet gevonden", @@ -162,7 +162,7 @@ paths: application/json: example: { - "type": "https://api.integratielaag.nl/abt/serviceengine/x.x/customers", + "type": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers", "apiErrorCode": "409.1", "title": "Meer dan 1 klantprofiel gevonden", "detail": "Meer dan 1 klantprofiel gevonden. Verfijn je zoekcriteria.", @@ -171,16 +171,819 @@ paths: /customers/tokens: get: tags: - - ServiceEngine Customers - summary: Get a list of all OvPayTokens for a certain customer - description: Get a list of all OvPayTokens for a certain customer. + - 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 + description: The role of the HTM employee in the case of the SMP + - name: ovpayTokenId + in: query + schema: + type: integer + example: 1 + required: false + description: The ovpaytoken id of a specific customer token + - name: tokenTypeId + in: query + schema: + type: array + items: + type: integer + explode: false + description: Filter on tokentype. 1 = EMV, 2 = OV-pas physical, 3 = OV-pas digital + required: false + - name: xTat + in: query + schema: + type: string + example: 4c2d60e2-cd03-4c80-ae70-573a301f0bff + required: false + description: Filter on the xTat of a customer token + - name: xBot + in: query + schema: + type: string + example: 91641b54-056c-49ea-b598-ccde81d6c45a + required: false + description: Filter on the xBot of a customer token + - name: ovPasNumber + in: query + schema: + type: string + example: 56HYRTL + required: false + description: Filter on the ovPasNumber of a customer token of type OV Pas + - name: lastDigits + in: query + schema: + type: string + example: 1234 + required: false + description: Filter on the last digits of a customer token of type EMV + - name: tokenStatusId + in: query + schema: + type: array + items: + type: integer + explode: false + description: Filter on token status. 1 = Expired, 2 = Active, 3 = Replaced, 4 = Inactive, 5 = Suspended, 6 = Removed by customer + required: false + - name: expirationDate + in: query + schema: + type: string + format: date-time + example: 2027-01-01T09:00:00Z + required: false + description: Filter on the expirationDate of a customer token + - name: replaceByTokenId + in: query + schema: + type: integer + example: 2 + required: false + description: Filter on the replaceByTokenId of a customer token + summary: Get a list of all OvPayTokens for a certain customer. + description: Get a list of all OvPayTokens for a certain customer, only returns the tokens for an identified customer through JWT or customerProfileId in the headers. responses: '200': description: OK content: application/json: schema: - $ref: '#/components/schemas/OvPayTokensResponse' + $ref: "#/components/schemas/unavailable" + examples: + EMV without PAD: + summary: EMV without PAD + description: EMV without PAD + value: + { + "ovPayTokens": [ + { + "ovPayTokenId": 1, + "tokenType": { + "tokenTypeId": 1, + "name": "EMV" + }, + "alias": "MyToken", + "tokenStatus": { + "tokenStatusId": 1, + "name": "Active" + }, + "expirationDate": "2023-02-01", + "replacedByTokenId": 2, + "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=1", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/replace", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/trips", + "method": "GET" + }, + "create_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/tokenPersonalizations?ovpaytokenId=1", + "method": "POST" + } + } + } + ] + } + OVPAS without PAD: + summary: OVPAS without PAD + description: OVPAS without PAD + value: + { + "ovPayTokens": [ + { + "ovPayTokenId": 1, + "tokenType": { + "tokenTypeId": 2, + "name": "OV-pas physical" + }, + "alias": "MyToken", + "tokenStatus": { + "tokenStatusId": 1, + "name": "Active" + }, + "expirationDate": "2023-02-01", + "replacedByTokenId": 2, + "autoReloadRegistration": null, + "ePurse": { + "e-PurseBalance": { + "currency": "EUR", + "amount": 350 + }, + "status": "ACTIVE", + "originDate": "2019-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=1", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/replace", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/trips", + "method": "GET" + }, + "create_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/pad?ovpaytokenId=1", + "method": "POST" + } + } + } + ] + } + OVPAS with PAD: + summary: OVPAS with PAD + description: OVPAS with PAD + value: + { + "ovPayTokens": [ + { + "ovPayTokenId": 1, + "tokenType": { + "tokenTypeId": 2, + "name": "OV-pas physical" + }, + "alias": "MyToken", + "tokenStatus": { + "tokenStatusId": 1, + "name": "Active" + }, + "expirationDate": "2023-02-01", + "replacedByTokenId": 2, + "autoReloadRegistration": { + "autoReloadAmount": 500, + "retailerReferenceId": "abc", + "arrit": "425f7fc2-1103-4822-9c79-7c4aaa2fb6aa", + "autoReloadRegistrationStatus": "ACTIVE", + "autoReloadRegistrationStartDateTime": "2024-06-02T15:03:46Z" + }, + "ePurse": { + "e-PurseBalance": { + "currency": "EUR", + "amount": 350 + }, + "status": "ACTIVE", + "originDate": "2019-07-16T11:00:00+02:00" + }, + "personalAccountData":{ + "name": { + "inaccuracyFlag": false, + "inaccuracyFlagReason": null, + "inaccuracyFlagSetCounter": 0, + "isValidated": false, + "changeCounter": 0, + "maxUpdatesVerificationCount": 0, + "lastChangeDate": "2019-08-24T14:15:22Z" + }, + "birthDate": { + "inaccuracyFlag": false, + "inaccuracyFlagReason": null, + "inaccuracyFlagSetCounter": 0, + "isValidated": false, + "changeCounter": 0, + "maxUpdatesVerificationCount": 0, + "lastChangeDate": "2019-08-24T14:15:22Z" + }, + "photo": { + "inaccuracyFlag": false, + "inaccuracyFlagReason": null, + "inaccuracyFlagSetCounter": 0, + "isValidated": false, + "changeCounter": 0, + "maxUpdatesVerificationCount": 0, + "lastChangeDate": "2019-08-24T14:15:22Z" + } + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens?ovpaytokenId=1", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/replace", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/trips", + "method": "GET" + }, + "update_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/pad?ovpaytokenId=1", + "method": "PUT" + } + } + } + ] + } + OVPAS with partial PAD: + summary: OVPAS with partial PAD + description: OVPAS with partial PAD + value: + { + "ovPayTokens": [ + { + "ovPayTokenId": 1, + "tokenType": { + "tokenTypeId": 2, + "name": "OV-pas physical" + }, + "alias": "MyToken", + "tokenStatus": { + "tokenStatusId": 1, + "name": "Active" + }, + "expirationDate": "2023-02-01", + "replacedByTokenId": 2, + "autoReloadRegistration": null, + "ePurse": { + "e-PurseBalance": { + "currency": "EUR", + "amount": 350 + }, + "status": "ACTIVE", + "originDate": "2019-07-16T11:00:00+02:00" + }, + "personalAccountData":{ + "name": { + "inaccuracyFlag": false, + "inaccuracyFlagReason": null, + "inaccuracyFlagSetCounter": 0, + "isValidated": false, + "changeCounter": 0, + "maxUpdatesVerificationCount": 0, + "lastChangeDate": "2019-08-24T14:15:22Z" + }, + "birthDate": { + "inaccuracyFlag": true, + "inaccuracyFlagReason": "Invalid birthDate", + "inaccuracyFlagSetCounter": 1, + "isValidated": false, + "changeCounter": 0, + "maxUpdatesVerificationCount": 0, + "lastChangeDate": "2019-08-24T14:15:22Z" + }, + "photo": { + "inaccuracyFlag": false, + "inaccuracyFlagReason": null, + "inaccuracyFlagSetCounter": 0, + "isValidated": false, + "changeCounter": 0, + "maxUpdatesVerificationCount": 0, + "lastChangeDate": "2019-08-24T14:15:22Z" + } + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens?ovpaytokenId=1", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/replace", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/trips", + "method": "GET" + }, + "update_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/pad?ovpaytokenId=1", + "method": "PUT" + } + } + } + ] + } + OVPAS with invalid PAD: + summary: OVPAS with invalid PAD + description: OVPAS with invalid PAD + value: + { + "ovPayTokens": [ + { + "ovPayTokenId": 1, + "tokenType": { + "tokenTypeId": 2, + "name": "OV-pas physical" + }, + "alias": "MyToken", + "tokenStatus": { + "tokenStatusId": 1, + "name": "Active" + }, + "expirationDate": "2023-02-01", + "replacedByTokenId": 2, + "autoReloadRegistration": null, + "ePurse": { + "e-PurseBalance": { + "currency": "EUR", + "amount": 350 + }, + "status": "ACTIVE", + "originDate": "2019-07-16T11:00:00+02:00" + }, + "personalAccountData":{ + "name": { + "inaccuracyFlag": true, + "inaccuracyFlagReason": "T.B.D", + "inaccuracyFlagSetCounter": 1, + "isValidated": false, + "changeCounter": 0, + "maxUpdatesVerificationCount": 0, + "lastChangeDate": "2019-08-24T14:15:22Z" + }, + "birthDate": { + "inaccuracyFlag": true, + "inaccuracyFlagReason": "T.B.D", + "inaccuracyFlagSetCounter": 1, + "isValidated": false, + "changeCounter": 0, + "maxUpdatesVerificationCount": 0, + "lastChangeDate": "2019-08-24T14:15:22Z" + }, + "photo": { + "inaccuracyFlag": true, + "inaccuracyFlagReason": "T.B.D", + "inaccuracyFlagSetCounter": 1, + "isValidated": false, + "changeCounter": 0, + "maxUpdatesVerificationCount": 0, + "lastChangeDate": "2019-08-24T14:15:22Z" + } + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens?ovpaytokenId=1", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/replace", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/trips", + "method": "GET" + }, + "update_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/pad?ovpaytokenId=1", + "method": "PUT" + } + } + } + ] + } + post: + 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 + summary: Create a new OV paytoken in the database for a given customer + description: Create a new OV paytoken for a customerProfile + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/unavailable" + examples: + Add EMV token: + summary: Add EMV token + description: Add EMV token + value: + { + "ovPayToken": { + "tokenTypeId": 1, + "serviceReferenceId": "NLOV1234567ABCDEFG", + "amount": 200, + "alias": "Mijn token" + } + } + Add OVpas physical token: + summary: Add OVpas physical token + description: Add OVpas physical token + value: + { + "ovPayToken": { + "tokenTypeId": 2, + "ovpasNumber": "OV34567", + "verificationCode": "211", + "alias": "Mijn token" + } + } + responses: + "201": + description: Created + content: + application/json: + schema: + $ref: "#/components/schemas/unavailable" + examples: + Add EMV token: + summary: Add EMV token + description: Add EMV token + value: + { + "ovPayToken": { + "customerProfileId": 8, + "ovPayTokenId": 1, + "tokenTypeId": 1, + "lastDigits": null, + "ovpasNumber": null, + "alias": "Mijn token", + "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=1", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/replace", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/trips", + "method": "GET" + }, + "create_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/pad?ovpaytokenId=1", + "method": "POST" + } + } + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens", + "method": "POST" + } + } + } + Add OVpas physical token: + summary: Add EMV token + description: Add EMV token + value: + { + "ovPayToken": { + "customerProfileId": 8, + "ovPayTokenId": 1, + "tokenTypeId": 2, + "lastDigits": null, + "ovpasNumber": "OV34567", + "alias": "Mijn token", + "tokenStatusId": 2, + "expirationDate": "2028-08-31T23:59:00+02:00", + "replacedByTokenId": null, + "autoReloadRegistration": null, + "ePurse": { + "e-PurseBalance": { + "currency": "EUR", + "amount": 00 + }, + "status": "INACTIVE", + "originDate": "2019-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=1", + "method": "GET" + }, + "partial_edit": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "PATCH" + }, + "replace_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/replace", + "method": "POST" + }, + "delete_token": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1", + "method": "DELETE" + }, + "get_productinstances": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/productinstances", + "method": "GET" + }, + "get_trips": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/trips", + "method": "GET" + }, + "create_tokenPersonalization": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/pad?ovpaytokenId=1", + "method": "POST" + } + } + }, + "_links": { + "self": { + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens", + "method": "POST" + } + } + } + /customers/tokens/{ovpayTokenId}: + post: + 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: Replace an OV paytoken for a customerProfile + description: Replace an OV paytoken in the database for a given customer with another token + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/unavailable" + examples: + Replace with new EMV token: + summary: Replace with new token + description: Replace with new token + value: + { + "ovPayToken": { + "newTokenId": null, + "tokenTypeId": 1, + "serviceReferenceId": "NLOV1234567ABCDEFG", + "amount": 230, + "alias": "Nieuw token" + } + } + responses: + "201": + description: Created + content: + application/json: + schema: + $ref: "#/components/schemas/unavailable" + examples: + Replace with new EMV token: + summary: Replace with new EMV token + description: Replace with new EMV token + value: + { + "ovPayToken": { + "customerProfileId": 8, + "ovPayTokenId": 5, + "tokenTypeId": 1, + "lastDigits": null, + "ovpasNumber": null, + "alias": "Mijn token", + "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/replace", + "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" + } + } + } /customers/tokens/{ovPayTokenId}/productinstances: get: tags: @@ -232,15 +1035,15 @@ paths: "contractId": "56B17EF-C436-9043-B76C-481797WEB464F", "_links": { "self": { - "href": "https://api.integratielaag.nl/abt/serviceengine/x.x/customers/tokens/1/productinstances/1", + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/productinstances/1", "method": "GET" }, "get_order": { - "href": "https://api.integratielaag.nl/abt/serviceengine/x.x/orders/501B17EF-36C4-4039-B92C-6517969B464E", + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/orders/501B17EF-36C4-4039-B92C-6517969B464E", "method": "GET" }, "get_contract": { - "href": "https://api.integratielaag.nl/abt/serviceengine/x.x/customers/contracts/56B17EF-C436-9043-B76C-481797WEB464F", + "href": "https://api.integratielaag.nl/abt/1.0/touchpoint/customers/contracts/56B17EF-C436-9043-B76C-481797WEB464F", "method": "GET" } } @@ -249,6 +1052,8 @@ paths: } components: schemas: + unavailable: + type: object CustomersResponse: type: object properties: @@ -348,7 +1153,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/addresses/1 + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/addresses/1 method: type: string example: GET @@ -357,7 +1162,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/addresses/1 + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/addresses/1 method: type: string example: DELETE @@ -395,7 +1200,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/phones/1 + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/phones/1 method: type: string example: GET @@ -404,7 +1209,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/phones/1 + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/phones/1 method: type: string example: DELETE @@ -416,7 +1221,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers method: type: string example: GET @@ -426,7 +1231,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/statuses + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/statuses method: type: string example: POST @@ -435,7 +1240,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers method: type: string example: PATCH @@ -444,7 +1249,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/tokens + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens method: type: string example: GET @@ -453,7 +1258,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/tokens + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens method: type: string example: POST @@ -506,7 +1311,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/tokens/1 + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1 method: type: string example: GET @@ -516,7 +1321,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/tokens/1 + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1 method: type: string example: PATCH @@ -525,7 +1330,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/tokens/1/replace + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/replace method: type: string example: POST @@ -534,7 +1339,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/tokens/1 + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1 method: type: string example: DELETE @@ -543,7 +1348,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/tokens/1/productinstances + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/productinstances method: type: string example: GET @@ -552,7 +1357,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/tokens/1/trips + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/trips method: type: string example: GET @@ -618,7 +1423,7 @@ components: properties: href: type: string - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/tokens/1/productinstances + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/tokens/1/productinstances method: type: string example: GET @@ -628,7 +1433,7 @@ components: href: type: string description: Always present for any HTM product-instance - example: https://api.integratielaag.nl/abt/serviceengine/x.x/orders/501B17EF-36C4-4039-B92C-6517969B464E + example: https://api.integratielaag.nl/abt/1.0/touchpoint/orders/501B17EF-36C4-4039-B92C-6517969B464E method: type: string example: GET @@ -638,7 +1443,7 @@ components: href: type: string description: Only present for subscriptions/contracts - example: https://api.integratielaag.nl/abt/serviceengine/x.x/customers/contracts/56B17EF-C436-9043-B76C-481797WEB464F + example: https://api.integratielaag.nl/abt/1.0/touchpoint/customers/contracts/56B17EF-C436-9043-B76C-481797WEB464F method: type: string example: GET