From 028f970130f0cc32f5b0d7e8a976203a8a526fda Mon Sep 17 00:00:00 2001 From: Mirjam Herald Date: Mon, 17 Feb 2025 14:22:39 +0100 Subject: [PATCH] tokens --- src/openapi/customers/customers-crud-v2.yaml | 389 +++++++++++++++++-- 1 file changed, 365 insertions(+), 24 deletions(-) diff --git a/src/openapi/customers/customers-crud-v2.yaml b/src/openapi/customers/customers-crud-v2.yaml index 6b353ad..69bb821 100644 --- a/src/openapi/customers/customers-crud-v2.yaml +++ b/src/openapi/customers/customers-crud-v2.yaml @@ -74,7 +74,7 @@ paths: isPreferred: false required: true responses: - "201": + 201: description: Successful created a customer profile content: application/json: @@ -88,7 +88,7 @@ paths: value: customerProfileId: 1 customerNumber: 1000001 - "400": + 400: description: Bad Request content: application/json: @@ -801,7 +801,7 @@ paths: debtorStatusId: 2 required: true responses: - "201": + 201: description: Successfully modified a customer content: application/json: @@ -837,7 +837,7 @@ paths: customerStatusId: 2 required: true responses: - "201": + 201: description: Successfully created a customer Status content: application/json: @@ -873,7 +873,7 @@ paths: languageId: 1 required: true responses: - "201": + 201: description: Successfully created a customer preference content: application/json: @@ -909,7 +909,7 @@ paths: languageId: 1 required: true responses: - "200": + 200: description: Successfully modified a customer preference content: application/json: @@ -952,7 +952,7 @@ paths: isPreferred: true required: true responses: - "201": + 201: description: Successfully created a customer address content: application/json: @@ -988,7 +988,7 @@ paths: addressTypeId: 2 required: true responses: - "200": + 200: description: Successfully modified a customer Address content: application/json: @@ -1012,7 +1012,7 @@ paths: type: integer example: 2 responses: - "200": + 200: description: Successfully deleted a customer Address content: application/json: @@ -1039,7 +1039,7 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/postPhoneEntity" + $ref: "#/components/schemas/phoneEntity" examples: customerPhone: value: @@ -1050,7 +1050,7 @@ paths: isPreferred: true required: true responses: - "201": + 201: description: Successfully created a customer phonenumber content: application/json: @@ -1078,7 +1078,7 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/patchPhoneEntity" + $ref: "#/components/schemas/phoneEntity" examples: updatePhoneTypeId: value: @@ -1086,7 +1086,7 @@ paths: phoneTypeId: 2 required: true responses: - "200": + 200: description: Successfully modified a customer phonenumber content: application/json: @@ -1110,7 +1110,7 @@ paths: type: integer example: 2 responses: - "200": + 200: description: Successfully deleted a customer phonenumber content: application/json: @@ -1119,10 +1119,347 @@ paths: - default: [] x-auth-type: Application & Application User x-throttling-tier: Unlimited + /customers/{customerProfileId}/ovpaytokens: + post: + tags: + - Ovpay Token + summary: Create a new OVpay token + description: >- + + parameters: + - name: customerProfileId + in: path + required: true + schema: + type: integer + example: 1 + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ovPayTokenEntity" + examples: + EMV token: + value: + ovpaytoken: + tokenTypeId: 1 + xTat: 0115b0df-db38-4702-8811-6f7de00db3ac + xBot: 71a88843-32b8-4d52-ac25-de2458c47775 + alias: Mijn Rabo Pas + tokenStatusId: 2 + expirationDate: "2026-04-20T17:05:52.000+02:00" + OVpas token physical: + value: + ovpaytoken: + tokenTypeId: 2 + xTat: 0115b0df-db38-4702-8811-6f7de00db3ac + xBot: 71a88843-32b8-4d52-ac25-de2458c47775 + alias: Mijn OV Pas + ovpasNumber: 4048453105891361 + tokenStatusId: 2 + expirationDate: "2026-04-20T17:05:52.000+02:00" + required: true + responses: + 201: + description: Successfully created a customer ovpaytoken + content: + application/json: + schema: + $ref: "#/components/schemas/postOvPayTokenResponse" + security: + - default: [] + x-auth-type: Application & Application User + x-throttling-tier: Unlimited + /ovpaytokens/{ovpaytokenId}: + patch: + tags: + - Ovpay Token + summary: Create a new OVpay token + description: >- + + parameters: + - name: ovpaytokenId + in: path + required: true + schema: + type: integer + example: 1 + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ovPayTokenEntity" + examples: + updateTokenAlias: + value: + ovpaytoken: + alias: "ING pas mobiel" + updateTokenStatus to removed: + value: + ovpaytoken: + tokenStatusId: 6 + replaceToken: + value: + ovpaytoken: + tokenStatusId: 3 + replacedByTokenId: 8 + required: true + responses: + 200: + description: Successfully updated a customer ovpaytoken + content: + application/json: + schema: + $ref: "#/components/schemas/postOvPayTokenResponse" + security: + - default: [] + x-auth-type: Application & Application User + x-throttling-tier: Unlimited + delete: + tags: + - Ovpay Token + summary: Delete an Ovpay token + description: >- + + parameters: + - name: ovpaytokenId + in: path + required: true + schema: + type: integer + example: 2 + responses: + 200: + description: Successfully deleted a customer ovpaytoken + content: + application/json: + {} + security: + - default: [] + x-auth-type: Application & Application User + x-throttling-tier: Unlimited /ovpaytokens: get: tags: - - Token + - Ovpay Token + summary: Find OVpay tokens. + description: Find OVpay tokens. + parameters: + - in: query + name: ovPayTokenId + schema: + type: integer + example: 71 + required: false + description: The id of the token. + - in: query + name: customerProfileId + schema: + type: integer + example: 12 + required: false + description: The id of the customer profile. + - in: query + name: tokenTypeId + schema: + type: array + items: + type: integer + example: [1, 2] + explode: false + required: false + description: Filter on possible token types. 1 = EMV, 2 = OV-pas physical, 3 = OV-pas digital. + - in: query + name: xTat + schema: + type: string + format: uuid + example: 700b0516-bf8b-4e6e-bf16-13bfeb078e23 + explode: false + required: false + description: The XTAT of the token. + - in: query + name: xBot + schema: + type: string + format: uuid + example: de1a9a7a-a777-4473-889c-44a3bb07daae + explode: false + required: false + description: The XBOT of the token. + - in: query + name: alias + schema: + type: string + example: Mijn OV-pas + required: false + description: The alias of the token. + - in: query + name: lastDigits + schema: + type: integer + example: 3301 + required: false + description: The last digits of the token. + - in: query + name: ovpasNumber + schema: + type: string + example: 63AW974 + required: false + description: Number of the OVpas. + - in: query + name: tokenStatusId + schema: + type: array + items: + type: integer + example: [1, 2] + explode: false + required: false + description: Filter on possible token statuses. 1 = expired, 2 = active, 3 = replaced, 4 = inactive, 5 = suspended, 6 = removed by customer. + - in: query + name: expirationDate + schema: + type: string + format: date-time + example: 2029-03-22T09:00:00 + required: false + description: The expiration date of the token. + - in: query + name: replacedByTokenId + schema: + type: integer + example: 12 + required: false + description: The id of the token that replaced this token. + responses: + 200: + description: OK + content: + application/json: + schema: + $ref: "#/components/schemas/unavailable" + example: + { + "ovPayTokens": + [ + { + "ovPayTokenId": 71, + "customerProfileId": 12, + "tokenType": + { "tokenTypeId": 2, "name": "OV-pas physical" }, + "xTat": "700b0516-bf8b-4e6e-bf16-13bfeb078e23", + "xBot": "de1a9a7a-a777-4473-889c-44a3bb07daae", + "alias": "Mijn OV-pas", + "lastDigits": 3301, + "ovpasNumber": "63AW974", + "tokenStatus": { "tokenStatusId": 2, "name": "Active" }, + "expirationDate": "2029-03-22T09:00:00", + "replacedByTokenId": 12, + }, + ], + "href": null, + } + /customers/{customerProfileId}/ovchipcards: + post: + tags: + - Ovchipcard + summary: Create a new OVchipcard + description: >- + + parameters: + - name: customerProfileId + in: path + required: true + schema: + type: integer + example: 1 + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ovChipcardEntity" + examples: + ovChipcards: + value: + ovChipcard: + chipCardNumber: 1234123412341234 + validUntil: "2027-01-01" + alias: Mijn chipkaart + required: true + responses: + 201: + description: Successfully created a customer ovchipcard + content: + application/json: + schema: + $ref: "#/components/schemas/postOvChipCardResponse" + security: + - default: [] + x-auth-type: Application & Application User + x-throttling-tier: Unlimited + /ovchipcards/{ovchipcardId}: + patch: + tags: + - Ovchipcard + summary: Update an ovchipcard + description: >- + + parameters: + - name: ovchipcardId + in: path + required: true + schema: + type: integer + example: 1 + requestBody: + content: + application/json: + schema: + $ref: "#/components/schemas/ovChipcardEntity" + examples: + updateOvChipCardAlias: + value: + ovChipCard: + alias: "Zoon 1 chipkaart" + required: true + responses: + 200: + description: Successfully updated a customer ovchipcard + content: + application/json: + schema: + $ref: "#/components/schemas/postOvChipCardResponse" + security: + - default: [] + x-auth-type: Application & Application User + x-throttling-tier: Unlimited + delete: + tags: + - Ovchipcard + summary: Delete an Ovpay token + description: >- + + parameters: + - name: ovpaytokenId + in: path + required: true + schema: + type: integer + example: 2 + responses: + 200: + description: Successfully deleted a customer ovpaytoken + content: + application/json: + {} + security: + - default: [] + x-auth-type: Application & Application User + x-throttling-tier: Unlimited + tags: + - Ovpay Token summary: Find OVpay tokens. description: Find OVpay tokens. parameters: @@ -1633,6 +1970,16 @@ components: type: string replacedByTokenId: type: integer + ovChipcardEntity: + type: object + properties: + chipCardNumber: + type: integer + validUntil: + type: string + format: date + alias: + type: string personEntity: type: object properties: @@ -1690,7 +2037,7 @@ components: type: integer isPreferred: type: boolean - patchPhoneEntity: + phoneEntity: type: object properties: number: @@ -1819,12 +2166,9 @@ components: directDebitMandateId: type: integer example: 1 - postCustomerProfileOvChipCardResponse: + postOvChipCardResponse: type: object properties: - customerNumber: - type: integer - example: 10000001 ovChipCardId: type: integer example: 1 @@ -1892,12 +2236,9 @@ components: type: array items: $ref: "#/components/schemas/ovPayTokenGetEntity" - postCustomerProfileOvPayTokenResponse: + postOvPayTokenResponse: type: object properties: - ovPaytoken: - type: object - example: 10000001 ovPayTokenId: type: integer example: 1