From 6526db8a1de8412ee16b5dd22fad012531912f69 Mon Sep 17 00:00:00 2001 From: Mirjam Herald Date: Wed, 18 Dec 2024 21:28:12 +0100 Subject: [PATCH] updated get customer list + get customer to include all query params and correct ref objects in response --- src/openapi/customers/customers-crud-v2.yaml | 2325 ++++-------------- 1 file changed, 521 insertions(+), 1804 deletions(-) diff --git a/src/openapi/customers/customers-crud-v2.yaml b/src/openapi/customers/customers-crud-v2.yaml index e3e2650..6d717a6 100644 --- a/src/openapi/customers/customers-crud-v2.yaml +++ b/src/openapi/customers/customers-crud-v2.yaml @@ -3,144 +3,141 @@ info: title: ABT Customers CRUD APIs v2 version: "1.0" description: CRUD APIs for ABT Customer database. These are NOT the functional APIs from Service Engine. -servers: +servers: - url: https://api.integratielaag.nl/v2 paths: /customers/list: get: tags: - ABTCustomers - summary: Search for customer profile list + summary: Search for customer profiles description: >- - search for a customer profile list in the ABT database with query - parameters + Search for all customer profile list in the ABT database matching certain query parameters parameters: - name: customerProfileId - in: query - required: false - style: form - explode: true + in: query schema: - type: number + type: integer + example: 1 - name: customerNumber in: query - required: false - style: form - explode: true schema: - type: number - - name: emailAddress + type: integer + example: 1000001 + - name: customerStatusId in: query - required: false - style: form - explode: true schema: - type: string - - name: chipCardNumber + type: integer + example: 1 + - name: debtorNumber in: query - required: false - style: form - explode: true schema: - type: string - - name: ovPasNumber + type: integer + example: 100001 + - name: debtorStatusId in: query - required: false - style: form - explode: true schema: - type: string - - name: phoneNumber - in: query - required: false - style: form - explode: true - schema: - type: string - - name: phoneCountryCode - in: query - required: false - style: form - explode: true - schema: - type: string - - name: addressStreet - in: query - required: false - style: form - explode: true - schema: - type: string - - name: addressHouseNumber - in: query - required: false - style: form - explode: true - schema: - type: number - - name: addressHouseNumberSuffix - in: query - required: false - style: form - explode: true - schema: - type: string - - name: addressPostalCode - in: query - required: false - style: form - explode: true - schema: - type: string - - name: addressCity - in: query - required: false - style: form - explode: true - schema: - type: string - - name: addressCountry - in: query - required: false - style: form - explode: true - schema: - type: string + type: integer + example: 1 - name: birthname in: query - required: false - style: form - explode: true schema: type: string + example: John - name: surname in: query - required: false - style: form - explode: true schema: type: string + example: Doe + - name: emailAddress + in: query + schema: + type: string + format: email + example: john.doe@mymailprovider.com - name: dateOfBirth in: query - required: false - style: form - explode: true schema: type: string - - name: customerStatus + format: date + example: "2000-01-01" + - name: addressStreet in: query - required: false - style: form - explode: true schema: type: string + example: Sesamestreet + - name: addressHouseNumber + in: query + schema: + type: integer + example: 1 + - name: addressHouseNumberSuffix + in: query + schema: + type: string + example: A + - name: addressPostalCode + in: query + schema: + type: string + example: 1234 AB + - name: addressCity + in: query + schema: + type: string + example: The Hague + - name: addressCountry + in: query + schema: + type: string + example: The Netherlands + - name: phoneNumber + in: query + schema: + type: string + example: "0123456789" + - name: phoneCountryCode + in: query + schema: + type: string + example: "+31" + - name: ovChipcardNumber + in: query + schema: + type: integer + example: 0123456789 + - name: ovChipcardAlias + in: query + schema: + type: string + example: My ovchipcard + - name: ovPayTokenNumber + in: query + schema: + type: integer + example: 0123456789 + - name: ovPayTokenAlias + in: query + schema: + type: string + example: My Ov Pay Token + - name: ovPayTokenXTat + in: query + schema: + type: string + example: 180d04e0-a721-447e-a1d9-b416937b43bc + - name: ovPayTokenXBot + in: query + schema: + type: string + example: e1307c73-676a-4d07-967b-6141276f7c7c responses: - '200': + "200": description: Successful retrieved a customer profile content: application/json: schema: - $ref: '#/components/schemas/getCustomerProfileList' + $ref: "#/components/schemas/getCustomerProfileList" examples: fullCustomerProfile: value: @@ -148,23 +145,29 @@ paths: - customerProfileId: 1 customerNumber: 1000001 debtorNumber: TEST001 - debtorStateId: 1 + debtorStatus: + debtorStatusId: 1 + name: Inactive vascustomerNumber: CST005 customerPreference: languageId: 1 - customerStatus: - - name: active - fromInclusive: '2022-08-04 15:01:00.000' - toInclusive: '2022-08-05 15:01:00.000' - - name: blocked - fromInclusive: '2022-08-05 15:01:00.000' + customerStatusInstance: + - customerStatus: + name: Active + customerStatusId: 2 + fromInclusive: "2022-08-04 15:01:00.000" + toInclusive: "2022-08-05 15:01:00.000" + - customerStatus: + name: Blocked + customerStatusId: 3 + fromInclusive: "2022-08-05 15:01:00.000" toInclusive: null person: birthname: Pieter surname: De valen prefix: dhr suffix: De - dateOfBirth: '2002-10-29' + dateOfBirth: "2002-10-29" emailAddress: TEST@HTM.NL address: - addressId: 1 @@ -174,8 +177,10 @@ paths: postalCode: 0000AA city: Den Haag country: NL - isPreferred: true - addressType: Office + isPreferred: false + addressType: + addressTypeId: 2 + name: Office - addressId: 2 street: mystreet 33 houseNumber: 1 @@ -184,74 +189,95 @@ paths: city: Den BOSCH country: NL isPreferred: true - addressType: Office + addressType: + addressTypeId: 2 + name: Office phone: - phoneId: 1 - number: '3112345678' + number: "3112345678" countryCode: NL - phoneType: TestNaam + phoneType: + phoneTypeId: 1 + name: Home isPreferred: true - phoneId: 2 - number: '333225588' + number: "333225588" countryCode: ES - phoneType: TestNaam + phoneType: + phoneTypeId: 2 + name: Work isPreferred: false - ovChipCard: + ovChipCard: - ovChipCardId: 1 chipCardNumber: 1234123412341234 - validUntil: '2023-01-01' + validUntil: "2023-01-01" alias: alias - ovChipCardId: 2 chipCardNumber: 1234123412341235 - validUntil: '2025-01-01' + validUntil: "2025-01-01" alias: alias - ovPayToken: + ovPayToken: - ovPayTokenId: 126 - tokenTypeId: 1 + tokenType: + tokenTypeId: 1 + name: EMV xTat: twioq73033 xBot: hjihwqui27 alias: alias - lastDigits: '5678' - ovpasNumber: OV34567 - tokenStatusId: 1 - expirationDate: '2025-04-20T17:05:52.000+02:00' + lastDigits: "5678" + ovpasNumber: null + tokenStatus: + tokenStatusId: 2 + name: Active + expirationDate: "2025-04-20T17:05:52.000+02:00" replacedByTokenId: 1 - ovPayTokenId: 127 - tokenTypeId: 1 + tokenType: + tokenTypeId: 2 + name: OV-pas physical xTat: hhe2830283 xBot: jdhd828033 alias: alias - lastDigits: '5674' - ovpasNumber: OV34568 - tokenStatusId: 1 - expirationDate: '2024-04-20T17:05:52.000+02:00' + lastDigits: "5674" + ovpasNumber: OV34568 + tokenStatus: + tokenStatusId: 2 + name: Active + expirationDate: "2024-04-20T17:05:52.000+02:00" replacedByTokenId: 2 - audit: + audit: - auditTrailId: 1 customerProfileId: 1 action: insert user: user - timestamp: '2023-10-20T17:05:52.000+02:00' + timestamp: "2023-10-20T17:05:52.000+02:00" correlationId: 01c6d8b4-1cd3-4f9b-85ea-c9adca53ce95 - - customerNumber: 1000002 + - customerProfileId: 2 + customerNumber: 1000002 debtorNumber: TEST001 - debtorStateId: 1 + debtorStatus: + debtorStatusId: 1 + name: Inactive vascustomerNumber: CST005 customerPreference: languageId: 1 - customerStatus: - - name: active - fromInclusive: '2022-08-04 15:01:00.000' - toInclusive: '2022-08-05 15:01:00.000' - - name: blocked - fromInclusive: '2022-08-05 15:01:00.000' + customerStatusInstance: + - customerStatus: + name: Active + customerStatusId: 2 + fromInclusive: "2022-08-04 15:01:00.000" + toInclusive: "2022-08-05 15:01:00.000" + - customerStatus: + name: Blocked + customerStatusId: 3 + fromInclusive: "2022-08-05 15:01:00.000" toInclusive: null person: birthname: Pieter surname: De valen prefix: dhr suffix: De - dateOfBirth: '2002-10-29' + dateOfBirth: "2002-10-29" emailAddress: TEST@HTM.NL address: - addressId: 1 @@ -261,8 +287,10 @@ paths: postalCode: 0000AA city: Den Haag country: NL - isPreferred: true - addressType: Office + isPreferred: false + addressType: + addressTypeId: 2 + name: Office - addressId: 2 street: mystreet 33 houseNumber: 1 @@ -271,165 +299,94 @@ paths: city: Den BOSCH country: NL isPreferred: true - addressType: Office + addressType: + addressTypeId: 2 + name: Office phone: - phoneId: 1 - number: '3112345678' + number: "3112345678" countryCode: NL - phoneType: TestNaam + phoneType: + phoneTypeId: 1 + name: Home isPreferred: true - phoneId: 2 - number: '333225588' + number: "333225588" countryCode: ES - phoneType: TestNaam + phoneType: + phoneTypeId: 2 + name: Work isPreferred: false - ovChipCard: + ovChipCard: - ovChipCardId: 1 chipCardNumber: 1234123412341234 - validUntil: '2023-01-01' + validUntil: "2023-01-01" alias: alias - ovChipCardId: 2 chipCardNumber: 1234123412341235 - validUntil: '2025-01-01' + validUntil: "2025-01-01" alias: alias - ovPayToken: + ovPayToken: - ovPayTokenId: 126 - tokenTypeId: 1 + tokenType: + tokenTypeId: 2 + name: OV-pas physical xTat: twioq73033 xBot: hjihwqui27 alias: alias - lastDigits: '5678' + lastDigits: "5678" ovpasNumber: OV34567 - tokenStatusId: 1 - expirationDate: '2025-04-20T17:05:52.000+02:00' + tokenStatus: + tokenStatusId: 2 + name: active + expirationDate: "2025-04-20T17:05:52.000+02:00" replacedByTokenId: 1 - ovPayTokenId: 127 - tokenTypeId: 1 + tokenType: + tokenTypeId: 2 + name: OV-pas physical xTat: hhe2830283 xBot: jdhd828033 alias: alias - lastDigits: '5674' + lastDigits: "5674" ovpasNumber: OV34568 - tokenStatusId: 1 - expirationDate: '2024-04-20T17:05:52.000+02:00' + tokenStatus: + tokenStatusId: 2 + name: active + expirationDate: "2024-04-20T17:05:52.000+02:00" replacedByTokenId: 2 - audit: + audit: - auditTrailId: 1 customerProfileId: 1 action: insert user: user - timestamp: '2023-10-20T17:05:52.000+02:00' + timestamp: "2023-10-20T17:05:52.000+02:00" correlationId: 01c6d8b4-1cd3-4f9b-85ea-c9adca53ce95 href: null - minimumCustomerProfile: - value: - Entries: - - customerNumber: 1000008 - debtorNumber: null - debtorStateId: null - vascustomerNumber: null - customerPreference: - languageId: null - customerStatus: - - name: active - fromInclusive: '2022-08-04 15:01:00.000' - toInclusive: null - person: - birthname: null - surname: null - prefix: null - suffix: null - dateOfBirth: null - emailAddress: TEST@TEST1.NL - address: [] - phone: [] - ovChipCard: [] - ovPayToken: [] - audit: [] - missingPersonDetailsCustomerProfile: - value: - Entries: - - emailAddress: TEST04@HTM.NL - customerNumber: 1000005 - debtorNumber: TEST004 - debtorStateId: 1 - vascustomerNumber: CST005 - customerPreference: - languageId: 1 - customerStatus: - - name: inactive - fromInclusive: '2022-08-04 15:01:00.000' - toInclusive: null - person: - birthname: Sophie - surname: Haardenburg - prefix: Mw - suffix: null - dateOfBirth: 1955-09-05+01:00 - emailAddress: TEST@TEST1.NL - address: [] - phone: [] - ovChipCard: - - ovChipCardId: 1 - chipCardNumber: 1234123412341234 - validUntil: '2023-01-01' - alias: alias - - ovChipCardId: 2 - chipCardNumber: 1234123412341235 - validUntil: '2025-01-01' - alias: alias - ovPayToken: - - ovPayTokenId: 126 - tokenTypeId: 1 - xTat: twioq73033 - xBot: hjihwqui27 - alias: alias - lastDigits: '5678' - ovpasNumber: OV34567 - tokenStatusId: 1 - expirationDate: '2025-04-20T17:05:52.000+02:00' - replacedByTokenId: 1 - - ovPayTokenId: 127 - tokenTypeId: 1 - xTat: hhe2830283 - xBot: jdhd828033 - alias: alias - lastDigits: '5674' - ovpasNumber: OV34568 - tokenStatusId: 1 - expirationDate: '2024-04-20T17:05:52.000+02:00' - replacedByTokenId: 2 - audit: - - auditTrailId: 1 - customerProfileId: 1 - action: insert - user: user - timestamp: '2023-10-20T17:05:52.000+02:00' - correlationId: 01c6d8b4-1cd3-4f9b-85ea-c9adca53ce95 - '400': + "400": description: Bad Request content: application/json: schema: - $ref: '#/components/schemas/400Response' - '401': + $ref: "#/components/schemas/400Response" + "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/401Response' - '404': + $ref: "#/components/schemas/401Response" + "404": description: Not Found content: application/json: schema: - $ref: '#/components/schemas/404Response' - '500': + $ref: "#/components/schemas/404Response" + "500": description: Internal Server Error content: application/json: schema: - $ref: '#/components/schemas/500Response' + $ref: "#/components/schemas/500Response" security: - default: [] x-auth-type: Application & Application User @@ -439,332 +396,269 @@ paths: tags: - ABTCustomers summary: Search for customer profile - description: 'search for a customer profile in the ABT database with query parameters ' + description: "Search for a unique customer profile in the ABT database with query parameters " parameters: - name: customerProfileId - in: query - required: false - style: form - explode: true + in: query schema: - type: number + type: integer + example: 1 - name: customerNumber in: query - required: false - style: form - explode: true schema: - type: number - - name: emailAddress + type: integer + example: 1000001 + - name: customerStatusId in: query - required: false - style: form - explode: true schema: - type: string - - name: chipCardNumber + type: integer + example: 1 + - name: debtorNumber in: query - required: false - style: form - explode: true schema: - type: string - - name: ovPasNumber + type: integer + example: 100001 + - name: debtorStatusId in: query - required: false - style: form - explode: true schema: - type: string - - name: phoneNumber - in: query - required: false - style: form - explode: true - schema: - type: string - - name: phoneCountryCode - in: query - required: false - style: form - explode: true - schema: - type: string - - name: addressStreet - in: query - required: false - style: form - explode: true - schema: - type: string - - name: addressHouseNumber - in: query - required: false - style: form - explode: true - schema: - type: number - - name: addressHouseNumberSuffix - in: query - required: false - style: form - explode: true - schema: - type: string - - name: addressPostalCode - in: query - required: false - style: form - explode: true - schema: - type: string - - name: addressCity - in: query - required: false - style: form - explode: true - schema: - type: string - - name: addressCountry - in: query - required: false - style: form - explode: true - schema: - type: string + type: integer + example: 1 - name: birthname in: query - required: false - style: form - explode: true schema: type: string + example: John - name: surname in: query - required: false - style: form - explode: true schema: type: string + example: Doe + - name: emailAddress + in: query + schema: + type: string + format: email + example: john.doe@mymailprovider.com - name: dateOfBirth in: query - required: false - style: form - explode: true schema: type: string - - name: customerStatus + format: date + example: "2000-01-01" + - name: addressStreet in: query - required: false - style: form - explode: true schema: type: string + example: Sesamestreet + - name: addressHouseNumber + in: query + schema: + type: integer + example: 1 + - name: addressHouseNumberSuffix + in: query + schema: + type: string + example: A + - name: addressPostalCode + in: query + schema: + type: string + example: 1234 AB + - name: addressCity + in: query + schema: + type: string + example: The Hague + - name: addressCountry + in: query + schema: + type: string + example: The Netherlands + - name: phoneNumber + in: query + schema: + type: string + example: "0123456789" + - name: phoneCountryCode + in: query + schema: + type: string + example: "+31" + - name: ovChipcardNumber + in: query + schema: + type: integer + example: 0123456789 + - name: ovChipcardAlias + in: query + schema: + type: string + example: My ovchipcard + - name: ovPayTokenNumber + in: query + schema: + type: integer + example: 0123456789 + - name: ovPayTokenAlias + in: query + schema: + type: string + example: My Ov Pay Token + - name: ovPayTokenXTat + in: query + schema: + type: string + example: 180d04e0-a721-447e-a1d9-b416937b43bc + - name: ovPayTokenXBot + in: query + schema: + type: string + example: e1307c73-676a-4d07-967b-6141276f7c7c responses: - '200': + "200": description: Successful retrieved a customer profile content: application/json: schema: - $ref: '#/components/schemas/getCustomerProfile' + $ref: "#/components/schemas/getCustomerProfile" examples: fullCustomerProfile: value: - customerProfileId: 1 - customerNumber: 1000001 - debtorNumber: TEST001 - vascustomerNumber: CST005 - debtorStateId: 1 - customerPreference: - languageId: 1 - customerStatus: - - name: active - fromInclusive: '2022-08-04 15:01:00.000' - toInclusive: '2022-08-05 15:01:00.000' - - name: blocked - fromInclusive: '2022-08-05 15:01:00.000' - toInclusive: null - person: - birthname: Pieter - surname: De valen - prefix: dhr - suffix: De - dateOfBirth: '2002-10-29' - emailAddress: TEST@HTM.NL - address: - - addressId: 1 - street: mystreet - houseNumber: 1 - houseNumberSuffix: null - postalCode: 0000AA - city: Den Haag - country: NL - isPreferred: true - addressType: Office - - addressId: 2 - street: mystreet 33 - houseNumber: 1 - houseNumberSuffix: null - postalCode: 4455CA - city: Den BOSCH - country: NL - isPreferred: true - addressType: Office - phone: - - phoneId: 1 - number: '3112345678' - countryCode: NL - phoneType: TestNaam - isPreferred: true - - phoneId: 2 - number: '333225588' - countryCode: ES - phoneType: TestNaam - isPreferred: false + customerProfileId: 1 + customerNumber: 1000001 + debtorNumber: TEST001 + debtorStatus: + debtorStatusId: 1 + name: Inactive + vascustomerNumber: CST005 + customerPreference: + languageId: 1 + customerStatusInstance: + - customerStatus: + name: Active + customerStatusId: 2 + fromInclusive: "2022-08-04 15:01:00.000" + toInclusive: "2022-08-05 15:01:00.000" + - customerStatus: + name: Blocked + customerStatusId: 3 + fromInclusive: "2022-08-05 15:01:00.000" + toInclusive: null + person: + birthname: Pieter + surname: De valen + prefix: dhr + suffix: De + dateOfBirth: "2002-10-29" + emailAddress: TEST@HTM.NL + address: + - addressId: 1 + street: mystreet + houseNumber: 1 + houseNumberSuffix: null + postalCode: 0000AA + city: Den Haag + country: NL + isPreferred: false + addressType: + addressTypeId: 2 + name: Office + - addressId: 2 + street: mystreet 33 + houseNumber: 1 + houseNumberSuffix: null + postalCode: 4455CA + city: Den BOSCH + country: NL + isPreferred: true + addressType: + addressTypeId: 2 + name: Office + phone: + - phoneId: 1 + number: "3112345678" + countryCode: NL + phoneType: + phoneTypeId: 1 + name: Home + isPreferred: true + - phoneId: 2 + number: "333225588" + countryCode: ES + phoneType: + phoneTypeId: 2 + name: Work + isPreferred: false ovChipCard: - ovChipCardId: 1 chipCardNumber: 1234123412341234 - validUntil: '2023-01-01' + validUntil: "2023-01-01" alias: alias - ovChipCardId: 2 chipCardNumber: 1234123412341235 - validUntil: '2025-01-01' + validUntil: "2025-01-01" alias: alias ovPayToken: - ovPayTokenId: 126 - tokenTypeId: 1 + tokenType: + tokenTypeId: 1 + name: EMV xTat: twioq73033 xBot: hjihwqui27 alias: alias - lastDigits: '5678' - ovpasNumber: OV34567 - tokenStatusId: 1 - expirationDate: '2025-04-20T17:05:52.000+02:00' + lastDigits: "5678" + ovpasNumber: null + tokenStatus: + tokenStatusId: 2 + name: Active + expirationDate: "2025-04-20T17:05:52.000+02:00" replacedByTokenId: 1 - ovPayTokenId: 127 - tokenTypeId: 1 + tokenType: + tokenTypeId: 2 + name: OV-pas physical xTat: hhe2830283 xBot: jdhd828033 alias: alias - lastDigits: '5674' - ovpasNumber: OV34568 - tokenStatusId: 1 - expirationDate: '2024-04-20T17:05:52.000+02:00' + lastDigits: "5674" + ovpasNumber: OV34568 + tokenStatus: + tokenStatusId: 2 + name: Active + expirationDate: "2024-04-20T17:05:52.000+02:00" replacedByTokenId: 2 audit: - - auditTrailId: 1 - customerProfileId: 1 - action: insert - user: user - timestamp: '2023-10-20T17:05:52.000+02:00' - correlationId: 01c6d8b4-1cd3-4f9b-85ea-c9adca53ce95 - minimumCustomerProfile: - value: - customerNumber: 1000008 - debtorNumber: null - debtorStateId: null - vascustomerNumber: null - customerPreference: - languageId: 1 - customerStatus: - - name: active - fromInclusive: '2022-08-04 15:01:00.000' - toInclusive: null - person: - birthname: null - surname: null - prefix: null - suffix: null - dateOfBirth: null - emailAddress: TEST@TEST1.NL - address: [] - phone: [] - ovChipCard: [] - ovPayToken: [] - audit: [] - missingPersonDetailsCustomerProfile: - value: - emailAddress: TEST04@HTM.NL - customerNumber: 1000005 - debtorNumber: TEST004 - debtorStateId: 1 - vascustomerNumber: CST008 - customerPreference: - languageId: 1 - customerStatus: - - name: inactive - fromInclusive: '2022-08-04 15:01:00.000' - toInclusive: null - person: - birthname: Sophie - surname: Haardenburg - prefix: Mw - suffix: null - dateOfBirth: '1955-09-05' - emailAddress: TEST@TEST1.NL - address: [] - phone: [] - ovChipCard: - - ovChipCardId: 1 - chipCardNumber: 1234123412341234 - validUntil: '2023-01-01' - alias: alias - - ovChipCardId: 2 - chipCardNumber: 1234123412341235 - validUntil: '2025-01-01' - alias: alias - ovPayToken: - - ovPayTokenId: 126 - tokenTypeId: 1 - xTat: twioq73033 - xBot: hjihwqui27 - alias: alias - lastDigits: '5678' - ovpasNumber: OV34567 - tokenStatusId: 1 - expirationDate: '2025-04-20T17:05:52.000+02:00' - replacedByTokenId: 1 - - ovPayTokenId: 127 - tokenTypeId: 1 - xTat: hhe2830283 - xBot: jdhd828033 - alias: alias - lastDigits: '5674' - ovpasNumber: OV34568 - tokenStatusId: 1 - expirationDate: '2024-04-20T17:05:52.000+02:00' - replacedByTokenId: 2 - audit: - - auditTrailId: 1 - customerProfileId: 1 - action: insert - user: user - timestamp: '2023-10-20T17:05:52.000+02:00' - correlationId: 01c6d8b4-1cd3-4f9b-85ea-c9adca53ce95 - '400': + - auditTrailId: 1 + customerProfileId: 1 + action: insert + user: user + timestamp: "2023-10-20T17:05:52.000+02:00" + correlationId: 01c6d8b4-1cd3-4f9b-85ea-c9adca53ce95 + "400": description: Bad Request content: application/json: schema: - $ref: '#/components/schemas/400Response' - '401': + $ref: "#/components/schemas/400Response" + "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/401Response' - '404': + $ref: "#/components/schemas/401Response" + "404": description: Not Found content: application/json: schema: - $ref: '#/components/schemas/404Response' - '500': + $ref: "#/components/schemas/404Response" + "500": description: Internal Server Error content: application/json: schema: - $ref: '#/components/schemas/500Response' + $ref: "#/components/schemas/500Response" security: - default: [] x-auth-type: Application & Application User @@ -785,7 +679,7 @@ paths: content: application/json: schema: - $ref: '#/components/schemas/postCustomerProfile' + $ref: "#/components/schemas/postCustomerProfile" examples: minimumProfile: value: {} @@ -806,7 +700,7 @@ paths: surname: Jansen prefix: dhr suffix: jr - dateOfBirth: '1970-01-01' + dateOfBirth: "1970-01-01" emailAddress: j.jansen@hatseflats.nl addresses: - street: Laan van Meerdervoort @@ -826,32 +720,32 @@ paths: isPreferred: false addressTypeId: 2 phones: - - number: '6123456789' - countryCode: '0031' + - number: "6123456789" + countryCode: "0031" phoneTypeId: 1 isPreferred: true - - number: '7012345678' - countryCode: '0031' + - number: "7012345678" + countryCode: "0031" phoneTypeId: 2 isPreferred: false required: true responses: - '201': + "201": description: Successful created a customer profile content: application/json: schema: - $ref: '#/components/schemas/postCustomerProfileCustomerNumberResponse' - '400': + $ref: "#/components/schemas/postCustomerProfileCustomerNumberResponse" + "400": description: Bad Request content: application/json: schema: - $ref: '#/components/schemas/400Response' + $ref: "#/components/schemas/400Response" examples: InvalidPostalCodeFormatForAddressCountryNLError: value: - code: '400' + code: "400" type: Bad Request - Input parameters message: Invalid input parameter for country validation (NL). description: >- @@ -859,7 +753,7 @@ paths: input string \"2500 AA\ MissingRequiredParameterError: value: - code: '400' + code: "400" type: Bad Request - Input parameters message: Invalid input parameter. description: >- @@ -867,1256 +761,37 @@ paths: ([\"addressTypeId\"]) InvalidDataTypeError: value: - code: '400' + code: "400" type: Bad Request - Input parameters message: Invalid input parameter. description: >- Bad Request - please verify the value for the following field \"id\ - '401': + "401": description: Unauthorized content: application/json: schema: - $ref: '#/components/schemas/401Response' - '409': + $ref: "#/components/schemas/401Response" + "409": description: Conflict content: application/json: schema: - $ref: '#/components/schemas/409Response' + $ref: "#/components/schemas/409Response" examples: emailAddressAlreadyPresent: value: - code: '409' + code: "409" type: Conflict message: emailAddress already exists. - description: '' - '500': + description: "" + "500": description: Internal Server Error content: application/json: schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}/customerpreferences: - patch: - tags: - - ABTCustomers - summary: Modify customer preference elements - description: Modify customer preference fields - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/patchCustomerPreferences' - examples: - PatchCustomerPreferences: - value: - customerPreference: - languageId: 2 - responses: - '202': - description: Successful modified the customer preferences - content: - application/json: - schema: - $ref: '#/components/schemas/patchCustomerPreferencesResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - examples: - InvalidDataTypeError: - value: - code: '400' - type: Bad Request - Input parameters - message: Invalid input parameter. - description: >- - Bad Request - please verify the value for the following - field \"languageId\ - InvalidReferenceIdError: - value: - code: '400' - type: Bad Request - Input parameters - message: Invalid input parameter. - description: >- - Bad Request: Update Or Delete failed as conflicted with - foreign Key constraint 'languageId' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}: - patch: - tags: - - ABTCustomers - summary: Modify customer profile elements - description: Modify customer profile fields - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/patchCustomerProfile' - examples: - PatchCustomerProfile: - value: - debtorStatusId: 2 - responses: - '202': - description: Successful modified the customer profile - content: - application/json: - schema: - $ref: '#/components/schemas/patchCustomerProfileResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - examples: - InvalidDataTypeError: - value: - code: '400' - type: Bad Request - Input parameters - message: Invalid input parameter. - description: >- - Bad Request - please verify the value for the following - field \"debtorStatusId\ - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}/ovchipcards: - post: - tags: - - ABTCustomers - summary: Create a new OV chipcard for a customerProfile. - description: Create a new OV chipcard in the database for a given customer. - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/postOvChipCard' - examples: - postNewOvChipCard: - value: - ovChipCard: - chipCardNumber: 1234123412341234 - validUntil: '2024-01-01' - alias: alias - responses: - '201': - description: Successful created an OV chipcard - content: - application/json: - schema: - $ref: '#/components/schemas/postCustomerProfileOvChipCardResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - examples: - chipCardNumberInvalidTooSmall: - value: - code: '400' - type: Bad Request - Input parameters - message: Invalid input parameter. - description: >- - numeric instance is lower than the required minimum - (minimum: 1000000000000000, found: 999999999999999) - chipCardNumberInvalidTooLarge: - value: - code: '400' - type: Bad Request - Input parameters - message: Invalid input parameter. - description: >- - numeric instance is greater than the required maximum - (maximum: 9999999999999999, found: 10000000000000000) - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}/ovchipcards/{ovChipCardId}: - delete: - tags: - - ABTCustomers - summary: Delete a OV chipcard for a customerProfile. - description: Delete a OV chipcard in the database for a given customer. - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - - name: ovChipCardId - in: path - required: true - style: simple - explode: false - schema: - type: integer - responses: - '202': - description: Deleted record successfully - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}/ovpaytokens: - get: - tags: - - ABTCustomers - summary: Get a OV paytoken for a customerProfile. - description: Get a new OV paytoken in the database for a given customer. - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - - name: ovPayTokenId - in: query - required: false - style: form - explode: false - schema: - type: integer - - name: xbot - in: query - required: false - style: form - explode: false - schema: - type: string - - name: xtat - in: query - required: false - style: form - explode: false - schema: - type: string - - name: ovPasNumber - in: query - required: false - style: form - explode: false - schema: - type: string - responses: - '200': - description: Successfully retrieved an OVPay token - content: - application/json: - schema: - $ref: '#/components/schemas/getCustomerProfileOvPayTokenResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - post: - tags: - - ABTCustomers - summary: Create a new OV paytoken for a customerProfile. - description: Create a new OV paytoken in the database for a given customer. - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/postOvPayToken' - examples: - postNewOvPayTokenCard: - value: - ovPayToken: - tokenTypeId: 2 - xTat: twioq73033 - xBot: hjihwqui27 - alias: alias - lastDigits: '5678' - ovpasNumber: OV34567 - tokenStatusId: 2 - expirationDate: '2025-04-20T17:05:52.000+02:00' - replacedByTokenId: 1 - responses: - '201': - description: Successful created an OVPay token - content: - application/json: - schema: - $ref: '#/components/schemas/postCustomerProfileOvPayTokenResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}/statuses: - post: - tags: - - ABTCustomers - summary: Create a new customer status for a customerProfile. - description: >- - Create a new customer status for a customerProfile. The call will do the - following in the given order: a new status will be created with - fromInclusive equal to the time of the call. ToInclusive in the old, now - historic, status will also be set equal to the time of the call, deeming - it 'not currently active'. - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/postCustomerStatus' - examples: - postNewStatus: - value: - customerStatus: - name: blocked - responses: - '201': - description: Successful updated the customer profile - content: - application/json: - schema: - $ref: '#/components/schemas/defaultCustomerProfileResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '422': - description: Unprocessable entity - content: - application/json: - schema: - $ref: '#/components/schemas/422Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}/persons: - patch: - tags: - - ABTCustomers - summary: Partial update customer person details - description: Partial update a customer person details in the ABT database - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/patchPerson' - examples: - updatePerson: - value: - person: - birthname: Jan - surname: Jansen - prefix: dhr - suffix: jr - dateOfBirth: '1970-01-01' - emailAddress: TEST@TEST1.NL - updatePersonBirthname: - value: - person: - birthname: Jan - updatePersonSurname: - value: - person: - surname: Jansen - updatePersonPrefix: - value: - person: - prefix: dhr - updatePersonSuffix: - value: - person: - suffix: jr - updatePersonDateOfBirth: - value: - person: - dateOfBirth: '1970-01-01' - updatePersonEmailAddress: - value: - person: - emailAddress: TEST@TEST1.NL - responses: - '202': - description: Successful updated the customer profile - content: - application/json: - schema: - $ref: '#/components/schemas/defaultCustomerProfileResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}/ovpaytokens/{ovPayTokenId}: - delete: - tags: - - ABTCustomers - summary: Delete a OV PayToken for a customerProfile. - description: Delete a OV PayToken in the database for a given customer. - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - - name: ovPayTokenId - in: path - required: true - style: simple - explode: false - schema: - type: integer - responses: - '202': - description: Deleted record successfully - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - patch: - tags: - - ABTCustomers - summary: Partial update customer ovpaytokens - description: Partial update of a customer ovpaytokens in the ABT database - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - - name: ovPayTokenId - in: path - required: true - style: simple - explode: false - schema: - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/patchOvPayToken' - examples: - updateOvPayTokens: - value: - ovPayToken: - tokenTypeId: 2 - xTat: twioq73033 - xBot: hjihwqui27 - alias: alias - lastDigits: '5678' - ovpasNumber: OV34567 - tokenStatusId: 2 - expirationDate: '2025-04-20T17:05:52.000+02:00' - replacedByTokenId: 1 - updateOvPayTokenTypeId: - value: - ovPayToken: - tokenTypeId: 2 - updateOvPayTokenXTat: - value: - ovPayToken: - xTat: twioq73033 - updateOvPayTokenXBot: - value: - ovPayToken: - xBot: hjihwqui27 - updateOvPayTokenAlias: - value: - ovPayToken: - alias: alias - updateOvPayTokenLastDigits: - value: - ovPayToken: - lastDigits: '5678' - updateOvPayTokenOvpasNumber: - value: - ovPayToken: - ovpasNumber: OV34567 - updateOvPayTokenStatusId: - value: - ovPayToken: - tokenStatusId: 1 - updateOvPayTokenExpirationDate: - value: - ovPayToken: - expirationDate: '2025-04-20T17:05:52.000+02:00' - updateOvPayTokenReplacedByTokenId: - value: - ovPayToken: - replacedByTokenId: 1 - responses: - '202': - description: Successful updated the customer profile - content: - application/json: - schema: - $ref: '#/components/schemas/defaultCustomerProfileResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}/addresses: - post: - tags: - - ABTCustomers - summary: Create a single customer address - description: Create a single customer address in the ABT database - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/postAddress' - examples: - addFullAddress: - value: - address: - street: Laan van Meerdervoort - houseNumber: 5 - houseNumberSuffix: B - postalCode: 2500AA - city: Den Haag - country: NL - isPreferred: true - addressTypeId: 1 - addMinimumAddress: - value: - address: - street: Laan van Meerdervoort - houseNumber: 5 - postalCode: 2500AA - city: Den Haag - country: NL - isPreferred: true - addressTypeId: 1 - responses: - '201': - description: Successful updated the customer profile - content: - application/json: - schema: - $ref: '#/components/schemas/postCustomerProfileAddressResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - examples: - InvalidPostalCodeFormatForAddressCountryNLError: - value: - code: '400' - type: Bad Request - Input parameters - message: Invalid input parameter for country validation (NL). - description: >- - ECMA 262 regex \"^(?:\\d{4}[A-Z]{2})?$\" does not match - input string \"2500 AA\ - MissingRequiredParameterError: - value: - code: '400' - type: Bad Request - Input parameters - message: Invalid input parameter. - description: >- - object has missing required properties - ([\"addressTypeId\"]) - InvalidDataTypeError: - value: - code: '400' - type: Bad Request - Input parameters - message: Invalid input parameter. - description: >- - Bad Request - please verify the value for the following - field \"id\ - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}/phones: - post: - tags: - - ABTCustomers - summary: Create a single customer phonenumber - description: Create a single customer phonenumber in the ABT database - parameters: - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/postPhone' - examples: - addPhone: - value: - phone: - number: '06123456789' - countryCode: '0031' - phoneTypeId: 1 - isPreferred: true - responses: - '201': - description: Successful updated the customer profile - content: - application/json: - schema: - $ref: '#/components/schemas/postCustomerProfilePhoneResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}/addresses/{addressId}: - delete: - tags: - - ABTCustomers - summary: Delete a customer address - description: Delete a customer address from the ABT database - parameters: - - name: addressId - in: path - required: true - style: simple - explode: false - schema: - type: integer - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - responses: - '202': - description: Deleted record successfully - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - patch: - tags: - - ABTCustomers - summary: Partial update customer addresses - description: Partial update a customer address in the ABT database - parameters: - - name: addressId - in: path - required: true - style: simple - explode: false - schema: - type: integer - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/patchAddress' - examples: - updateAddress: - value: - address: - street: Laan van Meerdervoort - houseNumber: 5 - houseNumberSuffix: B - postalCode: 2500AA - city: Den Haag - country: NL - addressTypeId: 2 - isPreferred: true - updateStreet: - value: - address: - street: Nieuwe Parklaan - updateHouseNumber: - value: - address: - houseNumber: 10 - updateHouseNumberSuffix: - value: - address: - houseNumberSuffix: C - updatePostalCode: - value: - address: - postalCode: 2597LG - updateCity: - value: - address: - city: Amsterdam - updateCountry: - value: - address: - country: UK - updateAddressTypeId: - value: - address: - addressTypeId: 3 - updateIsPreferred: - value: - address: - isPreferred: false - responses: - '202': - description: Successful updated the customer profile - content: - application/json: - schema: - $ref: '#/components/schemas/addressPatchOKResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - examples: - InvalidPostalCodeFormatForAddressCountryNLError: - value: - code: '400' - type: Bad Request - Input parameters - message: Invalid input parameter for country validation (NL). - description: >- - ECMA 262 regex \"^(?:\\d{4}[A-Z]{2})?$\" does not match - input string \"2500 AA\ - InvalidDataTypeError: - value: - code: '400' - type: Bad Request - Input parameters - message: Invalid input parameter. - description: >- - Bad Request - please verify the value for the following - field \"id\ - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '409': - description: Conflict - content: - application/json: - schema: - $ref: '#/components/schemas/409Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - /customers/{customerNumber}/phones/{phoneId}: - delete: - tags: - - ABTCustomers - summary: Delete a customer phone - description: Delete a customer phone from the ABT database - parameters: - - name: phoneId - in: path - required: true - style: simple - explode: false - schema: - type: integer - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - responses: - '202': - description: Deleted record successfully - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' - security: - - default: [] - x-auth-type: Application & Application User - x-throttling-tier: Unlimited - patch: - tags: - - ABTCustomers - summary: Partial update customer phones - description: Partial update a customer phone in the ABT database - parameters: - - name: phoneId - in: path - required: true - style: simple - explode: false - schema: - type: integer - - name: customerNumber - in: path - required: true - style: simple - explode: false - schema: - type: integer - requestBody: - content: - application/json: - schema: - $ref: '#/components/schemas/patchPhone' - examples: - updatePhone: - value: - phone: - number: '06123456789' - countryCode: '0031' - phoneTypeId: 2 - isPreferred: true - updatePhoneNumber: - value: - phone: - number: '06987654321' - updateCountryCode: - value: - phone: - countryCode: '0044' - updatePhoneTypeId: - value: - phone: - phoneTypeId: 2 - updateisPreferred: - value: - phone: - isPreferred: true - responses: - '202': - description: Successful updated the customer profile - content: - application/json: - schema: - $ref: '#/components/schemas/phonePatchOKResponse' - '400': - description: Bad Request - content: - application/json: - schema: - $ref: '#/components/schemas/400Response' - '401': - description: Unauthorized - content: - application/json: - schema: - $ref: '#/components/schemas/401Response' - '404': - description: Not Found - content: - application/json: - schema: - $ref: '#/components/schemas/404Response' - '409': - description: Conflict - content: - application/json: - schema: - $ref: '#/components/schemas/409Response' - '500': - description: Internal Server Error - content: - application/json: - schema: - $ref: '#/components/schemas/500Response' + $ref: "#/components/schemas/500Response" security: - default: [] x-auth-type: Application & Application User @@ -2351,16 +1026,17 @@ paths: "directDebitMandateId": 71, "customerProfileId": 12, "billingInformationId": 51, - "directDebitMandateType": { - "directDebitMandateTypeId": 1, - "name": "import", - "description": "import" - }, + "directDebitMandateType": + { + "directDebitMandateTypeId": 1, + "name": "import", + "description": "import", + }, "mandateAddressId": 21, "created": "2024-03-22T08:55:00", "mandateReference": "CORE01", "mandateState": "SINGED", - "updateTimestamp": "2024-03-22T08:55:00" + "updateTimestamp": "2024-03-22T08:55:00", }, ] components: @@ -2455,17 +1131,34 @@ components: format: date alias: type: string + getCustomerStatusInstance: + type: object + properties: + Entries: + type: array + properties: + customerStatus: + $ref: "#/components/schemas/getCustomerStatus" + fromInclusive: + type: string + format: date + toInclusive: + type: string + format: date getCustomerStatus: type: object properties: + customerStatusId: + type: integer name: type: string - fromInclusive: + getDebtorStatus: + type: object + properties: + debtorStatusId: + type: integer + name: type: string - format: date - toInclusive: - type: string - format: date getPerson: type: object properties: @@ -2486,11 +1179,11 @@ components: address: type: array items: - $ref: '#/components/schemas/getAddress' + $ref: "#/components/schemas/getAddress" phone: type: array items: - $ref: '#/components/schemas/getPhone' + $ref: "#/components/schemas/getPhone" getAddress: type: object properties: @@ -2511,6 +1204,13 @@ components: isPreferred: type: boolean addressType: + $ref: "#/components/schemas/getAddressType" + getAddressType: + type: object + properties: + addressTypeId: + type: integer + name: type: string getPhone: type: object @@ -2522,9 +1222,16 @@ components: countryCode: type: string phoneType: - type: string + $ref: "#/components/schemas/getPhoneType" isPreferred: type: boolean + getPhoneType: + type: object + properties: + phoneTypeId: + type: integer + name: + type: string getCustomerPreference: type: object properties: @@ -2536,7 +1243,7 @@ components: Entries: type: array items: - $ref: '#/components/schemas/getCustomerProfile' + $ref: "#/components/schemas/getCustomerProfile" getCustomerProfile: type: object properties: @@ -2544,30 +1251,30 @@ components: type: integer debtorNumber: type: integer - debtorStateId: - type: integer + debtorStatus: + $ref: "#/components/schemas/getDebtorStatus" vascustomerNumber: type: integer customerPreference: - $ref: '#/components/schemas/getCustomerPreference' + $ref: "#/components/schemas/getCustomerPreference" customerStatus: type: array items: - $ref: '#/components/schemas/getCustomerStatus' + $ref: "#/components/schemas/getCustomerStatusInstance" person: - $ref: '#/components/schemas/getPerson' + $ref: "#/components/schemas/getPerson" ovChipCard: type: array items: - $ref: '#/components/schemas/getOvChipCard' + $ref: "#/components/schemas/getOvChipCard" ovPayToken: type: array items: - $ref: '#/components/schemas/ovPayToken' + $ref: "#/components/schemas/ovPayToken" audit: type: array items: - $ref: '#/components/schemas/audit' + $ref: "#/components/schemas/audit" directDebitMandatePostEntity: required: - billingInformationId @@ -2591,7 +1298,7 @@ components: type: object properties: directDebitMandate: - $ref: '#/components/schemas/directDebitMandatePostEntity' + $ref: "#/components/schemas/directDebitMandatePostEntity" directDebitMandatePatchEntity: type: object properties: @@ -2613,7 +1320,7 @@ components: type: object properties: directDebitMandate: - $ref: '#/components/schemas/directDebitMandatePatchEntity' + $ref: "#/components/schemas/directDebitMandatePatchEntity" directDebitMandateGETEntity: type: object properties: @@ -2688,7 +1395,7 @@ components: type: object properties: billingInformation: - $ref: '#/components/schemas/billingInformationPostEntity' + $ref: "#/components/schemas/billingInformationPostEntity" billingInformationPatchEntity: type: object properties: @@ -2710,7 +1417,7 @@ components: type: object properties: billingInformation: - $ref: '#/components/schemas/billingInformationPatchEntity' + $ref: "#/components/schemas/billingInformationPatchEntity" getCustomerProfileFinancials: type: object properties: @@ -2719,11 +1426,11 @@ components: billingInformation: type: array items: - $ref: '#/components/schemas/billingInformationGETEntity' + $ref: "#/components/schemas/billingInformationGETEntity" directDebitMandate: type: array items: - $ref: '#/components/schemas/directDebitMandateGETEntity' + $ref: "#/components/schemas/directDebitMandateGETEntity" customerPreferencesEntity: type: object properties: @@ -2735,17 +1442,17 @@ components: debtorStatusId: type: integer customerPreference: - $ref: '#/components/schemas/customerPreferencesEntity' + $ref: "#/components/schemas/customerPreferencesEntity" person: - $ref: '#/components/schemas/personEntity' + $ref: "#/components/schemas/personEntity" addresses: type: array items: - $ref: '#/components/schemas/addressPostEntity' + $ref: "#/components/schemas/addressPostEntity" phones: type: array items: - $ref: '#/components/schemas/phonePostEntity' + $ref: "#/components/schemas/phonePostEntity" postCustomerStatusEntity: type: object properties: @@ -2755,7 +1462,7 @@ components: type: object properties: customerStatus: - $ref: '#/components/schemas/postCustomerStatusEntity' + $ref: "#/components/schemas/postCustomerStatusEntity" postOvChipCardEntity: required: - chipCardNumber @@ -2782,12 +1489,12 @@ components: type: object properties: customerPreference: - $ref: '#/components/schemas/patchCustomerPreferencesEntity' + $ref: "#/components/schemas/patchCustomerPreferencesEntity" postOvChipCard: type: object properties: ovChipCard: - $ref: '#/components/schemas/postOvChipCardEntity' + $ref: "#/components/schemas/postOvChipCardEntity" postOvPayToken: required: - alias @@ -2821,8 +1528,13 @@ components: ovPayTokenEntity: type: object properties: - tokenTypeId: - type: string + tokenType: + type: object + properties: + tokenTypeId: + type: string + name: + type: string xTat: type: string xBot: @@ -2833,8 +1545,13 @@ components: type: integer ovpasNumber: type: string - tokenStatusId: - type: integer + tokenStatus: + type: object + properties: + tokenStatusId: + type: integer + name: + type: string expirationDate: type: string replacedByTokenId: @@ -2843,32 +1560,32 @@ components: type: object properties: ovPayToken: - $ref: '#/components/schemas/ovPayTokenEntity' + $ref: "#/components/schemas/ovPayTokenEntity" patchPerson: type: object properties: person: - $ref: '#/components/schemas/personEntity' + $ref: "#/components/schemas/personEntity" patchAddress: type: object properties: address: - $ref: '#/components/schemas/addressPatchEntity' + $ref: "#/components/schemas/addressPatchEntity" patchPhone: type: object properties: phone: - $ref: '#/components/schemas/phonePatchEntity' + $ref: "#/components/schemas/phonePatchEntity" postAddress: type: object properties: address: - $ref: '#/components/schemas/addressPostEntity' + $ref: "#/components/schemas/addressPostEntity" postPhone: type: object properties: phone: - $ref: '#/components/schemas/phonePostEntity' + $ref: "#/components/schemas/phonePostEntity" personEntity: type: object properties: @@ -3054,7 +1771,7 @@ components: example: 0044831b-8e80c-4f82-r989a-8d85ee1996 lastDigits: type: string - example: '0001' + example: "0001" ovpasNumber: type: integer example: 1 @@ -3073,7 +1790,7 @@ components: ovPayToken: type: array items: - $ref: '#/components/schemas/ovPayTokenGetEntity' + $ref: "#/components/schemas/ovPayTokenGetEntity" postCustomerProfileOvPayTokenResponse: type: object properties: @@ -3094,7 +1811,7 @@ components: properties: code: type: string - example: '400' + example: "400" type: type: string message: @@ -3110,7 +1827,7 @@ components: properties: code: type: string - example: '900901' + example: "900901" type: type: string message: @@ -3126,7 +1843,7 @@ components: properties: code: type: string - example: '404' + example: "404" type: type: string example: Status report @@ -3141,7 +1858,7 @@ components: properties: code: type: string - example: '409' + example: "409" type: type: string example: Conflict @@ -3155,7 +1872,7 @@ components: properties: code: type: string - example: '422' + example: "422" type: type: string example: Unprocessable entity @@ -3171,11 +1888,11 @@ components: properties: code: type: string - example: '500' + example: "500" type: type: string message: type: string example: Internal Server Error description: - type: string \ No newline at end of file + type: string