ovpay/src/openapi/customers/customers.yaml
2025-05-19 13:25:06 +02:00

5253 lines
165 KiB
YAML

openapi: 3.0.1
info:
title: ABTCustomers
version: '1.0'
servers:
- url: https://services.acc.api.htm.nl/abt/abtcustomers/1.0
- url: http://services.acc.api.htm.nl/abt/abtcustomers/1.0
security:
- default: []
tags:
- name: ABTCustomers
- name: ABTCustomersSelfService
- name: ABTCustomersFinancials
- name: ABTCustomersFinancialsSelfService
paths:
/customers/{customerNumber}/financials/directdebitmandates/{directDebitMandateId}:
patch:
tags:
- ABTCustomersFinancials
summary: Modify direct debit mandate information for a customer profile.
description: Modify direct debit mandate for a customer profile.
parameters:
- name: customerNumber
in: path
required: true
style: simple
explode: false
schema:
type: integer
- name: directDebitMandateId
in: path
required: true
style: simple
explode: false
schema:
type: integer
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/directDebitMandatePatch'
examples:
updateFullDirectDebitMandate:
value:
directDebitMandate:
directDebitMandateTypeId: 1
billingInformationId: 1
mandateReference: Dit is een test Reference
mandateState: SIGNED
updateDirectDebitMandateType:
value:
directDebitMandate:
directDebitMandateTypeId: 1
updateBillingInformationId:
value:
directDebitMandate:
billingInformationId: 2
updateMandateReference:
value:
directDebitMandate:
mandateReference: Updated Reference
updateMandateState:
value:
directDebitMandate:
mandateState: PREPARED
required: true
responses:
'201':
description: Successful created financial information for a customer profile.
content:
application/json:
schema:
$ref: >-
#/components/schemas/patchCustomerProfileCustomerNumberResponse
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400Response'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/401Response'
'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}/financials/billinginformation/{billingInformationId}:
patch:
tags:
- ABTCustomersFinancials
summary: Modify billing information for a customer profile.
description: Modify billing information for a customer profile.
parameters:
- name: customerNumber
in: path
required: true
style: simple
explode: false
schema:
type: integer
- name: billingInformationId
in: path
required: true
style: simple
explode: false
schema:
type: integer
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/billingInformationPatch'
examples:
updateFullBillingInformation:
value:
billingInformation:
iban: '1234567890'
bic: ING
ascription: Dit is een Test
alias: Alias Test
updateIban:
value:
billingInformation:
iban: '0987654321'
updateBic:
value:
billingInformation:
bic: DEUT
updateAscription:
value:
billingInformation:
ascription: Updated Ascription
updateAlias:
value:
billingInformation:
alias: Updated Alias
required: true
responses:
'201':
description: Successful created financial information for a customer profile.
content:
application/json:
schema:
$ref: >-
#/components/schemas/patchCustomerProfileCustomerNumberResponse
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400Response'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/401Response'
'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}/financials/billinginformation:
post:
tags:
- ABTCustomersFinancials
summary: Create billing information for a customer profile.
description: Create billing information for a customer profile.
parameters:
- name: customerNumber
in: path
required: true
style: simple
explode: false
schema:
type: integer
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/billingInformationPost'
examples:
fullFinancialInformation:
value:
billingInformation:
iban: '1234567890'
bic: ING
ascription: Dit is een Test
alias: Alias Test
minimumBillingInformation:
value:
billingInformation:
iban: '1234567890'
ascription: Dit is een Test
alias: Alias Test
required: true
responses:
'201':
description: Successful created financial information for a customer profile.
content:
application/json:
schema:
$ref: >-
#/components/schemas/postCustomerProfileBillingInformationResponse
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400Response'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/401Response'
'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}/financials/directdebitmandates:
post:
tags:
- ABTCustomersFinancials
summary: Create direct debit mandate for a customer profile.
description: Create direct debit mandate for a customer profile.
parameters:
- name: customerNumber
in: path
required: true
style: simple
explode: false
schema:
type: integer
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/directDebitMandatePost'
examples:
fullFinancialInformation:
value:
directDebitMandate:
directDebitMandateTypeId: 1
billingInformationId: 1
mandateReference: Dit is een test Reference
minimumdirectDebitMandate:
value:
directDebitMandate:
directDebitMandateTypeId: 1
billingInformationId: 1
mandateReference: Dit is een test Reference
required: true
responses:
'201':
description: Successful created financial information for a customer profile.
content:
application/json:
schema:
$ref: >-
#/components/schemas/postCustomerProfileDirectDebitMandateResponse
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400Response'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/401Response'
'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}/financials:
get:
tags:
- ABTCustomersFinancials
summary: Search for customer profile financial information
description: 'search for a customer profile in the ABT database with query parameters '
parameters:
- name: customerNumber
in: path
required: true
style: simple
explode: false
schema:
type: integer
responses:
'200':
description: Successful retrieved a customer profile
content:
application/json:
schema:
$ref: '#/components/schemas/getCustomerProfileFinancials'
examples:
fullFinancialInformation:
value:
customerNumber: 1000003
billingInformation:
- billingInformationId: 1
iban: '1234567890'
bic: ING
ascription: Dit is een Test
alias: Alias Test
created: "2024-06-02T15:03:460"
- billingInformationId: 2
iban: '0987654321'
bic: null
ascription: Dit is een Test
alias: Alias Test
created: "2024-06-02T15:03:460"
directDebitMandate:
- directDebitMandateId: 1
directDebitMandateTypeName: PIN Transaction
billingInformationId: 1
created: '1900-01-01T00:00:00.000'
mandateReference: Dit is een test Reference
mandateState: SIGNED
updateTimestamp: '2024-01-01T00:00:00.000'
- directDebitMandateId: 2
directDebitMandateTypeName: Paper Contract
billingInformationId: 1
created: '1900-01-01T00:00:00.000'
mandateReference: Dit is een test Reference
mandateState: CANCELLED
updateTimestamp: '2024-01-01T00:00:00.000'
missingBillingInformation:
value:
customerNumber: 1000003
billingInformation: []
directDebitMandate:
- directDebitMandateId: 1
directDebitMandateTypeName: PIN transaction
billingInformationId: 1
created: '1900-01-01T00:00:00.000'
mandateReference: Dit is een test Reference
updateTimestamp: '1900-01-01T00:00:00.000'
- directDebitMandateId: 2
directDebitMandateTypeName: Paper Contract
billingInformationId: 1
created: '1900-01-01T00:00:00.000'
mandateReference: Dit is een test Reference
updateTimestamp: '1900-01-01T00:00:00.000'
missingDebitMandateInformation:
value:
customerNumber: 1000003
billingInformation:
- billingInformationId: 1
iban: '1234567890'
bic: ING
ascription: Dit is een Test
alias: Alias Test
created: "2024-06-02T15:03:460"
- billingInformationId: 2
iban: '0987654321'
bic: null
ascription: Dit is een Test
alias: Alias Test
created: "2024-06-02T15:03:460"
directDebitMandate: []
minimumFinancialInformation:
value:
customerNumber: 1000003
billingInformation: []
directDebitMandate: []
'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
/selfservice/customers/{customerNumber}/financials/directdebitmandates/{directDebitMandateId}:
patch:
tags:
- ABTCustomersFinancialsSelfService
summary: Modify direct debit mandate information for a customer profile.
description: Modify direct debit mandate for a customer profile.
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- name: customerNumber
in: path
required: true
style: simple
explode: false
schema:
type: integer
- name: directDebitMandateId
in: path
required: true
style: simple
explode: false
schema:
type: integer
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/directDebitMandatePatch'
examples:
updateFullDirectDebitMandate:
value:
directDebitMandate:
directDebitMandateTypeId: 1
billingInformationId: 1
mandateReference: Dit is een test Reference
mandateState: SIGNED
updateDirectDebitMandateType:
value:
directDebitMandate:
directDebitMandateTypeId: 1
updateBillingInformationId:
value:
directDebitMandate:
billingInformationId: 2
updateMandateReference:
value:
directDebitMandate:
mandateReference: Updated Reference
updateMandateState:
value:
directDebitMandate:
mandateState: PREPARED
required: true
responses:
'201':
description: Successful created financial information for a customer profile.
content:
application/json:
schema:
$ref: >-
#/components/schemas/patchCustomerProfileCustomerNumberResponse
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400Response'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/401Response'
'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
/selfservice/customers/{customerNumber}/financials/billinginformation/{billingInformationId}:
patch:
tags:
- ABTCustomersFinancialsSelfService
summary: Modify billing information for a customer profile.
description: Modify billing information for a customer profile.
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- name: customerNumber
in: path
required: true
style: simple
explode: false
schema:
type: integer
- name: billingInformationId
in: path
required: true
style: simple
explode: false
schema:
type: integer
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/billingInformationPatch'
examples:
updateFullBillingInformation:
value:
billingInformation:
iban: '1234567890'
bic: ING
ascription: Dit is een Test
alias: Alias Test
updateIban:
value:
billingInformation:
iban: '0987654321'
updateBic:
value:
billingInformation:
bic: DEUT
updateAscription:
value:
billingInformation:
ascription: Updated Ascription
updateAlias:
value:
billingInformation:
alias: Updated Alias
updateBillingAddressId:
value:
billingInformation:
billingAddressId: 3
required: true
responses:
'201':
description: Successful created financial information for a customer profile.
content:
application/json:
schema:
$ref: >-
#/components/schemas/patchCustomerProfileCustomerNumberResponse
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400Response'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/401Response'
'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
/selfservice/customers/{customerNumber}/financials/billinginformation:
post:
tags:
- ABTCustomersFinancialsSelfService
summary: Create billing information for a customer profile.
description: Create billing information for a customer profile.
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- name: customerNumber
in: path
required: true
style: simple
explode: false
schema:
type: integer
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/billingInformationPost'
examples:
fullFinancialInformation:
value:
billingInformation:
iban: '1234567890'
bic: ING
ascription: Dit is een Test
alias: Alias Test
billingAddressId: 2
minimumBillingInformation:
value:
billingInformation:
iban: '1234567890'
ascription: Dit is een Test
alias: Alias Test
billingAddressId: 2
required: true
responses:
'201':
description: Successful created financial information for a customer profile.
content:
application/json:
schema:
$ref: >-
#/components/schemas/postCustomerProfileBillingInformationResponse
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400Response'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/401Response'
'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
/selfservice/customers/{customerNumber}/financials/directdebitmandates:
post:
tags:
- ABTCustomersFinancialsSelfService
summary: Create direct debit mandate for a customer profile.
description: Create direct debit mandate for a customer profile.
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- name: customerNumber
in: path
required: true
style: simple
explode: false
schema:
type: integer
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/directDebitMandatePost'
examples:
fullFinancialInformation:
value:
directDebitMandate:
directDebitMandateTypeId: 1
billingInformationId: 1
mandateReference: Dit is een test Reference
minimumdirectDebitMandate:
value:
directDebitMandate:
directDebitMandateTypeId: 1
billingInformationId: 1
mandateReference: Dit is een test Reference
required: true
responses:
'201':
description: Successful created financial information for a customer profile.
content:
application/json:
schema:
$ref: >-
#/components/schemas/postCustomerProfileDirectDebitMandateResponse
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400Response'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/401Response'
'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
/selfservice/customers/{customerNumber}/financials:
get:
tags:
- ABTCustomersFinancialsSelfService
summary: Search for customer profile financial information
description: 'search for a customer profile in the ABT database with query parameters '
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- name: customerNumber
in: path
required: true
style: simple
explode: false
schema:
type: integer
responses:
'200':
description: Successful retrieved a customer profile
content:
application/json:
schema:
$ref: '#/components/schemas/getCustomerProfileFinancials'
examples:
fullFinancialInformation:
value:
customerNumber: 1000003
billingInformation:
- billingInformationId: 1
iban: '1234567890'
bic: ING
ascription: Dit is een Test
alias: Alias Test
billingAddressId: 2
created: '2024-01-01T00:00:00.000'
- billingInformationId: 2
iban: '0987654321'
bic: null
ascription: Dit is een Test
alias: Alias Test
billingAddressId: 3
created: '2024-01-01T00:00:00.000'
directDebitMandate:
- directDebitMandateId: 1
directDebitMandateTypeName: PIN transaction
billingInformationId: 1
created: '1900-01-01T00:00:00.000'
mandateReference: Dit is een test Reference
mandateState: SIGNED
updateTimestamp: '2024-01-01T00:00:00.000'
- directDebitMandateId: 2
directDebitMandateTypeName: Paper Contract
billingInformationId: 1
created: '1900-01-01T00:00:00.000'
mandateReference: Dit is een test Reference
mandateState: CANCELLED
updateTimestamp: '2024-01-01T00:00:00.000'
missingBillingInformation:
value:
customerNumber: 1000003
billingInformation: []
directDebitMandate:
- directDebitMandateId: 1
directDebitMandateTypeName: PIN transaction
billingInformationId: 1
created: '1900-01-01T00:00:00.000'
mandateReference: Dit is een test Reference
updateTimestamp: '1900-01-01T00:00:00.000'
- directDebitMandateId: 2
directDebitMandateTypeName: Paper Contract
billingInformationId: 1
created: '1900-01-01T00:00:00.000'
mandateReference: Dit is een test Reference
updateTimestamp: '1900-01-01T00:00:00.000'
missingDebitMandateInformation:
value:
customerNumber: 1000003
billingInformation:
- billingInformationId: 1
iban: '1234567890'
bic: ING
ascription: Dit is een Test
alias: Alias Test
created: "2024-06-02T15:03:460"
- billingInformationId: 2
iban: '0987654321'
bic: null
ascription: Dit is een Test
alias: Alias Test
created: "2024-06-02T15:03:460"
directDebitMandate: []
minimumFinancialInformation:
value:
customerNumber: 1000003
billingInformation: []
directDebitMandate: []
'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/list:
get:
tags:
- ABTCustomers
summary: Search for customer profile list
description: >-
search for a customer profile list in the ABT database with query
parameters
parameters:
- name: customerProfileId
in: query
required: false
style: form
explode: true
schema:
type: number
- name: customerNumber
in: query
required: false
style: form
explode: true
schema:
type: number
- name: emailAddress
in: query
required: false
style: form
explode: true
schema:
type: string
- name: chipCardNumber
in: query
required: false
style: form
explode: true
schema:
type: string
- name: ovPasNumber
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
- name: birthname
in: query
required: false
style: form
explode: true
schema:
type: string
- name: surname
in: query
required: false
style: form
explode: true
schema:
type: string
- name: dateOfBirth
in: query
required: false
style: form
explode: true
schema:
type: string
- name: customerStatus
in: query
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: Successful retrieved a customer profile
content:
application/json:
schema:
$ref: '#/components/schemas/getCustomerProfileList'
examples:
fullCustomerProfile:
value:
Entries:
- customerProfileId: 1
customerNumber: 1000001
debtorNumber: TEST001
debtorStateId: 1
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'
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
addressType: Billing
- addressId: 2
street: mystreet 33
houseNumber: 1
houseNumberSuffix: null
postalCode: 4455CA
city: Den BOSCH
country: NL
addressType: Shipping
phone:
- phoneId: 1
number: '3112345678'
countryCode: NL
phoneType: TestNaam
isPreferred: true
- phoneId: 2
number: '333225588'
countryCode: ES
phoneType: TestNaam
isPreferred: false
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
- customerNumber: 1000002
debtorNumber: TEST001
debtorStateId: 1
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'
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
addressType: Billing
- addressId: 2
street: mystreet 33
houseNumber: 1
houseNumberSuffix: null
postalCode: 4455CA
city: Den BOSCH
country: NL
addressType: Shipping
phone:
- phoneId: 1
number: '3112345678'
countryCode: NL
phoneType: TestNaam
isPreferred: true
- phoneId: 2
number: '333225588'
countryCode: ES
phoneType: TestNaam
isPreferred: false
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
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':
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:
get:
tags:
- ABTCustomers
summary: Search for customer profile
description: 'search for a customer profile in the ABT database with query parameters '
parameters:
- name: customerProfileId
in: query
required: false
style: form
explode: true
schema:
type: number
- name: customerNumber
in: query
required: false
style: form
explode: true
schema:
type: number
- name: emailAddress
in: query
required: false
style: form
explode: true
schema:
type: string
- name: chipCardNumber
in: query
required: false
style: form
explode: true
schema:
type: string
- name: ovPasNumber
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
- name: birthname
in: query
required: false
style: form
explode: true
schema:
type: string
- name: surname
in: query
required: false
style: form
explode: true
schema:
type: string
- name: dateOfBirth
in: query
required: false
style: form
explode: true
schema:
type: string
- name: customerStatus
in: query
required: false
style: form
explode: true
schema:
type: string
responses:
'200':
description: Successful retrieved a customer profile
content:
application/json:
schema:
$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
addressType: Billing
- addressId: 2
street: mystreet 33
houseNumber: 1
houseNumberSuffix: null
postalCode: 4455CA
city: Den BOSCH
country: NL
addressType: Shipping
phone:
- phoneId: 1
number: '3112345678'
countryCode: NL
phoneType: TestNaam
isPreferred: true
- phoneId: 2
number: '333225588'
countryCode: ES
phoneType: TestNaam
isPreferred: false
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
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':
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 customer profile
description: >-
Create a customer profile in the ABT database with status ACTIVE and
debtorStatus Inactive with a start date based on the timestamp of this
post call.
- Requested format for postal code:
- 0000AA
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/postCustomerProfile'
examples:
minimumProfile:
value: {}
basicCustomerProfile:
value:
debtorStatusId: 2
person:
birthname: Jan
surname: Jansen
emailAddress: j.jansen@hatseflats.nl
fullCustomerProfile:
value:
customerPreference:
languageId: 1
debtorStatusId: 2
person:
birthname: Jan
surname: Jansen
prefix: dhr
suffix: jr
dateOfBirth: '1970-01-01'
emailAddress: j.jansen@hatseflats.nl
addresses:
- street: Laan van Meerdervoort
houseNumber: 5
houseNumberSuffix: B
postalCode: 2500AA
city: Den Haag
country: NL
addressTypeId: 1
- street: Beeklaan
houseNumber: 30
houseNumberSuffix: B
postalCode: 2500AA
city: Den Haag
country: NL
addressTypeId: 2
phones:
- number: '6123456789'
countryCode: '0031'
phoneTypeId: 1
isPreferred: true
- number: '7012345678'
countryCode: '0031'
phoneTypeId: 2
isPreferred: false
required: true
responses:
'201':
description: Successful created a customer profile
content:
application/json:
schema:
$ref: '#/components/schemas/postCustomerProfileCustomerNumberResponse'
'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'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/409Response'
examples:
emailAddressAlreadyPresent:
value:
code: '409'
type: Conflict
message: emailAddress already exists.
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
addressTypeId: 1
addMinimumAddress:
value:
address:
street: Laan van Meerdervoort
houseNumber: 5
postalCode: 2500AA
city: Den Haag
country: NL
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
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: 1
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'
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/selfservice/customers:
get:
tags:
- ABTCustomersSelfService
summary: Search for customer profile
description: Search for a customer profile based on the sub element from JWT
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
responses:
'200':
description: Successful retrieved a customer profile
content:
application/json:
schema:
$ref: '#/components/schemas/getCustomerProfile'
examples:
fullCustomerProfile:
value:
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
addressType: Billing
- addressId: 2
street: mystreet 33
houseNumber: 1
houseNumberSuffix: null
postalCode: 4455CA
city: Den BOSCH
country: NL
addressType: Shipping
phone:
- phoneId: 1
number: '3112345678'
countryCode: NL
phoneType: TestNaam
isPreferred: true
- phoneId: 2
number: '333225588'
countryCode: ES
phoneType: TestNaam
isPreferred: false
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
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':
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:
- ABTCustomersSelfService
summary: Create for customer profile
description: Create a customer profile based on the sub element from JWT
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/postCustomerProfile'
examples:
minimumProfile:
value: {}
basicCustomerProfile:
value:
debtorStatusId: 2
person:
birthname: Jan
surname: Jansen
emailAddress: j.jansen@hatseflats.nl
fullCustomerProfile:
value:
customerPreference:
languageId: 1
debtorStatusId: 2
person:
birthname: Jan
surname: Jansen
prefix: dhr
suffix: jr
dateOfBirth: '1970-01-01'
emailAddress: j.jansen@hatseflats.nl
addresses:
- street: Laan van Meerdervoort
houseNumber: 5
houseNumberSuffix: B
postalCode: 2500AA
city: Den Haag
country: NL
addressTypeId: 1
- street: Beeklaan
houseNumber: 30
houseNumberSuffix: B
postalCode: 2500AA
city: Den Haag
country: NL
addressTypeId: 2
phones:
- number: '6123456789'
countryCode: '0031'
phoneTypeId: 1
isPreferred: true
- number: '7012345678'
countryCode: '0031'
phoneTypeId: 2
isPreferred: false
required: true
responses:
'201':
description: Successful created a customer profile
content:
application/json:
schema:
$ref: '#/components/schemas/postCustomerProfileCustomerNumberResponse'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/400Response'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/401Response'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/409Response'
examples:
emailAddressAlreadyPresent:
value:
code: '409'
type: Conflict
message: emailAddress already exists.
description: ''
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/500Response'
security:
- default: []
x-auth-type: Application & Application User
/selfservice/customers/{customerNumber}:
patch:
tags:
- ABTCustomersSelfService
summary: Modify customer profile elements
description: Modify customer profile fields
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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\
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
/selfservice/customers/{customerNumber}/customerpreferences:
patch:
tags:
- ABTCustomersSelfService
summary: Modify customer preference elements
description: Modify customer preference fields
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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\
'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
/selfservice/customers/{customerNumber}/ovchipcards:
post:
tags:
- ABTCustomersSelfService
summary: Create a new OV chipcard for a customerProfile.
description: Create a new OV chipcard in the database for a given customer.
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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
/selfservice/customers/{customerNumber}/ovchipcards/{ovChipCardId}:
delete:
tags:
- ABTCustomersSelfService
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
/selfservice/customers/{customerNumber}/ovpaytokens:
post:
tags:
- ABTCustomersSelfService
summary: Create a new OV paytoken for a customerProfile.
description: Create a new OV paytoken in the database for a given customer.
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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 OV paytoken
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
/selfservice/customers/{customerNumber}/statuses:
post:
tags:
- ABTCustomersSelfService
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: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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/postCustomerProfileCustomerNumberResponse'
'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
/selfservice/customers/{customerNumber}/persons:
patch:
tags:
- ABTCustomersSelfService
summary: Partial update customer person details
description: Partial update a customer person details in the ABT database
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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
/selfservice/customers/{customerNumber}/ovpaytokens/{ovPayTokenId}:
delete:
tags:
- ABTCustomersSelfService
summary: Delete a OV PayToken for a customerProfile.
description: Delete a OV PayToken in the database for a given customer.
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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:
- ABTCustomersSelfService
summary: Partial update customer ovpaytokens
description: Partial update of a customer ovpaytokens in the ABT database
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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
/selfservice/customers/{customerNumber}/addresses:
post:
tags:
- ABTCustomersSelfService
summary: Create a single customer address
description: Create a single customer address in the ABT database
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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
addressTypeId: 1
addMinimumAddress:
value:
address:
street: Laan van Meerdervoort
houseNumber: 5
postalCode: 2500AA
city: Den Haag
country: NL
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
/selfservice/customers/{customerNumber}/phones:
post:
tags:
- ABTCustomersSelfService
summary: Create a single customer phonenumber
description: Create a single customer phonenumber in the ABT database
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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
/selfservice/customers/{customerNumber}/addresses/{addressId}:
delete:
tags:
- ABTCustomersSelfService
summary: Delete a customer address
description: Delete a customer address from the ABT database
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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:
- ABTCustomersSelfService
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
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: 1
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
/selfservice/customers/{customerNumber}/phones/{phoneId}:
delete:
tags:
- ABTCustomersSelfService
summary: Delete a customer phone
description: Delete a customer phone from the ABT database
parameters:
- name: X-HTM-JWT-AUTH-HEADER
in: header
required: true
style: simple
explode: false
schema:
type: string
- 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:
- ABTCustomersSelfService
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'
security:
- default: []
x-auth-type: Application & Application User
x-throttling-tier: Unlimited
components:
schemas:
audit:
type: object
properties:
auditTrailId:
type: integer
customerProfileId:
type: integer
action:
type: string
user:
type: string
timestamp:
type: string
format: datetime
correlationId:
type: string
ovPayToken:
type: object
properties:
ovPayTokenId:
type: integer
tokenTypeId:
type: integer
xTat:
type: string
xBot:
type: string
alias:
type: string
lastDigits:
type: integer
ovpasNumber:
type: string
tokenStatusId:
type: integer
expirationDate:
type: string
replacedByTokenId:
type: integer
getOvChipCard:
type: object
properties:
ovChipCardId:
type: integer
chipCardNumber:
type: integer
validUntil:
type: string
format: date
alias:
type: string
getCustomerStatus:
type: object
properties:
name:
type: string
fromInclusive:
type: string
format: date
toInclusive:
type: string
format: date
getPerson:
type: object
properties:
birthname:
type: string
surname:
type: string
prefix:
type: string
suffix:
type: string
dateOfBirth:
type: string
format: date
emailAddress:
type: string
format: email
address:
type: array
items:
$ref: '#/components/schemas/getAddress'
phone:
type: array
items:
$ref: '#/components/schemas/getPhone'
getAddress:
type: object
properties:
addressId:
type: integer
street:
type: string
houseNumber:
type: integer
houseNumberSuffix:
type: string
postalCode:
type: string
city:
type: string
country:
type: string
addressType:
type: string
getPhone:
type: object
properties:
phoneId:
type: integer
number:
type: string
countryCode:
type: string
phoneType:
type: string
isPreferred:
type: boolean
getCustomerPreference:
type: object
properties:
languageId:
type: integer
getCustomerProfileList:
type: object
properties:
Entries:
type: array
items:
$ref: '#/components/schemas/getCustomerProfile'
getCustomerProfile:
type: object
properties:
customerNumber:
type: integer
debtorNumber:
type: integer
debtorStateId:
type: integer
vascustomerNumber:
type: integer
customerPreference:
$ref: '#/components/schemas/getCustomerPreference'
customerStatus:
type: array
items:
$ref: '#/components/schemas/getCustomerStatus'
person:
$ref: '#/components/schemas/getPerson'
ovChipCard:
type: array
items:
$ref: '#/components/schemas/getOvChipCard'
ovPayToken:
type: array
items:
$ref: '#/components/schemas/ovPayToken'
audit:
type: array
items:
$ref: '#/components/schemas/audit'
directDebitMandatePostEntity:
required:
- billingInformationId
- created
- directDebitMandateTypeName
- mandateReference
type: object
properties:
directDebitMandateTypeName:
type: string
billingInformationId:
type: integer
mandateReference:
type: string
directDebitMandatePost:
type: object
properties:
directDebitMandate:
$ref: '#/components/schemas/directDebitMandatePostEntity'
directDebitMandatePatchEntity:
type: object
properties:
directDebitMandateTypeName:
type: string
billingInformationId:
type: integer
mandateReference:
type: string
mandateState:
type: string
enum:
- SIGNED
- CANCELLED
- PREPARED
directDebitMandatePatch:
type: object
properties:
directDebitMandate:
$ref: '#/components/schemas/directDebitMandatePatchEntity'
directDebitMandateGETEntity:
type: object
properties:
directDebitMandateId:
type: integer
directDebitMandateTypeId:
type: integer
billingInformationId:
type: integer
created:
type: string
mandateReference:
type: string
mandateState:
type: string
updateTimestamp:
type: string
billingInformationGETEntity:
required:
- alias
- ascription
- bic
- billingInformationId
- iban
- created
type: object
properties:
billingInformationId:
type: integer
iban:
type: string
bic:
type: string
ascription:
type: string
alias:
type: string
created:
type: string
billingInformationPostEntity:
required:
- alias
- ascription
- billingAddressId
- iban
type: object
properties:
iban:
type: string
bic:
type: string
ascription:
type: string
alias:
type: string
created:
type: string
billingInformationPost:
type: object
properties:
billingInformation:
$ref: '#/components/schemas/billingInformationPostEntity'
billingInformationPatchEntity:
type: object
properties:
iban:
type: string
bic:
type: string
ascription:
type: string
alias:
type: string
billingInformationPatch:
type: object
properties:
billingInformation:
$ref: '#/components/schemas/billingInformationPatchEntity'
getCustomerProfileFinancials:
type: object
properties:
customerNumber:
type: integer
billingInformation:
type: array
items:
$ref: '#/components/schemas/billingInformationGETEntity'
directDebitMandate:
type: array
items:
$ref: '#/components/schemas/directDebitMandateGETEntity'
customerPreferencesEntity:
type: object
properties:
languageId:
type: string
postCustomerProfile:
type: object
properties:
debtorStatusId:
type: integer
customerPreference:
$ref: '#/components/schemas/customerPreferencesEntity'
person:
$ref: '#/components/schemas/personEntity'
addresses:
type: array
items:
$ref: '#/components/schemas/addressPostEntity'
phones:
type: array
items:
$ref: '#/components/schemas/phonePostEntity'
postCustomerStatusEntity:
type: object
properties:
name:
type: string
postCustomerStatus:
type: object
properties:
customerStatus:
$ref: '#/components/schemas/postCustomerStatusEntity'
postOvChipCardEntity:
required:
- chipCardNumber
type: object
properties:
chipCardNumber:
type: integer
validUntil:
type: string
format: date
alias:
type: string
patchCustomerProfile:
type: object
properties:
debtorStatusId:
type: integer
patchCustomerPreferencesEntity:
type: object
properties:
languageId:
type: string
patchCustomerPreferences:
type: object
properties:
customerPreference:
$ref: '#/components/schemas/patchCustomerPreferencesEntity'
postOvChipCard:
type: object
properties:
ovChipCard:
$ref: '#/components/schemas/postOvChipCardEntity'
postOvPayToken:
required:
- alias
- lastDigits
- tokenTypeId
- xBot
- xTat
type: object
properties:
ovPayToken:
type: object
properties:
tokenTypeId:
type: string
xTat:
type: string
xBot:
type: string
alias:
type: string
lastDigits:
type: integer
ovpasNumber:
type: string
tokenStatusId:
type: integer
expirationDate:
type: string
replacedByTokenId:
type: integer
ovPayTokenEntity:
type: object
properties:
tokenTypeId:
type: string
xTat:
type: string
xBot:
type: string
alias:
type: string
lastDigits:
type: integer
ovpasNumber:
type: string
tokenStatusId:
type: integer
expirationDate:
type: string
replacedByTokenId:
type: integer
patchOvPayToken:
type: object
properties:
ovPayToken:
$ref: '#/components/schemas/ovPayTokenEntity'
patchPerson:
type: object
properties:
person:
$ref: '#/components/schemas/personEntity'
patchAddress:
type: object
properties:
address:
$ref: '#/components/schemas/addressPatchEntity'
patchPhone:
type: object
properties:
phone:
$ref: '#/components/schemas/phonePatchEntity'
postAddress:
type: object
properties:
address:
$ref: '#/components/schemas/addressPostEntity'
postPhone:
type: object
properties:
phone:
$ref: '#/components/schemas/phonePostEntity'
personEntity:
type: object
properties:
birthname:
type: string
surname:
type: string
prefix:
type: string
suffix:
type: string
dateOfBirth:
type: string
format: date
emailAddress:
type: string
addressPostEntity:
required:
- addressTypeId
- city
- country
- houseNumber
- postalCode
- street
type: object
properties:
street:
type: string
houseNumber:
type: integer
houseNumberSuffix:
type: string
postalCode:
type: string
city:
type: string
country:
type: string
addressTypeId:
type: integer
addressPatchEntity:
type: object
properties:
street:
type: string
houseNumber:
type: integer
houseNumberSuffix:
type: string
postalCode:
type: string
city:
type: string
country:
type: string
addressTypeId:
type: integer
phonePostEntity:
required:
- countryCode
- number
- phoneTypeId
type: object
properties:
number:
type: string
countryCode:
type: string
phoneTypeId:
type: integer
isPreferred:
type: boolean
phonePatchEntity:
type: object
properties:
number:
type: string
countryCode:
type: string
phoneTypeId:
type: integer
isPreferred:
type: boolean
defaultCustomerProfileResponse:
type: object
properties:
customerNumber:
type: integer
example: 10000001
phonePatchOKResponse:
type: object
properties:
id:
type: integer
example: 1
addressPatchOKResponse:
type: object
properties:
id:
type: integer
example: 1
postCustomerProfileCustomerNumberResponse:
type: object
properties:
customerNumber:
type: integer
example: 10000001
postCustomerProfileAddressResponse:
type: object
properties:
customerNumber:
type: integer
example: 10000001
addressId:
type: integer
example: 1
postCustomerProfilePhoneResponse:
type: object
properties:
customerNumber:
type: integer
example: 10000001
phoneId:
type: integer
example: 1
postCustomerProfileBillingInformationResponse:
type: object
properties:
customerNumber:
type: integer
example: 10000001
billingInformationId:
type: integer
example: 1
postCustomerProfileDirectDebitMandateResponse:
type: object
properties:
customerNumber:
type: integer
example: 10000001
directDebitMandateId:
type: integer
example: 1
postCustomerProfileOvChipCardResponse:
type: object
properties:
customerNumber:
type: integer
example: 10000001
ovChipCardId:
type: integer
example: 1
patchCustomerProfileResponse:
type: object
properties:
customerNumber:
type: integer
example: 10000001
patchCustomerPreferencesResponse:
type: object
properties:
customerNumber:
type: integer
example: 10000001
ovPayTokenGetEntity:
type: object
properties:
ovPayTokenId:
type: integer
example: 1
tokenTypeId:
type: integer
example: 1
xTat:
type: string
example: 0044831b-8e80c-4f82-r989a-8d85ee1996
xBot:
type: string
example: 0044831b-8e80c-4f82-r989a-8d85ee1996
lastDigits:
type: string
example: '0001'
ovpasNumber:
type: integer
example: 1
alias:
type: string
example: alias
tokenStatusId:
type: integer
expirationDate:
type: string
replacedByTokenId:
type: integer
getCustomerProfileOvPayTokenResponse:
type: object
properties:
ovPayToken:
type: array
items:
$ref: '#/components/schemas/ovPayTokenGetEntity'
postCustomerProfileOvPayTokenResponse:
type: object
properties:
ovPaytoken:
type: object
example: 10000001
ovPayTokenId:
type: integer
example: 1
patchCustomerProfileCustomerNumberResponse:
type: object
properties:
customerNumber:
type: integer
example: 10000001
400Response:
type: object
properties:
code:
type: string
example: '400'
type:
type: string
message:
type: string
example: Bad Request
description:
type: string
example: >-
'Bad Request: Input parameters missing! Please fill in at least 1
valid input parameter.
401Response:
type: object
properties:
code:
type: string
example: '900901'
type:
type: string
message:
type: string
example: Invalid Credentials
description:
type: string
example: >-
Invalid Credentials. Make sure you have provided the correct
security credentials
404Response:
type: object
properties:
code:
type: string
example: '404'
type:
type: string
example: Status report
message:
type: string
example: Not Found
description:
type: string
example: The requested resource is not available.
409Response:
type: object
properties:
code:
type: string
example: '409'
type:
type: string
example: Conflict
message:
type: string
example: Entry already exists
description:
type: string
422Response:
type: object
properties:
code:
type: string
example: '422'
type:
type: string
example: Unprocessable entity
message:
type: string
example: >-
Forbidden state transition requested! From Active to Cleared not
allowed.
description:
type: string
500Response:
type: object
properties:
code:
type: string
example: '500'
type:
type: string
message:
type: string
example: Internal Server Error
description:
type: string
securitySchemes:
default:
type: oauth2
flows:
implicit:
authorizationUrl: https://services.acc.api.htm.nl/authorize
scopes: {}