develop #38
@ -1,8 +1,8 @@
|
||||
openapi: 3.0.1
|
||||
info:
|
||||
title: Personal Account Data (PAD) APIs for touchpoints
|
||||
title: Personal Account Data (PAD) APIs for touchpoints and Service Engine
|
||||
description: |-
|
||||
APIs for touchpoints to manage Personal Account Data (PAD) on OVpay tokens (xTATs).\
|
||||
APIs for touchpoints and Service Engine to manage Personal Account Data (PAD) on OVpay tokens (xTATs).\
|
||||
These APIs connect directly to the PADP APIs in GBO APIM and are implemented in Logic Apps
|
||||
in the Integration Layer.
|
||||
version: '1.0'
|
||||
@ -11,6 +11,8 @@ servers:
|
||||
tags:
|
||||
- name: Personal Data APIs for touchpoints
|
||||
description: Personal Data APIs for touchpoints, no Service Engine in between!
|
||||
- name: Personal Data APIs for Service Engine
|
||||
description: Personal Data APIs for Service Engine, not to be exposed to touchpoints!
|
||||
paths:
|
||||
/personal-data/{xtat}:
|
||||
post:
|
||||
@ -230,8 +232,189 @@ paths:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/ErrorResponse'
|
||||
/personal-data/{xtat}/administrative-data:
|
||||
get:
|
||||
tags:
|
||||
- Personal Data APIs for Service Engine
|
||||
summary: API 1211 - Get Administrative Data
|
||||
description: Integration Layer utilizes PAD management V2 in GBO APIM (`/pad-management/v2/..`)
|
||||
operationId: GetAdministrativeData
|
||||
parameters:
|
||||
- name: xtat
|
||||
description: xTAT to get administrative data for
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: string
|
||||
format: uuid
|
||||
example: 'c3a6c0f2-3b6a-4b9a-9c5d-5d9c6b3a4c5d'
|
||||
responses:
|
||||
"200":
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/AdministrativeData"
|
||||
examples:
|
||||
Valid and complete PAD:
|
||||
summary: Valid and complete PAD
|
||||
value:
|
||||
name:
|
||||
inaccuracyFlag: false
|
||||
inaccuracyFlagReason: null
|
||||
inaccuracyFlagCounter: 0
|
||||
changeCounter: 0
|
||||
maxUpdatesVerificationCount: 1
|
||||
lastChangeDate: "2025-03-26T10:18:42.947"
|
||||
isValidated: false
|
||||
photo:
|
||||
inaccuracyFlag: false
|
||||
inaccuracyFlagReason: null
|
||||
inaccuracyFlagCounter: 0
|
||||
changeCounter: 0
|
||||
maxUpdatesVerificationCount: 5
|
||||
lastChangeDate: "2025-03-26T10:18:42.947"
|
||||
isValidated: false
|
||||
birthdate:
|
||||
inaccuracyFlag: false
|
||||
inaccuracyFlagReason: null
|
||||
inaccuracyFlagCounter: 0
|
||||
changeCounter: 0
|
||||
maxUpdatesVerificationCount: 3
|
||||
lastChangeDate: "2025-03-26T10:18:42.947"
|
||||
isValidated: false
|
||||
Partially filled PAD (no photo):
|
||||
summary: Partially filled PAD (no photo)
|
||||
value:
|
||||
name:
|
||||
inaccuracyFlag: false
|
||||
inaccuracyFlagReason: null
|
||||
inaccuracyFlagCounter: 0
|
||||
changeCounter: 0
|
||||
maxUpdatesVerificationCount: 1
|
||||
lastChangeDate: "2025-03-26T10:18:42.947"
|
||||
isValidated: false
|
||||
photo: null
|
||||
birthdate:
|
||||
inaccuracyFlag: false
|
||||
inaccuracyFlagReason: null
|
||||
inaccuracyFlagCounter: 0
|
||||
changeCounter: 0
|
||||
maxUpdatesVerificationCount: 3
|
||||
lastChangeDate: "2025-03-26T10:18:42.947"
|
||||
isValidated: false
|
||||
Flagged PAD:
|
||||
summary: Flagged PAD
|
||||
value:
|
||||
name:
|
||||
inaccuracyFlag: true
|
||||
inaccuracyFlagReason: "Invalid name"
|
||||
inaccuracyFlagCounter: 1
|
||||
changeCounter: 1
|
||||
maxUpdatesVerificationCount: 1
|
||||
lastChangeDate: "2025-03-26T10:18:42.947"
|
||||
isValidated: false
|
||||
photo:
|
||||
inaccuracyFlag: true
|
||||
inaccuracyFlagReason: "Invalid photo"
|
||||
inaccuracyFlagCounter: 1
|
||||
changeCounter: 0
|
||||
maxUpdatesVerificationCount: 5
|
||||
lastChangeDate: "2025-03-26T10:18:42.947"
|
||||
isValidated: false
|
||||
birthdate:
|
||||
inaccuracyFlag: true
|
||||
inaccuracyFlagReason: "Invalid birthdate"
|
||||
inaccuracyFlagCounter: 1
|
||||
changeCounter: 2
|
||||
maxUpdatesVerificationCount: 3
|
||||
lastChangeDate: "2025-03-26T10:18:42.947"
|
||||
isValidated: false
|
||||
"400":
|
||||
description: Bad Request
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/ErrorResponse"
|
||||
examples:
|
||||
Invalid UUID:
|
||||
summary: Invalid UUID
|
||||
value:
|
||||
errors:
|
||||
code: "0x03000103"
|
||||
data: [
|
||||
"geen-uuid"
|
||||
]
|
||||
message: "The provided scTat is not a valid UUID"
|
||||
exceptionClassName: "PadpConstraintViolationException"
|
||||
exceptionStackTrace: "not available because debug mode is turned off"
|
||||
"404":
|
||||
description: Not Found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/ErrorResponse"
|
||||
examples:
|
||||
No PAD found for xTAT:
|
||||
summary: No PAD found for xTAT
|
||||
value:
|
||||
errors:
|
||||
code: "0x03000105"
|
||||
data: []
|
||||
message: "Transit account not found"
|
||||
exceptionClassName: "PadpEntityNotFoundException"
|
||||
exceptionStackTrace: "not available because debug mode is turned off"
|
||||
"500":
|
||||
description: Internal Server Error
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: "#/components/schemas/ErrorResponse"
|
||||
examples:
|
||||
Unknown xTAT:
|
||||
summary: Unknown xTAT
|
||||
value:
|
||||
errors:
|
||||
code: "0x00000001"
|
||||
data: null
|
||||
message: "400 : \"{\"errorMessage\":{\"referenceId\":\"076f0de4-df33-42a3-add0-def971ab6679\",\"message\":\"Unknown external transit account token.\"},\"businessExceptions\":[{\"code\":\"TM0207\",\"message\":\"Unknown external transit account token.\"}]}\""
|
||||
exceptionClassName: "BadRequest"
|
||||
exceptionStackTrace: "not available because debug mode is turned off"
|
||||
components:
|
||||
schemas:
|
||||
AdministrativeData:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
$ref: '#/components/schemas/AdministrativeDataElement'
|
||||
photo:
|
||||
$ref: '#/components/schemas/AdministrativeDataElement'
|
||||
birthdate:
|
||||
$ref: '#/components/schemas/AdministrativeDataElement'
|
||||
additionalProperties: false
|
||||
AdministrativeDataElement:
|
||||
type: object
|
||||
properties:
|
||||
inaccuracyFlag:
|
||||
type: boolean
|
||||
inaccuracyFlagReason:
|
||||
type: string
|
||||
nullable: true
|
||||
inaccuracyFlagCounter:
|
||||
type: integer
|
||||
format: int32
|
||||
changeCounter:
|
||||
type: integer
|
||||
format: int32
|
||||
maxUpdatesVerificationCount:
|
||||
type: integer
|
||||
format: int32
|
||||
lastChangeDate:
|
||||
type: string
|
||||
format: date-time
|
||||
isValidated:
|
||||
type: boolean
|
||||
additionalProperties: false
|
||||
DecryptedData:
|
||||
type: object
|
||||
properties:
|
||||
|
||||
Loading…
Reference in New Issue
Block a user