@mojaloop/api-snippets 12.8.0 → 13.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -0
- package/docs/fspiop-rest-v1.0-openapi3-snippets.yaml +2 -0
- package/docs/fspiop-rest-v1.1-openapi3-snippets.yaml +2 -0
- package/docs/thirdparty-openapi3-snippets.yaml +832 -1082
- package/fspiop/v1_0/openapi3/components/schemas/Currency.yaml +2 -0
- package/fspiop/v1_1/openapi3/components/schemas/Currency.yaml +2 -0
- package/lib/fspiop/v1_0/openapi.d.ts +1 -1
- package/lib/fspiop/v1_1/openapi.d.ts +1 -1
- package/lib/thirdparty/index.d.ts +9 -5
- package/lib/thirdparty/openapi.d.ts +2325 -2925
- package/package.json +4 -2
- package/tests/dto/thirdparty.test.ts +37 -25
- package/thirdparty/openapi3/components/schemas/Account.yaml +2 -2
- package/thirdparty/openapi3/components/schemas/AccountAddress.yaml +7 -0
- package/thirdparty/openapi3/components/schemas/AccountsIDPutResponse.yaml +2 -1
- package/thirdparty/openapi3/components/schemas/ConsentRequestsIDPatchRequest.yaml +1 -1
- package/thirdparty/openapi3/components/schemas/ConsentRequestsIDPutResponseOTP.yaml +8 -8
- package/thirdparty/openapi3/components/schemas/ConsentRequestsIDPutResponseWeb.yaml +11 -11
- package/thirdparty/openapi3/components/schemas/ConsentRequestsPostRequest.yaml +12 -5
- package/thirdparty/openapi3/components/schemas/ConsentStatus.yaml +9 -0
- package/thirdparty/openapi3/components/schemas/ConsentStatusIssued.yaml +7 -0
- package/thirdparty/openapi3/components/schemas/ConsentStatusRevoked.yaml +7 -0
- package/thirdparty/openapi3/components/schemas/ConsentsIDPatchResponseRevoked.yaml +1 -1
- package/thirdparty/openapi3/components/schemas/ConsentsIDPatchResponseVerified.yaml +1 -1
- package/thirdparty/openapi3/components/schemas/ConsentsIDPutResponseSigned.yaml +2 -0
- package/thirdparty/openapi3/components/schemas/ConsentsIDPutResponseVerified.yaml +2 -0
- package/thirdparty/openapi3/components/schemas/ConsentsPostRequestAUTH.yaml +6 -1
- package/thirdparty/openapi3/components/schemas/ConsentsPostRequestPISP.yaml +10 -6
- package/thirdparty/openapi3/components/schemas/CredentialStatusPending.yaml +7 -0
- package/thirdparty/openapi3/components/schemas/CredentialStatusVerified.yaml +7 -0
- package/thirdparty/openapi3/components/schemas/CredentialType.yaml +2 -0
- package/thirdparty/openapi3/components/schemas/FIDOPublicKeyCredentialAttestation.yaml +6 -6
- package/thirdparty/openapi3/components/schemas/GenericCredential.yaml +13 -0
- package/thirdparty/openapi3/components/schemas/Scope.yaml +6 -9
- package/thirdparty/openapi3/components/schemas/ScopeAction.yaml +12 -0
- package/thirdparty/openapi3/components/schemas/ServicesServiceTypePutResponse.yaml +2 -0
- package/thirdparty/openapi3/components/schemas/SignedCredential.yaml +5 -6
- package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsAuthorizationsIDPutResponseFIDO.yaml +2 -2
- package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsAuthorizationsIDPutResponseGeneric.yaml +2 -2
- package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsTransactionsIDPutResponse.yaml +0 -3
- package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsTransactionsPostRequest.yaml +8 -3
- package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsVerificationsPostRequestFIDO.yaml +2 -2
- package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsVerificationsPostRequestGeneric.yaml +2 -2
- package/thirdparty/openapi3/components/schemas/Uri.yaml +8 -0
- package/thirdparty/openapi3/openapi.yaml +0 -14
- package/thirdparty/openapi3/paths/consentRequests.yaml +2 -1
- package/thirdparty/openapi3/paths/consentRequests_ID.yaml +41 -5
- package/thirdparty/openapi3/paths/consents.yaml +2 -2
- package/thirdparty/openapi3/paths/consents_ID.yaml +8 -5
- package/thirdparty/openapi3/paths/thirdpartyRequests_authorizations.yaml +3 -30
- package/thirdparty/openapi3/paths/thirdpartyRequests_authorizations_ID.yaml +36 -14
- package/thirdparty/openapi3/paths/thirdpartyRequests_transactions.yaml +6 -27
- package/thirdparty/openapi3/paths/thirdpartyRequests_transactions_ID.yaml +0 -2
- package/thirdparty/openapi3/paths/thirdpartyRequests_verifications.yaml +0 -13
- package/thirdparty/openapi3/paths/thirdpartyRequests_verifications_ID.yaml +32 -0
- package/thirdparty/openapi3/thirdparty-dfsp-api.template.yaml +53 -0
- package/thirdparty/openapi3/thirdparty-dfsp-api.yaml +2637 -0
- package/thirdparty/openapi3/thirdparty-pisp-api.template.yaml +57 -0
- package/thirdparty/openapi3/thirdparty-pisp-api.yaml +2842 -0
- package/thirdparty/openapi3/components/schemas/AccountId.yaml +0 -9
- package/thirdparty/openapi3/components/schemas/AuthenticationInfo.yaml +0 -11
- package/thirdparty/openapi3/components/schemas/ConsentScopeType.yaml +0 -9
- package/thirdparty/openapi3/components/schemas/ConsentStatusTypeRevoked.yaml +0 -7
- package/thirdparty/openapi3/components/schemas/ConsentStatusTypeVerified.yaml +0 -7
- package/thirdparty/openapi3/paths/thirdpartyRequests_transactions_tsa.yaml +0 -73
|
@@ -0,0 +1,2842 @@
|
|
|
1
|
+
openapi: 3.0.1
|
|
2
|
+
info:
|
|
3
|
+
title: Mojaloop Third Party API (PISP)
|
|
4
|
+
version: '1.0'
|
|
5
|
+
description: |
|
|
6
|
+
A Mojaloop API for Payment Initiation Service Providers (PISPs) to perform Third Party functions on DFSPs' User's accounts.
|
|
7
|
+
DFSPs who want to enable Payment Initiation Service Providers (PISPs) should implement the accompanying API - Mojaloop Third Party API (DFSP) instead.
|
|
8
|
+
license:
|
|
9
|
+
name: Open API for FSP Interoperability (FSPIOP) (Implementation Friendly Version)
|
|
10
|
+
url: 'https://github.com/mojaloop/mojaloop-specification/blob/master/LICENSE.md'
|
|
11
|
+
servers:
|
|
12
|
+
- url: /
|
|
13
|
+
paths:
|
|
14
|
+
'/accounts/{ID}':
|
|
15
|
+
parameters:
|
|
16
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
17
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
18
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
19
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
20
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
21
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
22
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
23
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
24
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
25
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
26
|
+
get:
|
|
27
|
+
operationId: GetAccountsByUserId
|
|
28
|
+
summary: GetAccountsByUserId
|
|
29
|
+
description: |
|
|
30
|
+
The HTTP request `GET /accounts/{ID}` is used to retrieve the list of potential accounts available for linking.
|
|
31
|
+
tags:
|
|
32
|
+
- accounts
|
|
33
|
+
- sampled
|
|
34
|
+
parameters:
|
|
35
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
36
|
+
responses:
|
|
37
|
+
'202':
|
|
38
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
39
|
+
'400':
|
|
40
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
41
|
+
'401':
|
|
42
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
43
|
+
'403':
|
|
44
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
45
|
+
'404':
|
|
46
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
47
|
+
'405':
|
|
48
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
49
|
+
'406':
|
|
50
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
51
|
+
'501':
|
|
52
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
53
|
+
'503':
|
|
54
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
55
|
+
put:
|
|
56
|
+
description: |
|
|
57
|
+
The HTTP request `PUT /accounts/{ID}` is used to return the list of potential accounts available for linking
|
|
58
|
+
operationId: UpdateAccountsByUserId
|
|
59
|
+
summary: UpdateAccountsByUserId
|
|
60
|
+
tags:
|
|
61
|
+
- accounts
|
|
62
|
+
- sampled
|
|
63
|
+
parameters:
|
|
64
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
65
|
+
requestBody:
|
|
66
|
+
required: true
|
|
67
|
+
content:
|
|
68
|
+
application/json:
|
|
69
|
+
schema:
|
|
70
|
+
title: AccountsIDPutResponse
|
|
71
|
+
type: object
|
|
72
|
+
description: 'The object sent in a `PUT /accounts/{ID}` request.'
|
|
73
|
+
properties:
|
|
74
|
+
accountList:
|
|
75
|
+
description: Information about the accounts that the DFSP associates with the identifier sent by the PISP
|
|
76
|
+
type: array
|
|
77
|
+
items:
|
|
78
|
+
title: Account
|
|
79
|
+
type: object
|
|
80
|
+
description: Data model for the complex type Account.
|
|
81
|
+
properties:
|
|
82
|
+
accountNickname:
|
|
83
|
+
title: Name
|
|
84
|
+
type: string
|
|
85
|
+
pattern: '^(?!\s*$)[\w .,''-]{1,128}$'
|
|
86
|
+
description: |-
|
|
87
|
+
The API data type Name is a JSON String, restricted by a regular expression to avoid characters which are generally not used in a name.
|
|
88
|
+
|
|
89
|
+
Regular Expression - The regular expression for restricting the Name type is "^(?!\s*$)[\w .,'-]{1,128}$". The restriction does not allow a string consisting of whitespace only, all Unicode characters are allowed, as well as the period (.) (apostrophe (‘), dash (-), comma (,) and space characters ( ).
|
|
90
|
+
|
|
91
|
+
**Note:** In some programming languages, Unicode support must be specifically enabled. For example, if Java is used, the flag UNICODE_CHARACTER_CLASS must be enabled to allow Unicode characters.
|
|
92
|
+
address:
|
|
93
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/scopes/items/properties/address'
|
|
94
|
+
currency:
|
|
95
|
+
title: Currency
|
|
96
|
+
description: 'The currency codes defined in [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) as three-letter alphabetic codes are used as the standard naming representation for currencies.'
|
|
97
|
+
type: string
|
|
98
|
+
minLength: 3
|
|
99
|
+
maxLength: 3
|
|
100
|
+
enum:
|
|
101
|
+
- AED
|
|
102
|
+
- AFN
|
|
103
|
+
- ALL
|
|
104
|
+
- AMD
|
|
105
|
+
- ANG
|
|
106
|
+
- AOA
|
|
107
|
+
- ARS
|
|
108
|
+
- AUD
|
|
109
|
+
- AWG
|
|
110
|
+
- AZN
|
|
111
|
+
- BAM
|
|
112
|
+
- BBD
|
|
113
|
+
- BDT
|
|
114
|
+
- BGN
|
|
115
|
+
- BHD
|
|
116
|
+
- BIF
|
|
117
|
+
- BMD
|
|
118
|
+
- BND
|
|
119
|
+
- BOB
|
|
120
|
+
- BRL
|
|
121
|
+
- BSD
|
|
122
|
+
- BTN
|
|
123
|
+
- BWP
|
|
124
|
+
- BYN
|
|
125
|
+
- BZD
|
|
126
|
+
- CAD
|
|
127
|
+
- CDF
|
|
128
|
+
- CHF
|
|
129
|
+
- CLP
|
|
130
|
+
- CNY
|
|
131
|
+
- COP
|
|
132
|
+
- CRC
|
|
133
|
+
- CUC
|
|
134
|
+
- CUP
|
|
135
|
+
- CVE
|
|
136
|
+
- CZK
|
|
137
|
+
- DJF
|
|
138
|
+
- DKK
|
|
139
|
+
- DOP
|
|
140
|
+
- DZD
|
|
141
|
+
- EGP
|
|
142
|
+
- ERN
|
|
143
|
+
- ETB
|
|
144
|
+
- EUR
|
|
145
|
+
- FJD
|
|
146
|
+
- FKP
|
|
147
|
+
- GBP
|
|
148
|
+
- GEL
|
|
149
|
+
- GGP
|
|
150
|
+
- GHS
|
|
151
|
+
- GIP
|
|
152
|
+
- GMD
|
|
153
|
+
- GNF
|
|
154
|
+
- GTQ
|
|
155
|
+
- GYD
|
|
156
|
+
- HKD
|
|
157
|
+
- HNL
|
|
158
|
+
- HRK
|
|
159
|
+
- HTG
|
|
160
|
+
- HUF
|
|
161
|
+
- IDR
|
|
162
|
+
- ILS
|
|
163
|
+
- IMP
|
|
164
|
+
- INR
|
|
165
|
+
- IQD
|
|
166
|
+
- IRR
|
|
167
|
+
- ISK
|
|
168
|
+
- JEP
|
|
169
|
+
- JMD
|
|
170
|
+
- JOD
|
|
171
|
+
- JPY
|
|
172
|
+
- KES
|
|
173
|
+
- KGS
|
|
174
|
+
- KHR
|
|
175
|
+
- KMF
|
|
176
|
+
- KPW
|
|
177
|
+
- KRW
|
|
178
|
+
- KWD
|
|
179
|
+
- KYD
|
|
180
|
+
- KZT
|
|
181
|
+
- LAK
|
|
182
|
+
- LBP
|
|
183
|
+
- LKR
|
|
184
|
+
- LRD
|
|
185
|
+
- LSL
|
|
186
|
+
- LYD
|
|
187
|
+
- MAD
|
|
188
|
+
- MDL
|
|
189
|
+
- MGA
|
|
190
|
+
- MKD
|
|
191
|
+
- MMK
|
|
192
|
+
- MNT
|
|
193
|
+
- MOP
|
|
194
|
+
- MRO
|
|
195
|
+
- MUR
|
|
196
|
+
- MVR
|
|
197
|
+
- MWK
|
|
198
|
+
- MXN
|
|
199
|
+
- MYR
|
|
200
|
+
- MZN
|
|
201
|
+
- NAD
|
|
202
|
+
- NGN
|
|
203
|
+
- NIO
|
|
204
|
+
- NOK
|
|
205
|
+
- NPR
|
|
206
|
+
- NZD
|
|
207
|
+
- OMR
|
|
208
|
+
- PAB
|
|
209
|
+
- PEN
|
|
210
|
+
- PGK
|
|
211
|
+
- PHP
|
|
212
|
+
- PKR
|
|
213
|
+
- PLN
|
|
214
|
+
- PYG
|
|
215
|
+
- QAR
|
|
216
|
+
- RON
|
|
217
|
+
- RSD
|
|
218
|
+
- RUB
|
|
219
|
+
- RWF
|
|
220
|
+
- SAR
|
|
221
|
+
- SBD
|
|
222
|
+
- SCR
|
|
223
|
+
- SDG
|
|
224
|
+
- SEK
|
|
225
|
+
- SGD
|
|
226
|
+
- SHP
|
|
227
|
+
- SLL
|
|
228
|
+
- SOS
|
|
229
|
+
- SPL
|
|
230
|
+
- SRD
|
|
231
|
+
- STD
|
|
232
|
+
- SVC
|
|
233
|
+
- SYP
|
|
234
|
+
- SZL
|
|
235
|
+
- THB
|
|
236
|
+
- TJS
|
|
237
|
+
- TMT
|
|
238
|
+
- TND
|
|
239
|
+
- TOP
|
|
240
|
+
- TRY
|
|
241
|
+
- TTD
|
|
242
|
+
- TVD
|
|
243
|
+
- TWD
|
|
244
|
+
- TZS
|
|
245
|
+
- UAH
|
|
246
|
+
- UGX
|
|
247
|
+
- USD
|
|
248
|
+
- UYU
|
|
249
|
+
- UZS
|
|
250
|
+
- VEF
|
|
251
|
+
- VND
|
|
252
|
+
- VUV
|
|
253
|
+
- WST
|
|
254
|
+
- XAF
|
|
255
|
+
- XCD
|
|
256
|
+
- XDR
|
|
257
|
+
- XOF
|
|
258
|
+
- XPF
|
|
259
|
+
- YER
|
|
260
|
+
- ZAR
|
|
261
|
+
- ZMW
|
|
262
|
+
- ZWD
|
|
263
|
+
required:
|
|
264
|
+
- accountNickname
|
|
265
|
+
- id
|
|
266
|
+
- currency
|
|
267
|
+
required:
|
|
268
|
+
- accounts
|
|
269
|
+
example:
|
|
270
|
+
- accountNickname: dfspa.user.nickname1
|
|
271
|
+
id: dfspa.username.1234
|
|
272
|
+
currency: ZAR
|
|
273
|
+
- accountNickname: dfspa.user.nickname2
|
|
274
|
+
id: dfspa.username.5678
|
|
275
|
+
currency: USD
|
|
276
|
+
responses:
|
|
277
|
+
'200':
|
|
278
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
279
|
+
'400':
|
|
280
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
281
|
+
'401':
|
|
282
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
283
|
+
'403':
|
|
284
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
285
|
+
'404':
|
|
286
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
287
|
+
'405':
|
|
288
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
289
|
+
'406':
|
|
290
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
291
|
+
'501':
|
|
292
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
293
|
+
'503':
|
|
294
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
295
|
+
'/accounts/{ID}/error':
|
|
296
|
+
parameters:
|
|
297
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
298
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
299
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
300
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
301
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
302
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
303
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
304
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
305
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
306
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
307
|
+
put:
|
|
308
|
+
description: |
|
|
309
|
+
The HTTP request `PUT /accounts/{ID}/error` is used to return error information
|
|
310
|
+
operationId: UpdateAccountsByUserIdError
|
|
311
|
+
summary: UpdateAccountsByUserIdError
|
|
312
|
+
tags:
|
|
313
|
+
- accounts
|
|
314
|
+
- sampled
|
|
315
|
+
parameters:
|
|
316
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
317
|
+
requestBody:
|
|
318
|
+
description: Details of the error returned.
|
|
319
|
+
required: true
|
|
320
|
+
content:
|
|
321
|
+
application/json:
|
|
322
|
+
schema:
|
|
323
|
+
title: ErrorInformationObject
|
|
324
|
+
type: object
|
|
325
|
+
description: Data model for the complex type object that contains ErrorInformation.
|
|
326
|
+
properties:
|
|
327
|
+
errorInformation:
|
|
328
|
+
title: ErrorInformation
|
|
329
|
+
type: object
|
|
330
|
+
description: Data model for the complex type ErrorInformation.
|
|
331
|
+
properties:
|
|
332
|
+
errorCode:
|
|
333
|
+
title: ErrorCode
|
|
334
|
+
type: string
|
|
335
|
+
pattern: '^[1-9]\d{3}$'
|
|
336
|
+
description: 'The API data type ErrorCode is a JSON String of four characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed. Each error code in the API is a four-digit number, for example, 1234, where the first number (1 in the example) represents the high-level error category, the second number (2 in the example) represents the low-level error category, and the last two numbers (34 in the example) represent the specific error.'
|
|
337
|
+
example: '5100'
|
|
338
|
+
errorDescription:
|
|
339
|
+
title: ErrorDescription
|
|
340
|
+
type: string
|
|
341
|
+
minLength: 1
|
|
342
|
+
maxLength: 128
|
|
343
|
+
description: Error description string.
|
|
344
|
+
extensionList:
|
|
345
|
+
$ref: '#/paths/~1thirdpartyRequests~1authorizations/post/requestBody/content/application~1json/schema/properties/extensionList'
|
|
346
|
+
required:
|
|
347
|
+
- errorCode
|
|
348
|
+
- errorDescription
|
|
349
|
+
required:
|
|
350
|
+
- errorInformation
|
|
351
|
+
responses:
|
|
352
|
+
'200':
|
|
353
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
354
|
+
'400':
|
|
355
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
356
|
+
'401':
|
|
357
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
358
|
+
'403':
|
|
359
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
360
|
+
'404':
|
|
361
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
362
|
+
'405':
|
|
363
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
364
|
+
'406':
|
|
365
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
366
|
+
'501':
|
|
367
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
368
|
+
'503':
|
|
369
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
370
|
+
/consentRequests:
|
|
371
|
+
parameters:
|
|
372
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
373
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
374
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
375
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
376
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
377
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
378
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
379
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
380
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
381
|
+
post:
|
|
382
|
+
tags:
|
|
383
|
+
- consentRequests
|
|
384
|
+
- sampled
|
|
385
|
+
operationId: CreateConsentRequest
|
|
386
|
+
summary: CreateConsentRequest
|
|
387
|
+
description: |
|
|
388
|
+
The HTTP request **POST /consentRequests** is used to request a DFSP to grant access to one or more
|
|
389
|
+
accounts owned by a customer of the DFSP for the PISP who sends the request.
|
|
390
|
+
parameters:
|
|
391
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
392
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
393
|
+
requestBody:
|
|
394
|
+
description: The consentRequest to create
|
|
395
|
+
required: true
|
|
396
|
+
content:
|
|
397
|
+
application/json:
|
|
398
|
+
schema:
|
|
399
|
+
title: ConsentRequestsPostRequest
|
|
400
|
+
type: object
|
|
401
|
+
description: The object sent in a `POST /consentRequests` request.
|
|
402
|
+
properties:
|
|
403
|
+
consentRequestId:
|
|
404
|
+
title: CorrelationId
|
|
405
|
+
type: string
|
|
406
|
+
pattern: '^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$'
|
|
407
|
+
description: 'Identifier that correlates all messages of the same sequence. The API data type UUID (Universally Unique Identifier) is a JSON String in canonical format, conforming to [RFC 4122](https://tools.ietf.org/html/rfc4122), that is restricted by a regular expression for interoperability reasons. A UUID is always 36 characters long, 32 hexadecimal symbols and 4 dashes (‘-‘).'
|
|
408
|
+
example: b51ec534-ee48-4575-b6a9-ead2955b8069
|
|
409
|
+
userId:
|
|
410
|
+
type: string
|
|
411
|
+
description: 'The identifier used in the **GET /accounts/**_{ID}_. Used by the DFSP to correlate an account lookup to a `consentRequest`'
|
|
412
|
+
minLength: 1
|
|
413
|
+
maxLength: 128
|
|
414
|
+
scopes:
|
|
415
|
+
type: array
|
|
416
|
+
minLength: 1
|
|
417
|
+
maxLength: 256
|
|
418
|
+
items:
|
|
419
|
+
title: Scope
|
|
420
|
+
type: object
|
|
421
|
+
description: Scope + Account Identifier mapping for a Consent.
|
|
422
|
+
properties:
|
|
423
|
+
address:
|
|
424
|
+
title: AccountAddress
|
|
425
|
+
type: string
|
|
426
|
+
description: |
|
|
427
|
+
An address which can be used to identify the account.
|
|
428
|
+
pattern: '^([0-9A-Za-z_~\-\.]+[0-9A-Za-z_~\-])$'
|
|
429
|
+
minLength: 1
|
|
430
|
+
maxLength: 1023
|
|
431
|
+
actions:
|
|
432
|
+
type: array
|
|
433
|
+
minItems: 1
|
|
434
|
+
maxItems: 32
|
|
435
|
+
items:
|
|
436
|
+
title: ScopeAction
|
|
437
|
+
type: string
|
|
438
|
+
enum:
|
|
439
|
+
- ACCOUNTS_GET_BALANCE
|
|
440
|
+
- ACCOUNTS_TRANSFER
|
|
441
|
+
- ACCOUNTS_STATEMENT
|
|
442
|
+
description: |
|
|
443
|
+
The permissions allowed on a given account by a DFSP as defined in
|
|
444
|
+
a consent object
|
|
445
|
+
- ACCOUNTS_GET_BALANCE: PISP can request a balance for the linked account
|
|
446
|
+
- ACCOUNTS_TRANSFER: PISP can request a transfer of funds from the linked account in the DFSP
|
|
447
|
+
- ACCOUNTS_STATEMENT: PISP can request a statement of individual transactions on a user’s account
|
|
448
|
+
required:
|
|
449
|
+
- address
|
|
450
|
+
- actions
|
|
451
|
+
authChannels:
|
|
452
|
+
type: array
|
|
453
|
+
minLength: 1
|
|
454
|
+
maxLength: 256
|
|
455
|
+
items:
|
|
456
|
+
title: ConsentRequestChannelType
|
|
457
|
+
type: string
|
|
458
|
+
enum:
|
|
459
|
+
- WEB
|
|
460
|
+
- OTP
|
|
461
|
+
description: |
|
|
462
|
+
The auth channel being used for the consentRequest.
|
|
463
|
+
- "WEB" - The Web auth channel.
|
|
464
|
+
- "OTP" - The OTP auth channel.
|
|
465
|
+
callbackUri:
|
|
466
|
+
title: Uri
|
|
467
|
+
type: string
|
|
468
|
+
pattern: '^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?'
|
|
469
|
+
minLength: 1
|
|
470
|
+
maxLength: 512
|
|
471
|
+
description: |
|
|
472
|
+
The API data type Uri is a JSON string in a canonical format that is restricted by a \ regular expression for interoperability reasons.
|
|
473
|
+
required:
|
|
474
|
+
- consentRequestId
|
|
475
|
+
- userId
|
|
476
|
+
- scopes
|
|
477
|
+
- authChannels
|
|
478
|
+
- callbackUri
|
|
479
|
+
example:
|
|
480
|
+
id: '456'
|
|
481
|
+
initiatorId: pispA
|
|
482
|
+
authChannels:
|
|
483
|
+
- WEB
|
|
484
|
+
- OTP
|
|
485
|
+
scopes:
|
|
486
|
+
- accountId: dfspa.username.1234
|
|
487
|
+
actions:
|
|
488
|
+
- accounts.transfer
|
|
489
|
+
- accounts.getBalance
|
|
490
|
+
- accountId: dfspa.username.5678
|
|
491
|
+
actions:
|
|
492
|
+
- accounts.transfer
|
|
493
|
+
- accounts.getBalance
|
|
494
|
+
callbackUri: 'pisp-app://callback.com'
|
|
495
|
+
responses:
|
|
496
|
+
'202':
|
|
497
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
498
|
+
'400':
|
|
499
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
500
|
+
'401':
|
|
501
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
502
|
+
'403':
|
|
503
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
504
|
+
'404':
|
|
505
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
506
|
+
'405':
|
|
507
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
508
|
+
'406':
|
|
509
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
510
|
+
'501':
|
|
511
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
512
|
+
'503':
|
|
513
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
514
|
+
'/consentRequests/{ID}':
|
|
515
|
+
parameters:
|
|
516
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
517
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
518
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
519
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
520
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
521
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
522
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
523
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
524
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
525
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
526
|
+
get:
|
|
527
|
+
operationId: GetConsentRequestsById
|
|
528
|
+
summary: GetConsentRequestsById
|
|
529
|
+
description: |
|
|
530
|
+
The HTTP request `GET /consentRequests/{ID}` is used to get information about a previously
|
|
531
|
+
requested consent. The *{ID}* in the URI should contain the consentRequestId that was assigned to the
|
|
532
|
+
request by the PISP when the PISP originated the request.
|
|
533
|
+
tags:
|
|
534
|
+
- consentRequests
|
|
535
|
+
- sampled
|
|
536
|
+
parameters:
|
|
537
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
538
|
+
responses:
|
|
539
|
+
'202':
|
|
540
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
541
|
+
'400':
|
|
542
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
543
|
+
'401':
|
|
544
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
545
|
+
'403':
|
|
546
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
547
|
+
'404':
|
|
548
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
549
|
+
'405':
|
|
550
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
551
|
+
'406':
|
|
552
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
553
|
+
'501':
|
|
554
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
555
|
+
'503':
|
|
556
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
557
|
+
put:
|
|
558
|
+
tags:
|
|
559
|
+
- consentRequests
|
|
560
|
+
- sampled
|
|
561
|
+
operationId: UpdateConsentRequest
|
|
562
|
+
summary: UpdateConsentRequest
|
|
563
|
+
description: |
|
|
564
|
+
A DFSP uses this callback to (1) inform the PISP that the consentRequest has been accepted,
|
|
565
|
+
and (2) communicate to the PISP which `authChannel` it should use to authenticate their user
|
|
566
|
+
with.
|
|
567
|
+
|
|
568
|
+
When a PISP requests a series of permissions from a DFSP on behalf of a DFSP’s customer, not all
|
|
569
|
+
the permissions requested may be granted by the DFSP. Conversely, the out-of-band authorization
|
|
570
|
+
process may result in additional privileges being granted by the account holder to the PISP. The
|
|
571
|
+
**PUT /consentRequests/**_{ID}_ resource returns the current state of the permissions relating to a
|
|
572
|
+
particular authorization request.
|
|
573
|
+
parameters:
|
|
574
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
575
|
+
requestBody:
|
|
576
|
+
required: true
|
|
577
|
+
content:
|
|
578
|
+
application/json:
|
|
579
|
+
schema:
|
|
580
|
+
oneOf:
|
|
581
|
+
- title: ConsentRequestsIDPutResponseWeb
|
|
582
|
+
type: object
|
|
583
|
+
description: |
|
|
584
|
+
The object sent in a `PUT /consentRequests/{ID}` request.
|
|
585
|
+
|
|
586
|
+
Schema used in the request consent phase of the account linking web flow,
|
|
587
|
+
the result is the PISP being instructed on a specific URL where this
|
|
588
|
+
supposed user should be redirected. This URL should be a place where
|
|
589
|
+
the user can prove their identity (e.g., by logging in).
|
|
590
|
+
properties:
|
|
591
|
+
scopes:
|
|
592
|
+
type: array
|
|
593
|
+
minLength: 1
|
|
594
|
+
maxLength: 256
|
|
595
|
+
items:
|
|
596
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/scopes/items'
|
|
597
|
+
authChannels:
|
|
598
|
+
type: array
|
|
599
|
+
minLength: 1
|
|
600
|
+
maxLength: 1
|
|
601
|
+
items:
|
|
602
|
+
title: ConsentRequestChannelTypeWeb
|
|
603
|
+
type: string
|
|
604
|
+
enum:
|
|
605
|
+
- WEB
|
|
606
|
+
description: |
|
|
607
|
+
The web auth channel being used for PUT consentRequest/{ID} request.
|
|
608
|
+
callbackUri:
|
|
609
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/callbackUri'
|
|
610
|
+
authUri:
|
|
611
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/callbackUri'
|
|
612
|
+
required:
|
|
613
|
+
- scopes
|
|
614
|
+
- authChannels
|
|
615
|
+
- callbackUri
|
|
616
|
+
- authUri
|
|
617
|
+
additionalProperties: false
|
|
618
|
+
- title: ConsentRequestsIDPutResponseOTP
|
|
619
|
+
type: object
|
|
620
|
+
description: |
|
|
621
|
+
The object sent in a `PUT /consentRequests/{ID}` request.
|
|
622
|
+
|
|
623
|
+
Schema used in the request consent phase of the account linking OTP/SMS flow.
|
|
624
|
+
properties:
|
|
625
|
+
scopes:
|
|
626
|
+
type: array
|
|
627
|
+
minLength: 1
|
|
628
|
+
maxLength: 256
|
|
629
|
+
items:
|
|
630
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/scopes/items'
|
|
631
|
+
authChannels:
|
|
632
|
+
type: array
|
|
633
|
+
minLength: 1
|
|
634
|
+
maxLength: 1
|
|
635
|
+
items:
|
|
636
|
+
title: ConsentRequestChannelTypeOTP
|
|
637
|
+
type: string
|
|
638
|
+
enum:
|
|
639
|
+
- OTP
|
|
640
|
+
description: |
|
|
641
|
+
The OTP auth channel being used for PUT consentRequest/{ID} request.
|
|
642
|
+
callbackUri:
|
|
643
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/callbackUri'
|
|
644
|
+
required:
|
|
645
|
+
- scopes
|
|
646
|
+
- authChannels
|
|
647
|
+
additionalProperties: false
|
|
648
|
+
responses:
|
|
649
|
+
'202':
|
|
650
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
651
|
+
'400':
|
|
652
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
653
|
+
'401':
|
|
654
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
655
|
+
'403':
|
|
656
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
657
|
+
'404':
|
|
658
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
659
|
+
'405':
|
|
660
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
661
|
+
'406':
|
|
662
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
663
|
+
'501':
|
|
664
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
665
|
+
'503':
|
|
666
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
667
|
+
patch:
|
|
668
|
+
tags:
|
|
669
|
+
- consentRequests
|
|
670
|
+
- sampled
|
|
671
|
+
operationId: PatchConsentRequest
|
|
672
|
+
summary: PatchConsentRequest
|
|
673
|
+
description: |
|
|
674
|
+
After the user completes an out-of-band authorization with the DFSP, the PISP will receive a token which they can use to prove to the DFSP that the user trusts this PISP.
|
|
675
|
+
parameters:
|
|
676
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
677
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
678
|
+
requestBody:
|
|
679
|
+
required: true
|
|
680
|
+
content:
|
|
681
|
+
application/json:
|
|
682
|
+
schema:
|
|
683
|
+
title: ConsentRequestsIDPatchRequest
|
|
684
|
+
type: object
|
|
685
|
+
description: 'The object sent in a `PATCH /consentRequests/{ID}` request.'
|
|
686
|
+
properties:
|
|
687
|
+
authToken:
|
|
688
|
+
type: string
|
|
689
|
+
pattern: '^[A-Za-z0-9-_]+[=]{0,2}$'
|
|
690
|
+
description: 'The API data type BinaryString is a JSON String. The string is a base64url encoding of a string of raw bytes, where padding (character ‘=’) is added at the end of the data if needed to ensure that the string is a multiple of 4 characters. The length restriction indicates the allowed number of characters.'
|
|
691
|
+
required:
|
|
692
|
+
- authToken
|
|
693
|
+
responses:
|
|
694
|
+
'202':
|
|
695
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
696
|
+
'400':
|
|
697
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
698
|
+
'401':
|
|
699
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
700
|
+
'403':
|
|
701
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
702
|
+
'404':
|
|
703
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
704
|
+
'405':
|
|
705
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
706
|
+
'406':
|
|
707
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
708
|
+
'501':
|
|
709
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
710
|
+
'503':
|
|
711
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
712
|
+
'/consentRequests/{ID}/error':
|
|
713
|
+
parameters:
|
|
714
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
715
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
716
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
717
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
718
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
719
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
720
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
721
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
722
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
723
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
724
|
+
put:
|
|
725
|
+
tags:
|
|
726
|
+
- consentRequests
|
|
727
|
+
operationId: NotifyErrorConsentRequests
|
|
728
|
+
summary: NotifyErrorConsentRequests
|
|
729
|
+
description: |
|
|
730
|
+
DFSP responds to the PISP if something went wrong with validating an OTP or secret.
|
|
731
|
+
parameters:
|
|
732
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
733
|
+
requestBody:
|
|
734
|
+
description: Error information returned.
|
|
735
|
+
required: true
|
|
736
|
+
content:
|
|
737
|
+
application/json:
|
|
738
|
+
schema:
|
|
739
|
+
$ref: '#/paths/~1accounts~1%7BID%7D~1error/put/requestBody/content/application~1json/schema'
|
|
740
|
+
responses:
|
|
741
|
+
'200':
|
|
742
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
743
|
+
'400':
|
|
744
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
745
|
+
'401':
|
|
746
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
747
|
+
'403':
|
|
748
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
749
|
+
'404':
|
|
750
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
751
|
+
'405':
|
|
752
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
753
|
+
'406':
|
|
754
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
755
|
+
'501':
|
|
756
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
757
|
+
'503':
|
|
758
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
759
|
+
/consents:
|
|
760
|
+
parameters:
|
|
761
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
762
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
763
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
764
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
765
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
766
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
767
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
768
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
769
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
770
|
+
post:
|
|
771
|
+
tags:
|
|
772
|
+
- consents
|
|
773
|
+
- sampled
|
|
774
|
+
operationId: PostConsents
|
|
775
|
+
summary: PostConsents
|
|
776
|
+
description: |
|
|
777
|
+
The **POST /consents** request is used to request the creation of a consent for interactions between a PISP and the DFSP who owns the account which a PISP’s customer wants to allow the PISP access to.
|
|
778
|
+
parameters:
|
|
779
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
780
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
781
|
+
requestBody:
|
|
782
|
+
required: true
|
|
783
|
+
content:
|
|
784
|
+
application/json:
|
|
785
|
+
schema:
|
|
786
|
+
oneOf:
|
|
787
|
+
- title: ConsentPostRequestAUTH
|
|
788
|
+
type: object
|
|
789
|
+
description: |
|
|
790
|
+
The object sent in a `POST /consents` request to AUTH-SERVICE by DFSP to store registered consent with PublicKey
|
|
791
|
+
and whatever needed to perform authorization validation later
|
|
792
|
+
properties:
|
|
793
|
+
consentId:
|
|
794
|
+
allOf:
|
|
795
|
+
- $ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/consentRequestId'
|
|
796
|
+
description: |
|
|
797
|
+
Common ID between the PISP and FSP for the Consent object
|
|
798
|
+
decided by the DFSP who creates the Consent
|
|
799
|
+
This field is REQUIRED for POST /consent.
|
|
800
|
+
creation of this Consent.
|
|
801
|
+
scopes:
|
|
802
|
+
minLength: 1
|
|
803
|
+
maxLength: 256
|
|
804
|
+
type: array
|
|
805
|
+
items:
|
|
806
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/scopes/items'
|
|
807
|
+
credential:
|
|
808
|
+
allOf:
|
|
809
|
+
- $ref: '#/paths/~1consents~1%7BID%7D/put/requestBody/content/application~1json/schema/oneOf/0/properties/credential'
|
|
810
|
+
status:
|
|
811
|
+
title: ConsentStatus
|
|
812
|
+
type: string
|
|
813
|
+
enum:
|
|
814
|
+
- ISSUED
|
|
815
|
+
- REVOKED
|
|
816
|
+
description: |-
|
|
817
|
+
Allowed values for the enumeration ConsentStatus
|
|
818
|
+
- ISSUED - The consent has been issued by the DFSP
|
|
819
|
+
- REVOKED - The consent has been revoked
|
|
820
|
+
required:
|
|
821
|
+
- consentId
|
|
822
|
+
- scopes
|
|
823
|
+
- credential
|
|
824
|
+
- status
|
|
825
|
+
additionalProperties: false
|
|
826
|
+
- title: ConsentPostRequestPISP
|
|
827
|
+
type: object
|
|
828
|
+
description: The object sent in a `POST /consents` request to PISP by DFSP to ask for delivering the credential object.
|
|
829
|
+
properties:
|
|
830
|
+
consentId:
|
|
831
|
+
allOf:
|
|
832
|
+
- $ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/consentRequestId'
|
|
833
|
+
description: |
|
|
834
|
+
Common ID between the PISP and the Payer DFSP for the consent object. The ID
|
|
835
|
+
should be reused for resends of the same consent. A new ID should be generated
|
|
836
|
+
for each new consent.
|
|
837
|
+
consentRequestId:
|
|
838
|
+
allOf:
|
|
839
|
+
- $ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/consentRequestId'
|
|
840
|
+
description: |
|
|
841
|
+
The ID given to the original consent request on which this consent is based.
|
|
842
|
+
scopes:
|
|
843
|
+
type: array
|
|
844
|
+
minLength: 1
|
|
845
|
+
maxLength: 256
|
|
846
|
+
items:
|
|
847
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/scopes/items'
|
|
848
|
+
status:
|
|
849
|
+
$ref: '#/paths/~1consents/post/requestBody/content/application~1json/schema/oneOf/0/properties/status'
|
|
850
|
+
required:
|
|
851
|
+
- consentId
|
|
852
|
+
- consentRequestId
|
|
853
|
+
- scopes
|
|
854
|
+
- status
|
|
855
|
+
responses:
|
|
856
|
+
'202':
|
|
857
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
858
|
+
'400':
|
|
859
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
860
|
+
'401':
|
|
861
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
862
|
+
'403':
|
|
863
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
864
|
+
'404':
|
|
865
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
866
|
+
'405':
|
|
867
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
868
|
+
'406':
|
|
869
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
870
|
+
'501':
|
|
871
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
872
|
+
'503':
|
|
873
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
874
|
+
'/consents/{ID}':
|
|
875
|
+
parameters:
|
|
876
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
877
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
878
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
879
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
880
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
881
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
882
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
883
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
884
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
885
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
886
|
+
get:
|
|
887
|
+
description: |
|
|
888
|
+
The **GET /consents/**_{ID}_ resource allows a party to enquire after the status of a consent. The *{ID}* used in the URI of the request should be the consent request ID which was used to identify the consent when it was created.
|
|
889
|
+
tags:
|
|
890
|
+
- consents
|
|
891
|
+
operationId: GetConsent
|
|
892
|
+
summary: GetConsent
|
|
893
|
+
parameters:
|
|
894
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
895
|
+
responses:
|
|
896
|
+
'202':
|
|
897
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
898
|
+
'400':
|
|
899
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
900
|
+
'401':
|
|
901
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
902
|
+
'403':
|
|
903
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
904
|
+
'404':
|
|
905
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
906
|
+
'405':
|
|
907
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
908
|
+
'406':
|
|
909
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
910
|
+
'501':
|
|
911
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
912
|
+
'503':
|
|
913
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
914
|
+
patch:
|
|
915
|
+
description: |
|
|
916
|
+
The HTTP request `PATCH /consents/{ID}` is used
|
|
917
|
+
|
|
918
|
+
- In account linking in the Credential Registration phase. Used by a DFSP
|
|
919
|
+
to notify a PISP a credential has been verified and registered with an
|
|
920
|
+
Auth service.
|
|
921
|
+
|
|
922
|
+
- In account unlinking by a hub hosted auth service and by DFSPs
|
|
923
|
+
in non-hub hosted scenarios to notify participants of a consent being revoked.
|
|
924
|
+
|
|
925
|
+
Called by a `auth-service` to notify a PISP and DFSP of consent status in hub hosted scenario.
|
|
926
|
+
Called by a `DFSP` to notify a PISP of consent status in non-hub hosted scenario.
|
|
927
|
+
tags:
|
|
928
|
+
- consents
|
|
929
|
+
- sampled
|
|
930
|
+
operationId: PatchConsentByID
|
|
931
|
+
summary: PatchConsentByID
|
|
932
|
+
requestBody:
|
|
933
|
+
required: true
|
|
934
|
+
content:
|
|
935
|
+
application/json:
|
|
936
|
+
schema:
|
|
937
|
+
oneOf:
|
|
938
|
+
- title: ConsentsIDPatchResponseVerified
|
|
939
|
+
description: |
|
|
940
|
+
PATCH /consents/{ID} request object.
|
|
941
|
+
|
|
942
|
+
Sent by the DFSP to the PISP when a consent is verified.
|
|
943
|
+
Used in the "Register Credential" part of the Account linking flow.
|
|
944
|
+
type: object
|
|
945
|
+
properties:
|
|
946
|
+
credential:
|
|
947
|
+
type: object
|
|
948
|
+
properties:
|
|
949
|
+
status:
|
|
950
|
+
title: CredentialStatus
|
|
951
|
+
type: string
|
|
952
|
+
enum:
|
|
953
|
+
- VERIFIED
|
|
954
|
+
description: |
|
|
955
|
+
The status of the Credential.
|
|
956
|
+
- "VERIFIED" - The Credential is valid and verified.
|
|
957
|
+
required:
|
|
958
|
+
- status
|
|
959
|
+
required:
|
|
960
|
+
- credential
|
|
961
|
+
- title: ConsentsIDPatchResponseRevoked
|
|
962
|
+
description: |
|
|
963
|
+
PATCH /consents/{ID} request object.
|
|
964
|
+
|
|
965
|
+
Sent to both the PISP and DFSP when a consent is revoked.
|
|
966
|
+
Used in the "Unlinking" part of the Account Unlinking flow.
|
|
967
|
+
type: object
|
|
968
|
+
properties:
|
|
969
|
+
status:
|
|
970
|
+
title: ConsentStatus
|
|
971
|
+
type: string
|
|
972
|
+
enum:
|
|
973
|
+
- REVOKED
|
|
974
|
+
description: |-
|
|
975
|
+
Allowed values for the enumeration ConsentStatus
|
|
976
|
+
- REVOKED - The consent has been revoked
|
|
977
|
+
revokedAt:
|
|
978
|
+
$ref: '#/paths/~1thirdpartyRequests~1transactions~1%7BID%7D/patch/requestBody/content/application~1json/schema/properties/completedTimestamp'
|
|
979
|
+
required:
|
|
980
|
+
- status
|
|
981
|
+
- revokedAt
|
|
982
|
+
parameters:
|
|
983
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
984
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
985
|
+
responses:
|
|
986
|
+
'200':
|
|
987
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
988
|
+
'400':
|
|
989
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
990
|
+
'401':
|
|
991
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
992
|
+
'403':
|
|
993
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
994
|
+
'404':
|
|
995
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
996
|
+
'405':
|
|
997
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
998
|
+
'406':
|
|
999
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
1000
|
+
'501':
|
|
1001
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
1002
|
+
'503':
|
|
1003
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
1004
|
+
put:
|
|
1005
|
+
description: |
|
|
1006
|
+
The HTTP request `PUT /consents/{ID}` is used by the PISP and Auth Service.
|
|
1007
|
+
|
|
1008
|
+
- Called by a `PISP` to after signing a challenge. Sent to an DFSP for verification.
|
|
1009
|
+
- Called by a `auth-service` to notify a DFSP that a credential has been verified and registered.
|
|
1010
|
+
tags:
|
|
1011
|
+
- consents
|
|
1012
|
+
- sampled
|
|
1013
|
+
operationId: PutConsentByID
|
|
1014
|
+
summary: PutConsentByID
|
|
1015
|
+
requestBody:
|
|
1016
|
+
required: true
|
|
1017
|
+
content:
|
|
1018
|
+
application/json:
|
|
1019
|
+
schema:
|
|
1020
|
+
oneOf:
|
|
1021
|
+
- title: ConsentsIDPutResponseSigned
|
|
1022
|
+
type: object
|
|
1023
|
+
description: |
|
|
1024
|
+
The HTTP request `PUT /consents/{ID}` is used by the PISP to update a Consent with a signed challenge and register a credential.
|
|
1025
|
+
Called by a `PISP` to after signing a challenge. Sent to a DFSP for verification.
|
|
1026
|
+
properties:
|
|
1027
|
+
scopes:
|
|
1028
|
+
type: array
|
|
1029
|
+
items:
|
|
1030
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/scopes/items'
|
|
1031
|
+
status:
|
|
1032
|
+
title: ConsentStatus
|
|
1033
|
+
type: string
|
|
1034
|
+
enum:
|
|
1035
|
+
- ISSUED
|
|
1036
|
+
description: |-
|
|
1037
|
+
Allowed values for the enumeration ConsentStatus
|
|
1038
|
+
- ISSUED - The consent has been issued by the DFSP
|
|
1039
|
+
credential:
|
|
1040
|
+
title: SignedCredential
|
|
1041
|
+
type: object
|
|
1042
|
+
description: |
|
|
1043
|
+
A credential used to allow a user to prove their identity and access
|
|
1044
|
+
to an account with a DFSP.
|
|
1045
|
+
|
|
1046
|
+
SignedCredential is a special formatting of the credential to allow us to be
|
|
1047
|
+
more explicit about the `status` field - it should only ever be PENDING when
|
|
1048
|
+
updating a credential.
|
|
1049
|
+
properties:
|
|
1050
|
+
credentialType:
|
|
1051
|
+
title: CredentialType
|
|
1052
|
+
type: string
|
|
1053
|
+
enum:
|
|
1054
|
+
- FIDO
|
|
1055
|
+
- GENERIC
|
|
1056
|
+
description: |
|
|
1057
|
+
The type of the Credential.
|
|
1058
|
+
- "FIDO" - A FIDO public/private keypair
|
|
1059
|
+
- "GENERIC" - A Generic public/private keypair
|
|
1060
|
+
status:
|
|
1061
|
+
title: CredentialStatus
|
|
1062
|
+
type: string
|
|
1063
|
+
enum:
|
|
1064
|
+
- PENDING
|
|
1065
|
+
description: |
|
|
1066
|
+
The status of the Credential.
|
|
1067
|
+
- "PENDING" - The credential has been created, but has not been verified
|
|
1068
|
+
genericPayload:
|
|
1069
|
+
title: GenericCredential
|
|
1070
|
+
type: object
|
|
1071
|
+
description: |
|
|
1072
|
+
A publicKey + signature of a challenge for a generic public/private keypair
|
|
1073
|
+
properties:
|
|
1074
|
+
publicKey:
|
|
1075
|
+
$ref: '#/paths/~1consentRequests~1%7BID%7D/patch/requestBody/content/application~1json/schema/properties/authToken'
|
|
1076
|
+
signature:
|
|
1077
|
+
$ref: '#/paths/~1consentRequests~1%7BID%7D/patch/requestBody/content/application~1json/schema/properties/authToken'
|
|
1078
|
+
required:
|
|
1079
|
+
- publicKey
|
|
1080
|
+
- signature
|
|
1081
|
+
additionalProperties: false
|
|
1082
|
+
fidoPayload:
|
|
1083
|
+
$ref: '#/paths/~1consents~1%7BID%7D/put/requestBody/content/application~1json/schema/oneOf/1/properties/credential/properties/payload'
|
|
1084
|
+
required:
|
|
1085
|
+
- credentialType
|
|
1086
|
+
- status
|
|
1087
|
+
additionalProperties: false
|
|
1088
|
+
required:
|
|
1089
|
+
- scopes
|
|
1090
|
+
- credential
|
|
1091
|
+
additionalProperties: false
|
|
1092
|
+
- title: ConsentsIDPutResponseVerified
|
|
1093
|
+
type: object
|
|
1094
|
+
description: |
|
|
1095
|
+
The HTTP request `PUT /consents/{ID}` is used by the DFSP or Auth-Service to update a Consent object once it has been Verified.
|
|
1096
|
+
Called by a `auth-service` to notify a DFSP that a credential has been verified and registered.
|
|
1097
|
+
properties:
|
|
1098
|
+
scopes:
|
|
1099
|
+
type: array
|
|
1100
|
+
items:
|
|
1101
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/scopes/items'
|
|
1102
|
+
status:
|
|
1103
|
+
$ref: '#/paths/~1consents~1%7BID%7D/put/requestBody/content/application~1json/schema/oneOf/0/properties/status'
|
|
1104
|
+
credential:
|
|
1105
|
+
title: VerifiedCredential
|
|
1106
|
+
type: object
|
|
1107
|
+
description: |
|
|
1108
|
+
A credential used to allow a user to prove their identity and access
|
|
1109
|
+
to an account with a DFSP.
|
|
1110
|
+
|
|
1111
|
+
VerifiedCredential is a special formatting of the credential to allow us to be
|
|
1112
|
+
more explicit about the `status` field - it should only ever be VERIFIED when
|
|
1113
|
+
updating a credential.
|
|
1114
|
+
properties:
|
|
1115
|
+
credentialType:
|
|
1116
|
+
$ref: '#/paths/~1consents~1%7BID%7D/put/requestBody/content/application~1json/schema/oneOf/0/properties/credential/properties/credentialType'
|
|
1117
|
+
status:
|
|
1118
|
+
type: string
|
|
1119
|
+
enum:
|
|
1120
|
+
- VERIFIED
|
|
1121
|
+
description: 'The Credential is valid, and ready to be used by the PISP.'
|
|
1122
|
+
payload:
|
|
1123
|
+
title: FIDOPublicKeyCredentialAttestation
|
|
1124
|
+
type: object
|
|
1125
|
+
description: |
|
|
1126
|
+
A data model representing a FIDO Attestation result. Derived from
|
|
1127
|
+
[`PublicKeyCredential` Interface](https://w3c.github.io/webauthn/#iface-pkcredential).
|
|
1128
|
+
|
|
1129
|
+
The `PublicKeyCredential` interface represents the below fields with
|
|
1130
|
+
a Type of Javascript [ArrayBuffer](https://heycam.github.io/webidl/#idl-ArrayBuffer).
|
|
1131
|
+
For this API, we represent ArrayBuffers as base64 encoded utf-8 strings.
|
|
1132
|
+
properties:
|
|
1133
|
+
id:
|
|
1134
|
+
type: string
|
|
1135
|
+
description: |
|
|
1136
|
+
credential id: identifier of pair of keys, base64 encoded
|
|
1137
|
+
https://w3c.github.io/webauthn/#ref-for-dom-credential-id
|
|
1138
|
+
minLength: 59
|
|
1139
|
+
maxLength: 118
|
|
1140
|
+
rawId:
|
|
1141
|
+
type: string
|
|
1142
|
+
description: |
|
|
1143
|
+
raw credential id: identifier of pair of keys, base64 encoded
|
|
1144
|
+
minLength: 59
|
|
1145
|
+
maxLength: 118
|
|
1146
|
+
response:
|
|
1147
|
+
type: object
|
|
1148
|
+
description: |
|
|
1149
|
+
AuthenticatorAttestationResponse
|
|
1150
|
+
properties:
|
|
1151
|
+
clientDataJSON:
|
|
1152
|
+
type: string
|
|
1153
|
+
description: |
|
|
1154
|
+
JSON string with client data
|
|
1155
|
+
minLength: 121
|
|
1156
|
+
maxLength: 512
|
|
1157
|
+
attestationObject:
|
|
1158
|
+
type: string
|
|
1159
|
+
description: |
|
|
1160
|
+
CBOR.encoded attestation object
|
|
1161
|
+
minLength: 306
|
|
1162
|
+
maxLength: 2048
|
|
1163
|
+
required:
|
|
1164
|
+
- clientDataJSON
|
|
1165
|
+
- attestationObject
|
|
1166
|
+
additionalProperties: false
|
|
1167
|
+
type:
|
|
1168
|
+
type: string
|
|
1169
|
+
description: 'response type, we need only the type of public-key'
|
|
1170
|
+
enum:
|
|
1171
|
+
- public-key
|
|
1172
|
+
required:
|
|
1173
|
+
- id
|
|
1174
|
+
- response
|
|
1175
|
+
- type
|
|
1176
|
+
additionalProperties: false
|
|
1177
|
+
required:
|
|
1178
|
+
- credentialType
|
|
1179
|
+
- status
|
|
1180
|
+
- payload
|
|
1181
|
+
additionalProperties: false
|
|
1182
|
+
required:
|
|
1183
|
+
- scopes
|
|
1184
|
+
- credential
|
|
1185
|
+
additionalProperties: false
|
|
1186
|
+
parameters:
|
|
1187
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
1188
|
+
responses:
|
|
1189
|
+
'200':
|
|
1190
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
1191
|
+
'202':
|
|
1192
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
1193
|
+
'400':
|
|
1194
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
1195
|
+
'401':
|
|
1196
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
1197
|
+
'403':
|
|
1198
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
1199
|
+
'404':
|
|
1200
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
1201
|
+
'405':
|
|
1202
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
1203
|
+
'406':
|
|
1204
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
1205
|
+
'501':
|
|
1206
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
1207
|
+
'503':
|
|
1208
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
1209
|
+
delete:
|
|
1210
|
+
description: |
|
|
1211
|
+
Used by PISP, DFSP
|
|
1212
|
+
|
|
1213
|
+
The **DELETE /consents/**_{ID}_ request is used to request the revocation of a previously agreed consent.
|
|
1214
|
+
For tracing and auditing purposes, the switch should be sure not to delete the consent physically;
|
|
1215
|
+
instead, information relating to the consent should be marked as deleted and requests relating to the
|
|
1216
|
+
consent should not be honoured.
|
|
1217
|
+
operationId: DeleteConsentByID
|
|
1218
|
+
parameters:
|
|
1219
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
1220
|
+
tags:
|
|
1221
|
+
- consents
|
|
1222
|
+
responses:
|
|
1223
|
+
'202':
|
|
1224
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
1225
|
+
'400':
|
|
1226
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
1227
|
+
'401':
|
|
1228
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
1229
|
+
'403':
|
|
1230
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
1231
|
+
'404':
|
|
1232
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
1233
|
+
'405':
|
|
1234
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
1235
|
+
'406':
|
|
1236
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
1237
|
+
'501':
|
|
1238
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
1239
|
+
'503':
|
|
1240
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
1241
|
+
'/consents/{ID}/error':
|
|
1242
|
+
parameters:
|
|
1243
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
1244
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
1245
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
1246
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
1247
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
1248
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
1249
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
1250
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
1251
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
1252
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
1253
|
+
put:
|
|
1254
|
+
tags:
|
|
1255
|
+
- consents
|
|
1256
|
+
operationId: NotifyErrorConsents
|
|
1257
|
+
summary: NotifyErrorConsents
|
|
1258
|
+
description: |
|
|
1259
|
+
DFSP responds to the PISP if something went wrong with validating or storing consent.
|
|
1260
|
+
parameters:
|
|
1261
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
1262
|
+
requestBody:
|
|
1263
|
+
description: Error information returned.
|
|
1264
|
+
required: true
|
|
1265
|
+
content:
|
|
1266
|
+
application/json:
|
|
1267
|
+
schema:
|
|
1268
|
+
$ref: '#/paths/~1accounts~1%7BID%7D~1error/put/requestBody/content/application~1json/schema'
|
|
1269
|
+
responses:
|
|
1270
|
+
'200':
|
|
1271
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
1272
|
+
'400':
|
|
1273
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
1274
|
+
'401':
|
|
1275
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
1276
|
+
'403':
|
|
1277
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
1278
|
+
'404':
|
|
1279
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
1280
|
+
'405':
|
|
1281
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
1282
|
+
'406':
|
|
1283
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
1284
|
+
'501':
|
|
1285
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
1286
|
+
'503':
|
|
1287
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
1288
|
+
/thirdpartyRequests/authorizations:
|
|
1289
|
+
parameters:
|
|
1290
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
1291
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
1292
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
1293
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
1294
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
1295
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
1296
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
1297
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
1298
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
1299
|
+
post:
|
|
1300
|
+
description: |
|
|
1301
|
+
The HTTP request **POST /thirdpartyRequests/authorizations** is used to request the validation by a customer for the transfer described in the request.
|
|
1302
|
+
operationId: PostThirdpartyRequestsAuthorizations
|
|
1303
|
+
summary: PostThirdpartyRequestsAuthorizations
|
|
1304
|
+
tags:
|
|
1305
|
+
- authorizations
|
|
1306
|
+
parameters:
|
|
1307
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
1308
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
1309
|
+
requestBody:
|
|
1310
|
+
description: Authorization request details
|
|
1311
|
+
required: true
|
|
1312
|
+
content:
|
|
1313
|
+
application/json:
|
|
1314
|
+
schema:
|
|
1315
|
+
title: ThirdpartyRequestsAuthorizationsPostRequest
|
|
1316
|
+
description: POST /thirdpartyRequests/authorizations request object.
|
|
1317
|
+
type: object
|
|
1318
|
+
properties:
|
|
1319
|
+
authorizationRequestId:
|
|
1320
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/consentRequestId'
|
|
1321
|
+
transactionRequestId:
|
|
1322
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/consentRequestId'
|
|
1323
|
+
challenge:
|
|
1324
|
+
type: string
|
|
1325
|
+
description: The challenge that the PISP's client is to sign
|
|
1326
|
+
transferAmount:
|
|
1327
|
+
allOf:
|
|
1328
|
+
- $ref: '#/paths/~1thirdpartyRequests~1transactions/post/requestBody/content/application~1json/schema/properties/amount/allOf/0'
|
|
1329
|
+
description: The amount that will be debited from the sending customer’s account as a consequence of the transaction.
|
|
1330
|
+
payeeReceiveAmount:
|
|
1331
|
+
allOf:
|
|
1332
|
+
- $ref: '#/paths/~1thirdpartyRequests~1transactions/post/requestBody/content/application~1json/schema/properties/amount/allOf/0'
|
|
1333
|
+
description: The amount that will be credited to the receiving customer’s account as a consequence of the transaction.
|
|
1334
|
+
fees:
|
|
1335
|
+
allOf:
|
|
1336
|
+
- $ref: '#/paths/~1thirdpartyRequests~1transactions/post/requestBody/content/application~1json/schema/properties/amount/allOf/0'
|
|
1337
|
+
description: The amount of fees that the paying customer will be charged as part of the transaction.
|
|
1338
|
+
payer:
|
|
1339
|
+
allOf:
|
|
1340
|
+
- $ref: '#/paths/~1thirdpartyRequests~1transactions/post/requestBody/content/application~1json/schema/properties/payer/allOf/0'
|
|
1341
|
+
description: 'Information about the Payer type, id, sub-type/id, FSP Id in the proposed financial transaction.'
|
|
1342
|
+
payee:
|
|
1343
|
+
allOf:
|
|
1344
|
+
- $ref: '#/paths/~1thirdpartyRequests~1transactions/post/requestBody/content/application~1json/schema/properties/payee/allOf/0'
|
|
1345
|
+
description: Information about the Payee in the proposed financial transaction.
|
|
1346
|
+
transactionType:
|
|
1347
|
+
title: TransactionType
|
|
1348
|
+
type: object
|
|
1349
|
+
description: Data model for the complex type TransactionType.
|
|
1350
|
+
properties:
|
|
1351
|
+
scenario:
|
|
1352
|
+
title: TransactionScenario
|
|
1353
|
+
type: string
|
|
1354
|
+
enum:
|
|
1355
|
+
- DEPOSIT
|
|
1356
|
+
- WITHDRAWAL
|
|
1357
|
+
- TRANSFER
|
|
1358
|
+
- PAYMENT
|
|
1359
|
+
- REFUND
|
|
1360
|
+
description: |-
|
|
1361
|
+
Below are the allowed values for the enumeration.
|
|
1362
|
+
- DEPOSIT - Used for performing a Cash-In (deposit) transaction. In a normal scenario, electronic funds are transferred from a Business account to a Consumer account, and physical cash is given from the Consumer to the Business User.
|
|
1363
|
+
- WITHDRAWAL - Used for performing a Cash-Out (withdrawal) transaction. In a normal scenario, electronic funds are transferred from a Consumer’s account to a Business account, and physical cash is given from the Business User to the Consumer.
|
|
1364
|
+
- TRANSFER - Used for performing a P2P (Peer to Peer, or Consumer to Consumer) transaction.
|
|
1365
|
+
- PAYMENT - Usually used for performing a transaction from a Consumer to a Merchant or Organization, but could also be for a B2B (Business to Business) payment. The transaction could be online for a purchase in an Internet store, in a physical store where both the Consumer and Business User are present, a bill payment, a donation, and so on.
|
|
1366
|
+
- REFUND - Used for performing a refund of transaction.
|
|
1367
|
+
example: DEPOSIT
|
|
1368
|
+
subScenario:
|
|
1369
|
+
title: TransactionSubScenario
|
|
1370
|
+
type: string
|
|
1371
|
+
pattern: '^[A-Z_]{1,32}$'
|
|
1372
|
+
description: 'Possible sub-scenario, defined locally within the scheme (UndefinedEnum Type).'
|
|
1373
|
+
example: LOCALLY_DEFINED_SUBSCENARIO
|
|
1374
|
+
initiator:
|
|
1375
|
+
title: TransactionInitiator
|
|
1376
|
+
type: string
|
|
1377
|
+
enum:
|
|
1378
|
+
- PAYER
|
|
1379
|
+
- PAYEE
|
|
1380
|
+
description: |-
|
|
1381
|
+
Below are the allowed values for the enumeration.
|
|
1382
|
+
- PAYER - Sender of funds is initiating the transaction. The account to send from is either owned by the Payer or is connected to the Payer in some way.
|
|
1383
|
+
- PAYEE - Recipient of the funds is initiating the transaction by sending a transaction request. The Payer must approve the transaction, either automatically by a pre-generated OTP or by pre-approval of the Payee, or by manually approving in his or her own Device.
|
|
1384
|
+
example: PAYEE
|
|
1385
|
+
initiatorType:
|
|
1386
|
+
title: TransactionInitiatorType
|
|
1387
|
+
type: string
|
|
1388
|
+
enum:
|
|
1389
|
+
- CONSUMER
|
|
1390
|
+
- AGENT
|
|
1391
|
+
- BUSINESS
|
|
1392
|
+
- DEVICE
|
|
1393
|
+
description: |-
|
|
1394
|
+
Below are the allowed values for the enumeration.
|
|
1395
|
+
- CONSUMER - Consumer is the initiator of the transaction.
|
|
1396
|
+
- AGENT - Agent is the initiator of the transaction.
|
|
1397
|
+
- BUSINESS - Business is the initiator of the transaction.
|
|
1398
|
+
- DEVICE - Device is the initiator of the transaction.
|
|
1399
|
+
example: CONSUMER
|
|
1400
|
+
refundInfo:
|
|
1401
|
+
title: Refund
|
|
1402
|
+
type: object
|
|
1403
|
+
description: Data model for the complex type Refund.
|
|
1404
|
+
properties:
|
|
1405
|
+
originalTransactionId:
|
|
1406
|
+
$ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/consentRequestId'
|
|
1407
|
+
refundReason:
|
|
1408
|
+
title: RefundReason
|
|
1409
|
+
type: string
|
|
1410
|
+
minLength: 1
|
|
1411
|
+
maxLength: 128
|
|
1412
|
+
description: Reason for the refund.
|
|
1413
|
+
example: Free text indicating reason for the refund.
|
|
1414
|
+
required:
|
|
1415
|
+
- originalTransactionId
|
|
1416
|
+
balanceOfPayments:
|
|
1417
|
+
title: BalanceOfPayments
|
|
1418
|
+
type: string
|
|
1419
|
+
pattern: '^[1-9]\d{2}$'
|
|
1420
|
+
description: '(BopCode) The API data type [BopCode](https://www.imf.org/external/np/sta/bopcode/) is a JSON String of 3 characters, consisting of digits only. Negative numbers are not allowed. A leading zero is not allowed.'
|
|
1421
|
+
example: '123'
|
|
1422
|
+
required:
|
|
1423
|
+
- scenario
|
|
1424
|
+
- initiator
|
|
1425
|
+
- initiatorType
|
|
1426
|
+
expiration:
|
|
1427
|
+
allOf:
|
|
1428
|
+
- $ref: '#/paths/~1thirdpartyRequests~1transactions~1%7BID%7D/patch/requestBody/content/application~1json/schema/properties/completedTimestamp'
|
|
1429
|
+
description: 'The time by which the transfer must be completed, set by the payee DFSP.'
|
|
1430
|
+
extensionList:
|
|
1431
|
+
title: ExtensionList
|
|
1432
|
+
type: object
|
|
1433
|
+
description: 'Data model for the complex type ExtensionList. An optional list of extensions, specific to deployment.'
|
|
1434
|
+
properties:
|
|
1435
|
+
extension:
|
|
1436
|
+
type: array
|
|
1437
|
+
items:
|
|
1438
|
+
title: Extension
|
|
1439
|
+
type: object
|
|
1440
|
+
description: Data model for the complex type Extension.
|
|
1441
|
+
properties:
|
|
1442
|
+
key:
|
|
1443
|
+
title: ExtensionKey
|
|
1444
|
+
type: string
|
|
1445
|
+
minLength: 1
|
|
1446
|
+
maxLength: 32
|
|
1447
|
+
description: Extension key.
|
|
1448
|
+
value:
|
|
1449
|
+
title: ExtensionValue
|
|
1450
|
+
type: string
|
|
1451
|
+
minLength: 1
|
|
1452
|
+
maxLength: 128
|
|
1453
|
+
description: Extension value.
|
|
1454
|
+
required:
|
|
1455
|
+
- key
|
|
1456
|
+
- value
|
|
1457
|
+
minItems: 1
|
|
1458
|
+
maxItems: 16
|
|
1459
|
+
description: Number of Extension elements.
|
|
1460
|
+
required:
|
|
1461
|
+
- extension
|
|
1462
|
+
required:
|
|
1463
|
+
- authorizationRequestId
|
|
1464
|
+
- transactionRequestId
|
|
1465
|
+
- challenge
|
|
1466
|
+
- transferAmount
|
|
1467
|
+
- payeeReceiveAmount
|
|
1468
|
+
- fees
|
|
1469
|
+
- payer
|
|
1470
|
+
- payee
|
|
1471
|
+
- transactionType
|
|
1472
|
+
- expiration
|
|
1473
|
+
additionalProperties: false
|
|
1474
|
+
responses:
|
|
1475
|
+
'202':
|
|
1476
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
1477
|
+
'400':
|
|
1478
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
1479
|
+
'401':
|
|
1480
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
1481
|
+
'403':
|
|
1482
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
1483
|
+
'404':
|
|
1484
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
1485
|
+
'405':
|
|
1486
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
1487
|
+
'406':
|
|
1488
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
1489
|
+
'501':
|
|
1490
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
1491
|
+
'503':
|
|
1492
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
1493
|
+
'/thirdpartyRequests/authorizations/{ID}':
|
|
1494
|
+
parameters:
|
|
1495
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
1496
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
1497
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
1498
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
1499
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
1500
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
1501
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
1502
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
1503
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
1504
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
1505
|
+
get:
|
|
1506
|
+
description: |
|
|
1507
|
+
The HTTP request **GET /thirdpartyRequests/authorizations/**_{ID}_ is used to get information relating
|
|
1508
|
+
to a previously issued authorization request. The *{ID}* in the request should match the
|
|
1509
|
+
`authorizationRequestId` which was given when the authorization request was created.
|
|
1510
|
+
operationId: GetThirdpartyRequestsAuthorizationsById
|
|
1511
|
+
summary: GetThirdpartyRequestsAuthorizationsById
|
|
1512
|
+
tags:
|
|
1513
|
+
- authorizations
|
|
1514
|
+
parameters:
|
|
1515
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
1516
|
+
responses:
|
|
1517
|
+
'202':
|
|
1518
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
1519
|
+
'400':
|
|
1520
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
1521
|
+
'401':
|
|
1522
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
1523
|
+
'403':
|
|
1524
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
1525
|
+
'404':
|
|
1526
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
1527
|
+
'405':
|
|
1528
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
1529
|
+
'406':
|
|
1530
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
1531
|
+
'501':
|
|
1532
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
1533
|
+
'503':
|
|
1534
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
1535
|
+
put:
|
|
1536
|
+
description: |
|
|
1537
|
+
After receiving the **POST /thirdpartyRequests/authorizations**, the PISP will present the details of the
|
|
1538
|
+
transaction to their user, and request that the client sign the `challenge` field using the credential
|
|
1539
|
+
they previously registered.
|
|
1540
|
+
|
|
1541
|
+
The signed challenge will be sent back by the PISP in **PUT /thirdpartyRequests/authorizations/**_{ID}_:
|
|
1542
|
+
operationId: PutThirdpartyRequestsAuthorizationsById
|
|
1543
|
+
summary: PutThirdpartyRequestsAuthorizationsById
|
|
1544
|
+
tags:
|
|
1545
|
+
- authorizations
|
|
1546
|
+
parameters:
|
|
1547
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
1548
|
+
requestBody:
|
|
1549
|
+
description: Signed authorization object
|
|
1550
|
+
required: true
|
|
1551
|
+
content:
|
|
1552
|
+
application/json:
|
|
1553
|
+
schema:
|
|
1554
|
+
oneOf:
|
|
1555
|
+
- title: ThirdpartyRequestsAuthorizationsIDPutResponseGeneric
|
|
1556
|
+
type: object
|
|
1557
|
+
description: 'The object sent in the PUT /thirdpartyRequests/authorizations/{ID} callback.'
|
|
1558
|
+
properties:
|
|
1559
|
+
responseType:
|
|
1560
|
+
title: AuthorizationResponseType
|
|
1561
|
+
description: |
|
|
1562
|
+
The customer rejected the terms of the transfer.
|
|
1563
|
+
type: string
|
|
1564
|
+
enum:
|
|
1565
|
+
- REJECTED
|
|
1566
|
+
required:
|
|
1567
|
+
- responseType
|
|
1568
|
+
- title: ThirdpartyRequestsAuthorizationsIDPutResponseFIDO
|
|
1569
|
+
type: object
|
|
1570
|
+
description: 'The object sent in the PUT /thirdpartyRequests/authorizations/{ID} callback.'
|
|
1571
|
+
properties:
|
|
1572
|
+
responseType:
|
|
1573
|
+
title: AuthorizationResponseType
|
|
1574
|
+
description: |
|
|
1575
|
+
The customer accepted the terms of the transfer
|
|
1576
|
+
type: string
|
|
1577
|
+
enum:
|
|
1578
|
+
- ACCEPTED
|
|
1579
|
+
signedPayload:
|
|
1580
|
+
type: object
|
|
1581
|
+
properties:
|
|
1582
|
+
signedPayloadType:
|
|
1583
|
+
title: SignedPayloadTypeFIDO
|
|
1584
|
+
type: string
|
|
1585
|
+
enum:
|
|
1586
|
+
- FIDO
|
|
1587
|
+
description: Describes a challenge that has been signed with FIDO Attestation flows
|
|
1588
|
+
fidoSignedPayload:
|
|
1589
|
+
title: FIDOPublicKeyCredentialAssertion
|
|
1590
|
+
type: object
|
|
1591
|
+
description: |
|
|
1592
|
+
An object sent in a `PUT /thirdpartyRequests/authorization/{ID}` request.
|
|
1593
|
+
based mostly on: https://webauthn.guide/#authentication
|
|
1594
|
+
AuthenticatorAssertionResponse
|
|
1595
|
+
properties:
|
|
1596
|
+
id:
|
|
1597
|
+
type: string
|
|
1598
|
+
description: |
|
|
1599
|
+
credential id: identifier of pair of keys, base64 encoded
|
|
1600
|
+
https://w3c.github.io/webauthn/#ref-for-dom-credential-id
|
|
1601
|
+
minLength: 59
|
|
1602
|
+
maxLength: 118
|
|
1603
|
+
rawId:
|
|
1604
|
+
type: string
|
|
1605
|
+
description: |
|
|
1606
|
+
raw credential id: identifier of pair of keys, base64 encoded.
|
|
1607
|
+
minLength: 59
|
|
1608
|
+
maxLength: 118
|
|
1609
|
+
response:
|
|
1610
|
+
type: object
|
|
1611
|
+
description: |
|
|
1612
|
+
AuthenticatorAssertionResponse
|
|
1613
|
+
properties:
|
|
1614
|
+
authenticatorData:
|
|
1615
|
+
type: string
|
|
1616
|
+
description: |
|
|
1617
|
+
Authenticator data object.
|
|
1618
|
+
minLength: 49
|
|
1619
|
+
maxLength: 256
|
|
1620
|
+
clientDataJSON:
|
|
1621
|
+
type: string
|
|
1622
|
+
description: |
|
|
1623
|
+
JSON string with client data.
|
|
1624
|
+
minLength: 121
|
|
1625
|
+
maxLength: 512
|
|
1626
|
+
signature:
|
|
1627
|
+
type: string
|
|
1628
|
+
description: |
|
|
1629
|
+
The signature generated by the private key associated with this credential.
|
|
1630
|
+
minLength: 59
|
|
1631
|
+
maxLength: 256
|
|
1632
|
+
userHandle:
|
|
1633
|
+
type: string
|
|
1634
|
+
description: |
|
|
1635
|
+
This field is optionally provided by the authenticator, and
|
|
1636
|
+
represents the user.id that was supplied during registration.
|
|
1637
|
+
minLength: 1
|
|
1638
|
+
maxLength: 88
|
|
1639
|
+
required:
|
|
1640
|
+
- authenticatorData
|
|
1641
|
+
- clientDataJSON
|
|
1642
|
+
- signature
|
|
1643
|
+
additionalProperties: false
|
|
1644
|
+
type:
|
|
1645
|
+
type: string
|
|
1646
|
+
description: 'response type, we need only the type of public-key'
|
|
1647
|
+
enum:
|
|
1648
|
+
- public-key
|
|
1649
|
+
required:
|
|
1650
|
+
- id
|
|
1651
|
+
- rawId
|
|
1652
|
+
- response
|
|
1653
|
+
- type
|
|
1654
|
+
additionalProperties: false
|
|
1655
|
+
required:
|
|
1656
|
+
- signedPayloadType
|
|
1657
|
+
- fidoSignedPayload
|
|
1658
|
+
additionalProperties: false
|
|
1659
|
+
required:
|
|
1660
|
+
- responseType
|
|
1661
|
+
- signedPayload
|
|
1662
|
+
additionalProperties: false
|
|
1663
|
+
- title: ThirdpartyRequestsAuthorizationsIDPutResponseGeneric
|
|
1664
|
+
type: object
|
|
1665
|
+
description: 'The object sent in the PUT /thirdpartyRequests/authorizations/{ID} callback.'
|
|
1666
|
+
properties:
|
|
1667
|
+
responseType:
|
|
1668
|
+
$ref: '#/paths/~1thirdpartyRequests~1authorizations~1%7BID%7D/put/requestBody/content/application~1json/schema/oneOf/1/properties/responseType'
|
|
1669
|
+
signedPayload:
|
|
1670
|
+
type: object
|
|
1671
|
+
properties:
|
|
1672
|
+
signedPayloadType:
|
|
1673
|
+
title: SignedPayloadTypeGeneric
|
|
1674
|
+
type: string
|
|
1675
|
+
enum:
|
|
1676
|
+
- GENERIC
|
|
1677
|
+
description: Describes a challenge that has been signed with a private key
|
|
1678
|
+
genericSignedPayload:
|
|
1679
|
+
$ref: '#/paths/~1consentRequests~1%7BID%7D/patch/requestBody/content/application~1json/schema/properties/authToken'
|
|
1680
|
+
required:
|
|
1681
|
+
- signedPayloadType
|
|
1682
|
+
- genericSignedPayload
|
|
1683
|
+
additionalProperties: false
|
|
1684
|
+
required:
|
|
1685
|
+
- responseType
|
|
1686
|
+
- signedPayload
|
|
1687
|
+
additionalProperties: false
|
|
1688
|
+
responses:
|
|
1689
|
+
'200':
|
|
1690
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
1691
|
+
'400':
|
|
1692
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
1693
|
+
'401':
|
|
1694
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
1695
|
+
'403':
|
|
1696
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
1697
|
+
'404':
|
|
1698
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
1699
|
+
'405':
|
|
1700
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
1701
|
+
'406':
|
|
1702
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
1703
|
+
'501':
|
|
1704
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
1705
|
+
'503':
|
|
1706
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
1707
|
+
'/thirdpartyRequests/authorizations/{ID}/error':
|
|
1708
|
+
parameters:
|
|
1709
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
1710
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
1711
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
1712
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
1713
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
1714
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
1715
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
1716
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
1717
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
1718
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
1719
|
+
put:
|
|
1720
|
+
tags:
|
|
1721
|
+
- thirdpartyRequests
|
|
1722
|
+
- sampled
|
|
1723
|
+
operationId: PutThirdpartyRequestsAuthorizationsByIdAndError
|
|
1724
|
+
summary: PutThirdpartyRequestsAuthorizationsByIdAndError
|
|
1725
|
+
description: |
|
|
1726
|
+
The HTTP request `PUT /thirdpartyRequests/authorizations/{ID}/error` is used by the DFSP or PISP to inform
|
|
1727
|
+
the other party that something went wrong with a Thirdparty Transaction Authorization Request.
|
|
1728
|
+
|
|
1729
|
+
The PISP may use this to tell the DFSP that the Thirdparty Transaction Authorization Request is invalid or doesn't
|
|
1730
|
+
match a `transactionRequestId`.
|
|
1731
|
+
|
|
1732
|
+
The DFSP may use this to tell the PISP that the signed challenge returned in `PUT /thirdpartyRequest/authorizations/{ID}`
|
|
1733
|
+
was invalid.
|
|
1734
|
+
parameters:
|
|
1735
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
1736
|
+
requestBody:
|
|
1737
|
+
description: Error information returned.
|
|
1738
|
+
required: true
|
|
1739
|
+
content:
|
|
1740
|
+
application/json:
|
|
1741
|
+
schema:
|
|
1742
|
+
$ref: '#/paths/~1accounts~1%7BID%7D~1error/put/requestBody/content/application~1json/schema'
|
|
1743
|
+
responses:
|
|
1744
|
+
'200':
|
|
1745
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
1746
|
+
'400':
|
|
1747
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
1748
|
+
'401':
|
|
1749
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
1750
|
+
'403':
|
|
1751
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
1752
|
+
'404':
|
|
1753
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
1754
|
+
'405':
|
|
1755
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
1756
|
+
'406':
|
|
1757
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
1758
|
+
'501':
|
|
1759
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
1760
|
+
'503':
|
|
1761
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
1762
|
+
/thirdpartyRequests/transactions:
|
|
1763
|
+
parameters:
|
|
1764
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
1765
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
1766
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
1767
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
1768
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
1769
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
1770
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
1771
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
1772
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
1773
|
+
post:
|
|
1774
|
+
operationId: ThirdpartyRequestsTransactionsPost
|
|
1775
|
+
summary: ThirdpartyRequestsTransactionsPost
|
|
1776
|
+
description: The HTTP request POST `/thirdpartyRequests/transactions` is used by a PISP to initiate a 3rd party Transaction request with a DFSP
|
|
1777
|
+
tags:
|
|
1778
|
+
- thirdpartyRequests
|
|
1779
|
+
parameters:
|
|
1780
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
1781
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
1782
|
+
requestBody:
|
|
1783
|
+
description: Transaction request to be created.
|
|
1784
|
+
required: true
|
|
1785
|
+
content:
|
|
1786
|
+
application/json:
|
|
1787
|
+
schema:
|
|
1788
|
+
title: ThirdpartyRequestsTransactionsPostRequest
|
|
1789
|
+
type: object
|
|
1790
|
+
description: The object sent in the POST /thirdpartyRequests/transactions request.
|
|
1791
|
+
properties:
|
|
1792
|
+
transactionRequestId:
|
|
1793
|
+
allOf:
|
|
1794
|
+
- $ref: '#/paths/~1consentRequests/post/requestBody/content/application~1json/schema/properties/consentRequestId'
|
|
1795
|
+
description: |
|
|
1796
|
+
Common ID between the PISP and the Payer DFSP for the transaction request object. The ID should be reused for resends of the same transaction request. A new ID should be generated for each new transaction request.
|
|
1797
|
+
payee:
|
|
1798
|
+
allOf:
|
|
1799
|
+
- title: Party
|
|
1800
|
+
type: object
|
|
1801
|
+
description: Data model for the complex type Party.
|
|
1802
|
+
properties:
|
|
1803
|
+
partyIdInfo:
|
|
1804
|
+
$ref: '#/paths/~1thirdpartyRequests~1transactions/post/requestBody/content/application~1json/schema/properties/payer/allOf/0'
|
|
1805
|
+
merchantClassificationCode:
|
|
1806
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/requestBody/content/application~1json/schema/properties/party/properties/merchantClassificationCode'
|
|
1807
|
+
name:
|
|
1808
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/requestBody/content/application~1json/schema/properties/party/properties/name'
|
|
1809
|
+
personalInfo:
|
|
1810
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/requestBody/content/application~1json/schema/properties/party/properties/personalInfo'
|
|
1811
|
+
required:
|
|
1812
|
+
- partyIdInfo
|
|
1813
|
+
description: Information about the Payee in the proposed financial transaction.
|
|
1814
|
+
payer:
|
|
1815
|
+
allOf:
|
|
1816
|
+
- title: PartyIdInfo
|
|
1817
|
+
type: object
|
|
1818
|
+
description: Data model for the complex type PartyIdInfo.
|
|
1819
|
+
properties:
|
|
1820
|
+
partyIdType:
|
|
1821
|
+
title: PartyIdType
|
|
1822
|
+
type: string
|
|
1823
|
+
enum:
|
|
1824
|
+
- MSISDN
|
|
1825
|
+
- EMAIL
|
|
1826
|
+
- PERSONAL_ID
|
|
1827
|
+
- BUSINESS
|
|
1828
|
+
- DEVICE
|
|
1829
|
+
- ACCOUNT_ID
|
|
1830
|
+
- IBAN
|
|
1831
|
+
- ALIAS
|
|
1832
|
+
- CONSENT
|
|
1833
|
+
- THIRD_PARTY_LINK
|
|
1834
|
+
description: |
|
|
1835
|
+
This is a variant based on FSPIOP `PartyIdType` specification.
|
|
1836
|
+
Main difference being the CONSENT and THIRD_PARTY_LINK enums.
|
|
1837
|
+
|
|
1838
|
+
Below are the allowed values for the enumeration.
|
|
1839
|
+
- MSISDN - An MSISDN (Mobile Station International Subscriber Directory
|
|
1840
|
+
Number, that is, the phone number) is used as reference to a participant.
|
|
1841
|
+
The MSISDN identifier should be in international format according to the
|
|
1842
|
+
[ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en).
|
|
1843
|
+
Optionally, the MSISDN may be prefixed by a single plus sign, indicating the
|
|
1844
|
+
international prefix.
|
|
1845
|
+
- EMAIL - An email is used as reference to a
|
|
1846
|
+
participant. The format of the email should be according to the informational
|
|
1847
|
+
[RFC 3696](https://tools.ietf.org/html/rfc3696).
|
|
1848
|
+
- PERSONAL_ID - A personal identifier is used as reference to a participant.
|
|
1849
|
+
Examples of personal identification are passport number, birth certificate
|
|
1850
|
+
number, and national registration number. The identifier number is added in
|
|
1851
|
+
the PartyIdentifier element. The personal identifier type is added in the
|
|
1852
|
+
PartySubIdOrType element.
|
|
1853
|
+
- BUSINESS - A specific Business (for example, an organization or a company)
|
|
1854
|
+
is used as reference to a participant. The BUSINESS identifier can be in any
|
|
1855
|
+
format. To make a transaction connected to a specific username or bill number
|
|
1856
|
+
in a Business, the PartySubIdOrType element should be used.
|
|
1857
|
+
- DEVICE - A specific device (for example, a POS or ATM) ID connected to a
|
|
1858
|
+
specific business or organization is used as reference to a Party.
|
|
1859
|
+
For referencing a specific device under a specific business or organization,
|
|
1860
|
+
use the PartySubIdOrType element.
|
|
1861
|
+
- ACCOUNT_ID - A bank account number or FSP account ID should be used as
|
|
1862
|
+
reference to a participant. The ACCOUNT_ID identifier can be in any format,
|
|
1863
|
+
as formats can greatly differ depending on country and FSP.
|
|
1864
|
+
- IBAN - A bank account number or FSP account ID is used as reference to a
|
|
1865
|
+
participant. The IBAN identifier can consist of up to 34 alphanumeric
|
|
1866
|
+
characters and should be entered without whitespace.
|
|
1867
|
+
- ALIAS An alias is used as reference to a participant. The alias should be
|
|
1868
|
+
created in the FSP as an alternative reference to an account owner.
|
|
1869
|
+
Another example of an alias is a username in the FSP system.
|
|
1870
|
+
The ALIAS identifier can be in any format. It is also possible to use the
|
|
1871
|
+
PartySubIdOrType element for identifying an account under an Alias defined
|
|
1872
|
+
by the PartyIdentifier.
|
|
1873
|
+
- CONSENT - TBD
|
|
1874
|
+
- THIRD_PARTY_LINK - TBD
|
|
1875
|
+
example: PERSONAL_ID
|
|
1876
|
+
partyIdentifier:
|
|
1877
|
+
title: PartyIdentifier
|
|
1878
|
+
type: string
|
|
1879
|
+
minLength: 1
|
|
1880
|
+
maxLength: 128
|
|
1881
|
+
description: Identifier of the Party.
|
|
1882
|
+
example: '16135551212'
|
|
1883
|
+
partySubIdOrType:
|
|
1884
|
+
title: PartySubIdOrType
|
|
1885
|
+
type: string
|
|
1886
|
+
minLength: 1
|
|
1887
|
+
maxLength: 128
|
|
1888
|
+
description: 'Either a sub-identifier of a PartyIdentifier, or a sub-type of the PartyIdType, normally a PersonalIdentifierType.'
|
|
1889
|
+
fspId:
|
|
1890
|
+
$ref: '#/paths/~1services~1%7BServiceType%7D/put/requestBody/content/application~1json/schema/properties/providers/items'
|
|
1891
|
+
extensionList:
|
|
1892
|
+
$ref: '#/paths/~1thirdpartyRequests~1authorizations/post/requestBody/content/application~1json/schema/properties/extensionList'
|
|
1893
|
+
required:
|
|
1894
|
+
- partyIdType
|
|
1895
|
+
- partyIdentifier
|
|
1896
|
+
description: Information about the Payer in the proposed financial transaction.
|
|
1897
|
+
amountType:
|
|
1898
|
+
allOf:
|
|
1899
|
+
- title: AmountType
|
|
1900
|
+
type: string
|
|
1901
|
+
enum:
|
|
1902
|
+
- SEND
|
|
1903
|
+
- RECEIVE
|
|
1904
|
+
description: |-
|
|
1905
|
+
Below are the allowed values for the enumeration AmountType.
|
|
1906
|
+
- SEND - Amount the Payer would like to send, that is, the amount that should be withdrawn from the Payer account including any fees.
|
|
1907
|
+
- RECEIVE - Amount the Payer would like the Payee to receive, that is, the amount that should be sent to the receiver exclusive of any fees.
|
|
1908
|
+
example: RECEIVE
|
|
1909
|
+
description: 'SEND for sendAmount, RECEIVE for receiveAmount.'
|
|
1910
|
+
amount:
|
|
1911
|
+
allOf:
|
|
1912
|
+
- title: Money
|
|
1913
|
+
type: object
|
|
1914
|
+
description: Data model for the complex type Money.
|
|
1915
|
+
properties:
|
|
1916
|
+
currency:
|
|
1917
|
+
$ref: '#/paths/~1accounts~1%7BID%7D/put/requestBody/content/application~1json/schema/properties/accountList/items/properties/currency'
|
|
1918
|
+
amount:
|
|
1919
|
+
title: Amount
|
|
1920
|
+
type: string
|
|
1921
|
+
pattern: '^([0]|([1-9][0-9]{0,17}))([.][0-9]{0,3}[1-9])?$'
|
|
1922
|
+
description: 'The API data type Amount is a JSON String in a canonical format that is restricted by a regular expression for interoperability reasons. This pattern does not allow any trailing zeroes at all, but allows an amount without a minor currency unit. It also only allows four digits in the minor currency unit; a negative value is not allowed. Using more than 18 digits in the major currency unit is not allowed.'
|
|
1923
|
+
example: '123.45'
|
|
1924
|
+
required:
|
|
1925
|
+
- currency
|
|
1926
|
+
- amount
|
|
1927
|
+
description: Requested amount to be transferred from the Payer to Payee.
|
|
1928
|
+
transactionType:
|
|
1929
|
+
allOf:
|
|
1930
|
+
- $ref: '#/paths/~1thirdpartyRequests~1authorizations/post/requestBody/content/application~1json/schema/properties/transactionType'
|
|
1931
|
+
description: Type of transaction.
|
|
1932
|
+
note:
|
|
1933
|
+
type: string
|
|
1934
|
+
minLength: 1
|
|
1935
|
+
maxLength: 256
|
|
1936
|
+
description: A memo that will be attached to the transaction.
|
|
1937
|
+
expiration:
|
|
1938
|
+
type: string
|
|
1939
|
+
description: |
|
|
1940
|
+
Date and time until when the transaction request is valid. It can be set to get a quick failure in case the peer FSP takes too long to respond.
|
|
1941
|
+
example: '2016-05-24T08:38:08.699-04:00'
|
|
1942
|
+
required:
|
|
1943
|
+
- transactionRequestId
|
|
1944
|
+
- payee
|
|
1945
|
+
- payer
|
|
1946
|
+
- amountType
|
|
1947
|
+
- amount
|
|
1948
|
+
- transactionType
|
|
1949
|
+
- expiration
|
|
1950
|
+
responses:
|
|
1951
|
+
'202':
|
|
1952
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
1953
|
+
'400':
|
|
1954
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
1955
|
+
'401':
|
|
1956
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
1957
|
+
'403':
|
|
1958
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
1959
|
+
'404':
|
|
1960
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
1961
|
+
'405':
|
|
1962
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
1963
|
+
'406':
|
|
1964
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
1965
|
+
'501':
|
|
1966
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
1967
|
+
'503':
|
|
1968
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
1969
|
+
'/thirdpartyRequests/transactions/{ID}':
|
|
1970
|
+
parameters:
|
|
1971
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
1972
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
1973
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
1974
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
1975
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
1976
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
1977
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
1978
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
1979
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
1980
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
1981
|
+
get:
|
|
1982
|
+
tags:
|
|
1983
|
+
- thirdpartyRequests
|
|
1984
|
+
- sampled
|
|
1985
|
+
operationId: GetThirdpartyTransactionRequests
|
|
1986
|
+
summary: GetThirdpartyTransactionRequests
|
|
1987
|
+
description: |
|
|
1988
|
+
The HTTP request `GET /thirdpartyRequests/transactions/{ID}` is used to request the
|
|
1989
|
+
retrieval of a third party transaction request.
|
|
1990
|
+
parameters:
|
|
1991
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
1992
|
+
responses:
|
|
1993
|
+
'202':
|
|
1994
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
1995
|
+
'400':
|
|
1996
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
1997
|
+
'401':
|
|
1998
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
1999
|
+
'403':
|
|
2000
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2001
|
+
'404':
|
|
2002
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2003
|
+
'405':
|
|
2004
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2005
|
+
'406':
|
|
2006
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2007
|
+
'501':
|
|
2008
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2009
|
+
'503':
|
|
2010
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
2011
|
+
put:
|
|
2012
|
+
tags:
|
|
2013
|
+
- thirdpartyRequests
|
|
2014
|
+
- sampled
|
|
2015
|
+
operationId: UpdateThirdPartyTransactionRequests
|
|
2016
|
+
summary: UpdateThirdPartyTransactionRequests
|
|
2017
|
+
description: |
|
|
2018
|
+
The HTTP request `PUT /thirdpartyRequests/transactions/{ID}` is used by the DFSP to inform the client about
|
|
2019
|
+
the status of a previously requested thirdparty transaction request.
|
|
2020
|
+
|
|
2021
|
+
Switch(Thirdparty API Adapter) -> PISP
|
|
2022
|
+
parameters:
|
|
2023
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
2024
|
+
requestBody:
|
|
2025
|
+
required: true
|
|
2026
|
+
content:
|
|
2027
|
+
application/json:
|
|
2028
|
+
schema:
|
|
2029
|
+
title: ThirdpartyRequestsTransactionsIDPutResponse
|
|
2030
|
+
type: object
|
|
2031
|
+
description: 'The object sent in the PUT /thirdPartyRequests/transactions/{ID} request.'
|
|
2032
|
+
properties:
|
|
2033
|
+
transactionRequestState:
|
|
2034
|
+
title: TransactionRequestState
|
|
2035
|
+
type: string
|
|
2036
|
+
enum:
|
|
2037
|
+
- RECEIVED
|
|
2038
|
+
- PENDING
|
|
2039
|
+
- ACCEPTED
|
|
2040
|
+
- REJECTED
|
|
2041
|
+
description: |-
|
|
2042
|
+
Below are the allowed values for the enumeration.
|
|
2043
|
+
- RECEIVED - Payer FSP has received the transaction from the Payee FSP.
|
|
2044
|
+
- PENDING - Payer FSP has sent the transaction request to the Payer.
|
|
2045
|
+
- ACCEPTED - Payer has approved the transaction.
|
|
2046
|
+
- REJECTED - Payer has rejected the transaction.
|
|
2047
|
+
example: RECEIVED
|
|
2048
|
+
required:
|
|
2049
|
+
- transactionRequestState
|
|
2050
|
+
example:
|
|
2051
|
+
transactionRequestState: RECEIVED
|
|
2052
|
+
responses:
|
|
2053
|
+
'200':
|
|
2054
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
2055
|
+
'400':
|
|
2056
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
2057
|
+
'401':
|
|
2058
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
2059
|
+
'403':
|
|
2060
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2061
|
+
'404':
|
|
2062
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2063
|
+
'405':
|
|
2064
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2065
|
+
'406':
|
|
2066
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2067
|
+
'501':
|
|
2068
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2069
|
+
'503':
|
|
2070
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
2071
|
+
patch:
|
|
2072
|
+
operationId: NotifyThirdpartyTransactionRequests
|
|
2073
|
+
summary: NotifyThirdpartyTransactionRequests
|
|
2074
|
+
description: |
|
|
2075
|
+
The HTTP request `PATCH /thirdpartyRequests/transactions/{ID}` is used to
|
|
2076
|
+
notify a thirdparty of the outcome of a transaction request.
|
|
2077
|
+
|
|
2078
|
+
Switch(Thirdparty API Adapter) -> PISP
|
|
2079
|
+
tags:
|
|
2080
|
+
- thirdpartyRequests
|
|
2081
|
+
parameters:
|
|
2082
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
2083
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
2084
|
+
requestBody:
|
|
2085
|
+
required: true
|
|
2086
|
+
content:
|
|
2087
|
+
application/json:
|
|
2088
|
+
schema:
|
|
2089
|
+
title: ThirdpartyRequestsTransactionsIDPatchResponse
|
|
2090
|
+
type: object
|
|
2091
|
+
description: 'The object sent in the PATCH /thirdpartyRequests/transactions/{ID} callback.'
|
|
2092
|
+
properties:
|
|
2093
|
+
completedTimestamp:
|
|
2094
|
+
title: DateTime
|
|
2095
|
+
type: string
|
|
2096
|
+
pattern: '^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)T(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:(\.\d{3}))(?:Z|[+-][01]\d:[0-5]\d)$'
|
|
2097
|
+
description: 'The API data type DateTime is a JSON String in a lexical format that is restricted by a regular expression for interoperability reasons. The format is according to [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html), expressed in a combined date, time and time zone format. A more readable version of the format is yyyy-MM-ddTHH:mm:ss.SSS[-HH:MM]. Examples are "2016-05-24T08:38:08.699-04:00", "2016-05-24T08:38:08.699Z" (where Z indicates Zulu time zone, same as UTC).'
|
|
2098
|
+
example: '2016-05-24T08:38:08.699-04:00'
|
|
2099
|
+
transactionRequestState:
|
|
2100
|
+
$ref: '#/paths/~1thirdpartyRequests~1transactions~1%7BID%7D/put/requestBody/content/application~1json/schema/properties/transactionRequestState'
|
|
2101
|
+
transactionState:
|
|
2102
|
+
title: TransactionState
|
|
2103
|
+
type: string
|
|
2104
|
+
enum:
|
|
2105
|
+
- RECEIVED
|
|
2106
|
+
- PENDING
|
|
2107
|
+
- COMPLETED
|
|
2108
|
+
- REJECTED
|
|
2109
|
+
description: |-
|
|
2110
|
+
Below are the allowed values for the enumeration.
|
|
2111
|
+
- RECEIVED - Payee FSP has received the transaction from the Payer FSP.
|
|
2112
|
+
- PENDING - Payee FSP has validated the transaction.
|
|
2113
|
+
- COMPLETED - Payee FSP has successfully performed the transaction.
|
|
2114
|
+
- REJECTED - Payee FSP has failed to perform the transaction.
|
|
2115
|
+
example: RECEIVED
|
|
2116
|
+
required:
|
|
2117
|
+
- transactionRequestState
|
|
2118
|
+
- transactionState
|
|
2119
|
+
example:
|
|
2120
|
+
transactionRequestState: ACCEPTED
|
|
2121
|
+
transactionState: COMMITTED
|
|
2122
|
+
responses:
|
|
2123
|
+
'200':
|
|
2124
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
2125
|
+
'400':
|
|
2126
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
2127
|
+
'401':
|
|
2128
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
2129
|
+
'403':
|
|
2130
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2131
|
+
'404':
|
|
2132
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2133
|
+
'405':
|
|
2134
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2135
|
+
'406':
|
|
2136
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2137
|
+
'501':
|
|
2138
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2139
|
+
'503':
|
|
2140
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
2141
|
+
'/thirdpartyRequests/transactions/{ID}/error':
|
|
2142
|
+
parameters:
|
|
2143
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
2144
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
2145
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
2146
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
2147
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
2148
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
2149
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
2150
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
2151
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
2152
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
2153
|
+
put:
|
|
2154
|
+
tags:
|
|
2155
|
+
- thirdpartyRequests
|
|
2156
|
+
- sampled
|
|
2157
|
+
operationId: ThirdpartyTransactionRequestsError
|
|
2158
|
+
summary: ThirdpartyTransactionRequestsError
|
|
2159
|
+
description: |
|
|
2160
|
+
If the server is unable to find the transaction request, or another processing error occurs,
|
|
2161
|
+
the error callback `PUT /thirdpartyRequests/transactions/{ID}/error` is used.
|
|
2162
|
+
The `{ID}` in the URI should contain the `transactionRequestId` that was used for the creation of
|
|
2163
|
+
the thirdparty transaction request.
|
|
2164
|
+
parameters:
|
|
2165
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
2166
|
+
requestBody:
|
|
2167
|
+
description: Error information returned.
|
|
2168
|
+
required: true
|
|
2169
|
+
content:
|
|
2170
|
+
application/json:
|
|
2171
|
+
schema:
|
|
2172
|
+
$ref: '#/paths/~1accounts~1%7BID%7D~1error/put/requestBody/content/application~1json/schema'
|
|
2173
|
+
responses:
|
|
2174
|
+
'200':
|
|
2175
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
2176
|
+
'400':
|
|
2177
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
2178
|
+
'401':
|
|
2179
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
2180
|
+
'403':
|
|
2181
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2182
|
+
'404':
|
|
2183
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2184
|
+
'405':
|
|
2185
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2186
|
+
'406':
|
|
2187
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2188
|
+
'501':
|
|
2189
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2190
|
+
'503':
|
|
2191
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
2192
|
+
'/parties/{Type}/{ID}':
|
|
2193
|
+
parameters:
|
|
2194
|
+
- name: Type
|
|
2195
|
+
in: path
|
|
2196
|
+
required: true
|
|
2197
|
+
schema:
|
|
2198
|
+
type: string
|
|
2199
|
+
description: 'The type of the party identifier. For example, `MSISDN`, `PERSONAL_ID`.'
|
|
2200
|
+
- name: ID
|
|
2201
|
+
in: path
|
|
2202
|
+
required: true
|
|
2203
|
+
schema:
|
|
2204
|
+
type: string
|
|
2205
|
+
description: The identifier value.
|
|
2206
|
+
- name: Content-Type
|
|
2207
|
+
in: header
|
|
2208
|
+
schema:
|
|
2209
|
+
type: string
|
|
2210
|
+
required: true
|
|
2211
|
+
description: The `Content-Type` header indicates the specific version of the API used to send the payload body.
|
|
2212
|
+
- name: Date
|
|
2213
|
+
in: header
|
|
2214
|
+
schema:
|
|
2215
|
+
type: string
|
|
2216
|
+
required: true
|
|
2217
|
+
description: The `Date` header field indicates the date when the request was sent.
|
|
2218
|
+
- name: X-Forwarded-For
|
|
2219
|
+
in: header
|
|
2220
|
+
schema:
|
|
2221
|
+
type: string
|
|
2222
|
+
required: false
|
|
2223
|
+
description: |-
|
|
2224
|
+
The `X-Forwarded-For` header field is an unofficially accepted standard used for informational purposes of the originating client IP address, as a request might pass multiple proxies, firewalls, and so on. Multiple `X-Forwarded-For` values should be expected and supported by implementers of the API.
|
|
2225
|
+
|
|
2226
|
+
**Note:** An alternative to `X-Forwarded-For` is defined in [RFC 7239](https://tools.ietf.org/html/rfc7239). However, to this point RFC 7239 is less-used and supported than `X-Forwarded-For`.
|
|
2227
|
+
- name: FSPIOP-Source
|
|
2228
|
+
in: header
|
|
2229
|
+
schema:
|
|
2230
|
+
type: string
|
|
2231
|
+
required: true
|
|
2232
|
+
description: The `FSPIOP-Source` header field is a non-HTTP standard field used by the API for identifying the sender of the HTTP request. The field should be set by the original sender of the request. Required for routing and signature verification (see header field `FSPIOP-Signature`).
|
|
2233
|
+
- name: FSPIOP-Destination
|
|
2234
|
+
in: header
|
|
2235
|
+
schema:
|
|
2236
|
+
type: string
|
|
2237
|
+
required: false
|
|
2238
|
+
description: 'The `FSPIOP-Destination` header field is a non-HTTP standard field used by the API for HTTP header based routing of requests and responses to the destination. The field must be set by the original sender of the request if the destination is known (valid for all services except GET /parties) so that any entities between the client and the server do not need to parse the payload for routing purposes. If the destination is not known (valid for service GET /parties), the field should be left empty.'
|
|
2239
|
+
- name: FSPIOP-Encryption
|
|
2240
|
+
in: header
|
|
2241
|
+
schema:
|
|
2242
|
+
type: string
|
|
2243
|
+
required: false
|
|
2244
|
+
description: The `FSPIOP-Encryption` header field is a non-HTTP standard field used by the API for applying end-to-end encryption of the request.
|
|
2245
|
+
- name: FSPIOP-Signature
|
|
2246
|
+
in: header
|
|
2247
|
+
schema:
|
|
2248
|
+
type: string
|
|
2249
|
+
required: false
|
|
2250
|
+
description: The `FSPIOP-Signature` header field is a non-HTTP standard field used by the API for applying an end-to-end request signature.
|
|
2251
|
+
- name: FSPIOP-URI
|
|
2252
|
+
in: header
|
|
2253
|
+
schema:
|
|
2254
|
+
type: string
|
|
2255
|
+
required: false
|
|
2256
|
+
description: 'The `FSPIOP-URI` header field is a non-HTTP standard field used by the API for signature verification, should contain the service URI. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set).'
|
|
2257
|
+
- name: FSPIOP-HTTP-Method
|
|
2258
|
+
in: header
|
|
2259
|
+
schema:
|
|
2260
|
+
type: string
|
|
2261
|
+
required: false
|
|
2262
|
+
description: 'The `FSPIOP-HTTP-Method` header field is a non-HTTP standard field used by the API for signature verification, should contain the service HTTP method. Required if signature verification is used, for more information, see [the API Signature document](https://github.com/mojaloop/docs/tree/master/Specification%20Document%20Set).'
|
|
2263
|
+
get:
|
|
2264
|
+
description: 'The HTTP request `GET /parties/{Type}/{ID}` (or `GET /parties/{Type}/{ID}/{SubId}`) is used to look up information regarding the requested Party, defined by `{Type}`, `{ID}` and optionally `{SubId}` (for example, `GET /parties/MSISDN/123456789`, or `GET /parties/BUSINESS/shoecompany/employee1`).'
|
|
2265
|
+
summary: Look up party information
|
|
2266
|
+
tags:
|
|
2267
|
+
- parties
|
|
2268
|
+
operationId: PartiesByTypeAndID
|
|
2269
|
+
parameters:
|
|
2270
|
+
- name: Accept
|
|
2271
|
+
in: header
|
|
2272
|
+
required: true
|
|
2273
|
+
schema:
|
|
2274
|
+
type: string
|
|
2275
|
+
description: The `Accept` header field indicates the version of the API the client would like the server to use.
|
|
2276
|
+
responses:
|
|
2277
|
+
'202':
|
|
2278
|
+
description: Accepted
|
|
2279
|
+
'400':
|
|
2280
|
+
description: Bad Request
|
|
2281
|
+
content:
|
|
2282
|
+
application/json:
|
|
2283
|
+
schema:
|
|
2284
|
+
title: ErrorInformationResponse
|
|
2285
|
+
type: object
|
|
2286
|
+
description: Data model for the complex type object that contains an optional element ErrorInformation used along with 4xx and 5xx responses.
|
|
2287
|
+
properties:
|
|
2288
|
+
errorInformation:
|
|
2289
|
+
$ref: '#/paths/~1accounts~1%7BID%7D~1error/put/requestBody/content/application~1json/schema/properties/errorInformation'
|
|
2290
|
+
headers:
|
|
2291
|
+
Content-Length:
|
|
2292
|
+
required: false
|
|
2293
|
+
schema:
|
|
2294
|
+
type: integer
|
|
2295
|
+
description: |-
|
|
2296
|
+
The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body.
|
|
2297
|
+
|
|
2298
|
+
**Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes).
|
|
2299
|
+
Content-Type:
|
|
2300
|
+
schema:
|
|
2301
|
+
type: string
|
|
2302
|
+
required: true
|
|
2303
|
+
description: The `Content-Type` header indicates the specific version of the API used to send the payload body.
|
|
2304
|
+
'401':
|
|
2305
|
+
description: Unauthorized
|
|
2306
|
+
content:
|
|
2307
|
+
application/json:
|
|
2308
|
+
schema:
|
|
2309
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/content/application~1json/schema'
|
|
2310
|
+
headers:
|
|
2311
|
+
Content-Length:
|
|
2312
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Length'
|
|
2313
|
+
Content-Type:
|
|
2314
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Type'
|
|
2315
|
+
'403':
|
|
2316
|
+
description: Forbidden
|
|
2317
|
+
content:
|
|
2318
|
+
application/json:
|
|
2319
|
+
schema:
|
|
2320
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/content/application~1json/schema'
|
|
2321
|
+
headers:
|
|
2322
|
+
Content-Length:
|
|
2323
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Length'
|
|
2324
|
+
Content-Type:
|
|
2325
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Type'
|
|
2326
|
+
'404':
|
|
2327
|
+
description: Not Found
|
|
2328
|
+
content:
|
|
2329
|
+
application/json:
|
|
2330
|
+
schema:
|
|
2331
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/content/application~1json/schema'
|
|
2332
|
+
headers:
|
|
2333
|
+
Content-Length:
|
|
2334
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Length'
|
|
2335
|
+
Content-Type:
|
|
2336
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Type'
|
|
2337
|
+
'405':
|
|
2338
|
+
description: Method Not Allowed
|
|
2339
|
+
content:
|
|
2340
|
+
application/json:
|
|
2341
|
+
schema:
|
|
2342
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/content/application~1json/schema'
|
|
2343
|
+
headers:
|
|
2344
|
+
Content-Length:
|
|
2345
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Length'
|
|
2346
|
+
Content-Type:
|
|
2347
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Type'
|
|
2348
|
+
'406':
|
|
2349
|
+
description: Not Acceptable
|
|
2350
|
+
content:
|
|
2351
|
+
application/json:
|
|
2352
|
+
schema:
|
|
2353
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/content/application~1json/schema'
|
|
2354
|
+
headers:
|
|
2355
|
+
Content-Length:
|
|
2356
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Length'
|
|
2357
|
+
Content-Type:
|
|
2358
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Type'
|
|
2359
|
+
'501':
|
|
2360
|
+
description: Not Implemented
|
|
2361
|
+
content:
|
|
2362
|
+
application/json:
|
|
2363
|
+
schema:
|
|
2364
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/content/application~1json/schema'
|
|
2365
|
+
headers:
|
|
2366
|
+
Content-Length:
|
|
2367
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Length'
|
|
2368
|
+
Content-Type:
|
|
2369
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Type'
|
|
2370
|
+
'503':
|
|
2371
|
+
description: Service Unavailable
|
|
2372
|
+
content:
|
|
2373
|
+
application/json:
|
|
2374
|
+
schema:
|
|
2375
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/content/application~1json/schema'
|
|
2376
|
+
headers:
|
|
2377
|
+
Content-Length:
|
|
2378
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Length'
|
|
2379
|
+
Content-Type:
|
|
2380
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400/headers/Content-Type'
|
|
2381
|
+
put:
|
|
2382
|
+
description: 'The callback `PUT /parties/{Type}/{ID}` (or `PUT /parties/{Type}/{ID}/{SubId}`) is used to inform the client of a successful result of the Party information lookup.'
|
|
2383
|
+
summary: Return party information
|
|
2384
|
+
tags:
|
|
2385
|
+
- parties
|
|
2386
|
+
operationId: PartiesByTypeAndID2
|
|
2387
|
+
parameters:
|
|
2388
|
+
- name: Content-Length
|
|
2389
|
+
in: header
|
|
2390
|
+
required: false
|
|
2391
|
+
schema:
|
|
2392
|
+
type: integer
|
|
2393
|
+
description: |-
|
|
2394
|
+
The `Content-Length` header field indicates the anticipated size of the payload body. Only sent if there is a body.
|
|
2395
|
+
|
|
2396
|
+
**Note:** The API supports a maximum size of 5242880 bytes (5 Megabytes).
|
|
2397
|
+
requestBody:
|
|
2398
|
+
description: Party information returned.
|
|
2399
|
+
required: true
|
|
2400
|
+
content:
|
|
2401
|
+
application/json:
|
|
2402
|
+
schema:
|
|
2403
|
+
title: PartiesTypeIDPutResponse
|
|
2404
|
+
type: object
|
|
2405
|
+
description: 'The object sent in the PUT /parties/{Type}/{ID} callback.'
|
|
2406
|
+
properties:
|
|
2407
|
+
party:
|
|
2408
|
+
title: Party
|
|
2409
|
+
type: object
|
|
2410
|
+
description: Data model for the complex type Party.
|
|
2411
|
+
properties:
|
|
2412
|
+
partyIdInfo:
|
|
2413
|
+
title: PartyIdInfo
|
|
2414
|
+
type: object
|
|
2415
|
+
description: Data model for the complex type PartyIdInfo. An ExtensionList element has been added to this reqeust in version v1.1
|
|
2416
|
+
properties:
|
|
2417
|
+
partyIdType:
|
|
2418
|
+
title: PartyIdType
|
|
2419
|
+
type: string
|
|
2420
|
+
enum:
|
|
2421
|
+
- MSISDN
|
|
2422
|
+
- EMAIL
|
|
2423
|
+
- PERSONAL_ID
|
|
2424
|
+
- BUSINESS
|
|
2425
|
+
- DEVICE
|
|
2426
|
+
- ACCOUNT_ID
|
|
2427
|
+
- IBAN
|
|
2428
|
+
- ALIAS
|
|
2429
|
+
description: |-
|
|
2430
|
+
Below are the allowed values for the enumeration.
|
|
2431
|
+
- MSISDN - An MSISDN (Mobile Station International Subscriber Directory Number, that is, the phone number) is used as reference to a participant. The MSISDN identifier should be in international format according to the [ITU-T E.164 standard](https://www.itu.int/rec/T-REC-E.164/en). Optionally, the MSISDN may be prefixed by a single plus sign, indicating the international prefix.
|
|
2432
|
+
- EMAIL - An email is used as reference to a participant. The format of the email should be according to the informational [RFC 3696](https://tools.ietf.org/html/rfc3696).
|
|
2433
|
+
- PERSONAL_ID - A personal identifier is used as reference to a participant. Examples of personal identification are passport number, birth certificate number, and national registration number. The identifier number is added in the PartyIdentifier element. The personal identifier type is added in the PartySubIdOrType element.
|
|
2434
|
+
- BUSINESS - A specific Business (for example, an organization or a company) is used as reference to a participant. The BUSINESS identifier can be in any format. To make a transaction connected to a specific username or bill number in a Business, the PartySubIdOrType element should be used.
|
|
2435
|
+
- DEVICE - A specific device (for example, a POS or ATM) ID connected to a specific business or organization is used as reference to a Party. For referencing a specific device under a specific business or organization, use the PartySubIdOrType element.
|
|
2436
|
+
- ACCOUNT_ID - A bank account number or FSP account ID should be used as reference to a participant. The ACCOUNT_ID identifier can be in any format, as formats can greatly differ depending on country and FSP.
|
|
2437
|
+
- IBAN - A bank account number or FSP account ID is used as reference to a participant. The IBAN identifier can consist of up to 34 alphanumeric characters and should be entered without whitespace.
|
|
2438
|
+
- ALIAS An alias is used as reference to a participant. The alias should be created in the FSP as an alternative reference to an account owner. Another example of an alias is a username in the FSP system. The ALIAS identifier can be in any format. It is also possible to use the PartySubIdOrType element for identifying an account under an Alias defined by the PartyIdentifier.
|
|
2439
|
+
partyIdentifier:
|
|
2440
|
+
$ref: '#/paths/~1thirdpartyRequests~1transactions/post/requestBody/content/application~1json/schema/properties/payer/allOf/0/properties/partyIdentifier'
|
|
2441
|
+
partySubIdOrType:
|
|
2442
|
+
$ref: '#/paths/~1thirdpartyRequests~1transactions/post/requestBody/content/application~1json/schema/properties/payer/allOf/0/properties/partySubIdOrType'
|
|
2443
|
+
fspId:
|
|
2444
|
+
$ref: '#/paths/~1services~1%7BServiceType%7D/put/requestBody/content/application~1json/schema/properties/providers/items'
|
|
2445
|
+
extensionList:
|
|
2446
|
+
$ref: '#/paths/~1thirdpartyRequests~1authorizations/post/requestBody/content/application~1json/schema/properties/extensionList'
|
|
2447
|
+
required:
|
|
2448
|
+
- partyIdType
|
|
2449
|
+
- partyIdentifier
|
|
2450
|
+
merchantClassificationCode:
|
|
2451
|
+
title: MerchantClassificationCode
|
|
2452
|
+
type: string
|
|
2453
|
+
pattern: '^[\d]{1,4}$'
|
|
2454
|
+
description: 'A limited set of pre-defined numbers. This list would be a limited set of numbers identifying a set of popular merchant types like School Fees, Pubs and Restaurants, Groceries, etc.'
|
|
2455
|
+
name:
|
|
2456
|
+
title: PartyName
|
|
2457
|
+
type: string
|
|
2458
|
+
minLength: 1
|
|
2459
|
+
maxLength: 128
|
|
2460
|
+
description: Name of the Party. Could be a real name or a nickname.
|
|
2461
|
+
personalInfo:
|
|
2462
|
+
title: PartyPersonalInfo
|
|
2463
|
+
type: object
|
|
2464
|
+
description: Data model for the complex type PartyPersonalInfo.
|
|
2465
|
+
properties:
|
|
2466
|
+
complexName:
|
|
2467
|
+
title: PartyComplexName
|
|
2468
|
+
type: object
|
|
2469
|
+
description: Data model for the complex type PartyComplexName.
|
|
2470
|
+
properties:
|
|
2471
|
+
firstName:
|
|
2472
|
+
title: FirstName
|
|
2473
|
+
type: string
|
|
2474
|
+
minLength: 1
|
|
2475
|
+
maxLength: 128
|
|
2476
|
+
pattern: '^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control} .,''''-]{1,128}$'
|
|
2477
|
+
description: First name of the Party (Name Type).
|
|
2478
|
+
example: Henrik
|
|
2479
|
+
middleName:
|
|
2480
|
+
title: MiddleName
|
|
2481
|
+
type: string
|
|
2482
|
+
minLength: 1
|
|
2483
|
+
maxLength: 128
|
|
2484
|
+
pattern: '^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control} .,''''-]{1,128}$'
|
|
2485
|
+
description: Middle name of the Party (Name Type).
|
|
2486
|
+
example: Johannes
|
|
2487
|
+
lastName:
|
|
2488
|
+
title: LastName
|
|
2489
|
+
type: string
|
|
2490
|
+
minLength: 1
|
|
2491
|
+
maxLength: 128
|
|
2492
|
+
pattern: '^(?!\s*$)[\p{L}\p{gc=Mark}\p{digit}\p{gc=Connector_Punctuation}\p{Join_Control} .,''''-]{1,128}$'
|
|
2493
|
+
description: Last name of the Party (Name Type).
|
|
2494
|
+
example: Karlsson
|
|
2495
|
+
dateOfBirth:
|
|
2496
|
+
title: DateofBirth (type Date)
|
|
2497
|
+
type: string
|
|
2498
|
+
pattern: '^(?:[1-9]\d{3}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)-02-29)$'
|
|
2499
|
+
description: Date of Birth of the Party.
|
|
2500
|
+
example: '1966-06-16'
|
|
2501
|
+
required:
|
|
2502
|
+
- partyIdInfo
|
|
2503
|
+
required:
|
|
2504
|
+
- party
|
|
2505
|
+
responses:
|
|
2506
|
+
'200':
|
|
2507
|
+
description: OK
|
|
2508
|
+
'400':
|
|
2509
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
2510
|
+
'401':
|
|
2511
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
2512
|
+
'403':
|
|
2513
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2514
|
+
'404':
|
|
2515
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2516
|
+
'405':
|
|
2517
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2518
|
+
'406':
|
|
2519
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2520
|
+
'501':
|
|
2521
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2522
|
+
'503':
|
|
2523
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
2524
|
+
'/parties/{Type}/{ID}/error':
|
|
2525
|
+
put:
|
|
2526
|
+
description: 'If the server is unable to find Party information of the provided identity, or another processing error occurred, the error callback `PUT /parties/{Type}/{ID}/error` (or `PUT /parties/{Type}/{ID}/{SubI}/error`) is used.'
|
|
2527
|
+
summary: Return party information error
|
|
2528
|
+
tags:
|
|
2529
|
+
- parties
|
|
2530
|
+
operationId: PartiesErrorByTypeAndID
|
|
2531
|
+
parameters:
|
|
2532
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/0'
|
|
2533
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
2534
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
2535
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
2536
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
2537
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
2538
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
2539
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
2540
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
2541
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
2542
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
2543
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
2544
|
+
requestBody:
|
|
2545
|
+
description: Details of the error returned.
|
|
2546
|
+
required: true
|
|
2547
|
+
content:
|
|
2548
|
+
application/json:
|
|
2549
|
+
schema:
|
|
2550
|
+
$ref: '#/paths/~1accounts~1%7BID%7D~1error/put/requestBody/content/application~1json/schema'
|
|
2551
|
+
responses:
|
|
2552
|
+
'200':
|
|
2553
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
2554
|
+
'400':
|
|
2555
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
2556
|
+
'401':
|
|
2557
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
2558
|
+
'403':
|
|
2559
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2560
|
+
'404':
|
|
2561
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2562
|
+
'405':
|
|
2563
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2564
|
+
'406':
|
|
2565
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2566
|
+
'501':
|
|
2567
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2568
|
+
'503':
|
|
2569
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
2570
|
+
'/parties/{Type}/{ID}/{SubId}':
|
|
2571
|
+
parameters:
|
|
2572
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/0'
|
|
2573
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
2574
|
+
- name: SubId
|
|
2575
|
+
in: path
|
|
2576
|
+
required: true
|
|
2577
|
+
schema:
|
|
2578
|
+
type: string
|
|
2579
|
+
description: 'A sub-identifier of the party identifier, or a sub-type of the party identifier''s type. For example, `PASSPORT`, `DRIVING_LICENSE`.'
|
|
2580
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
2581
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
2582
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
2583
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
2584
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
2585
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
2586
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
2587
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
2588
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
2589
|
+
get:
|
|
2590
|
+
description: 'The HTTP request `GET /parties/{Type}/{ID}` (or `GET /parties/{Type}/{ID}/{SubId}`) is used to look up information regarding the requested Party, defined by `{Type}`, `{ID}` and optionally `{SubId}` (for example, `GET /parties/MSISDN/123456789`, or `GET /parties/BUSINESS/shoecompany/employee1`).'
|
|
2591
|
+
summary: Look up party information
|
|
2592
|
+
tags:
|
|
2593
|
+
- parties
|
|
2594
|
+
operationId: PartiesSubIdByTypeAndID
|
|
2595
|
+
parameters:
|
|
2596
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
2597
|
+
responses:
|
|
2598
|
+
'202':
|
|
2599
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
2600
|
+
'400':
|
|
2601
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
2602
|
+
'401':
|
|
2603
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
2604
|
+
'403':
|
|
2605
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2606
|
+
'404':
|
|
2607
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2608
|
+
'405':
|
|
2609
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2610
|
+
'406':
|
|
2611
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2612
|
+
'501':
|
|
2613
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2614
|
+
'503':
|
|
2615
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
2616
|
+
put:
|
|
2617
|
+
description: 'The callback `PUT /parties/{Type}/{ID}` (or `PUT /parties/{Type}/{ID}/{SubId}`) is used to inform the client of a successful result of the Party information lookup.'
|
|
2618
|
+
summary: Return party information
|
|
2619
|
+
tags:
|
|
2620
|
+
- parties
|
|
2621
|
+
operationId: PartiesSubIdByTypeAndIDPut
|
|
2622
|
+
parameters:
|
|
2623
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
2624
|
+
requestBody:
|
|
2625
|
+
description: Party information returned.
|
|
2626
|
+
required: true
|
|
2627
|
+
content:
|
|
2628
|
+
application/json:
|
|
2629
|
+
schema:
|
|
2630
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/requestBody/content/application~1json/schema'
|
|
2631
|
+
responses:
|
|
2632
|
+
'200':
|
|
2633
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
2634
|
+
'400':
|
|
2635
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
2636
|
+
'401':
|
|
2637
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
2638
|
+
'403':
|
|
2639
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2640
|
+
'404':
|
|
2641
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2642
|
+
'405':
|
|
2643
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2644
|
+
'406':
|
|
2645
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2646
|
+
'501':
|
|
2647
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2648
|
+
'503':
|
|
2649
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
2650
|
+
'/parties/{Type}/{ID}/{SubId}/error':
|
|
2651
|
+
put:
|
|
2652
|
+
description: 'If the server is unable to find Party information of the provided identity, or another processing error occurred, the error callback `PUT /parties/{Type}/{ID}/error` (or `PUT /parties/{Type}/{ID}/{SubId}/error`) is used.'
|
|
2653
|
+
summary: Return party information error
|
|
2654
|
+
tags:
|
|
2655
|
+
- parties
|
|
2656
|
+
operationId: PartiesSubIdErrorByTypeAndID
|
|
2657
|
+
parameters:
|
|
2658
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/0'
|
|
2659
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/1'
|
|
2660
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D~1%7BSubId%7D/parameters/2'
|
|
2661
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
2662
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
2663
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
2664
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
2665
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
2666
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
2667
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
2668
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
2669
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
2670
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
2671
|
+
requestBody:
|
|
2672
|
+
description: Details of the error returned.
|
|
2673
|
+
required: true
|
|
2674
|
+
content:
|
|
2675
|
+
application/json:
|
|
2676
|
+
schema:
|
|
2677
|
+
$ref: '#/paths/~1accounts~1%7BID%7D~1error/put/requestBody/content/application~1json/schema'
|
|
2678
|
+
responses:
|
|
2679
|
+
'200':
|
|
2680
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
2681
|
+
'400':
|
|
2682
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
2683
|
+
'401':
|
|
2684
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
2685
|
+
'403':
|
|
2686
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2687
|
+
'404':
|
|
2688
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2689
|
+
'405':
|
|
2690
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2691
|
+
'406':
|
|
2692
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2693
|
+
'501':
|
|
2694
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2695
|
+
'503':
|
|
2696
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
2697
|
+
'/services/{ServiceType}':
|
|
2698
|
+
parameters:
|
|
2699
|
+
- name: ServiceType
|
|
2700
|
+
in: path
|
|
2701
|
+
required: true
|
|
2702
|
+
schema:
|
|
2703
|
+
type: string
|
|
2704
|
+
description: 'The type of the service identifier. For example, `THIRD_PARTY_DFSP`'
|
|
2705
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
2706
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
2707
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
2708
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
2709
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
2710
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
2711
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
2712
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
2713
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
2714
|
+
get:
|
|
2715
|
+
operationId: GetServicesByServiceType
|
|
2716
|
+
summary: GetServicesByServiceType
|
|
2717
|
+
description: |
|
|
2718
|
+
The HTTP request `GET /services/{ServiceType}` is used to retrieve the list of participants
|
|
2719
|
+
that support a specified service.
|
|
2720
|
+
parameters:
|
|
2721
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/parameters/0'
|
|
2722
|
+
tags:
|
|
2723
|
+
- services
|
|
2724
|
+
- sampled
|
|
2725
|
+
responses:
|
|
2726
|
+
'202':
|
|
2727
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/202'
|
|
2728
|
+
'400':
|
|
2729
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
2730
|
+
'401':
|
|
2731
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
2732
|
+
'403':
|
|
2733
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2734
|
+
'404':
|
|
2735
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2736
|
+
'405':
|
|
2737
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2738
|
+
'406':
|
|
2739
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2740
|
+
'501':
|
|
2741
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2742
|
+
'503':
|
|
2743
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
2744
|
+
put:
|
|
2745
|
+
description: |
|
|
2746
|
+
The HTTP request `PUT /services/{ServiceType}` is used to return list of participants
|
|
2747
|
+
that support a specified service.
|
|
2748
|
+
operationId: PutServicesByServiceType
|
|
2749
|
+
summary: PutServicesByServiceType
|
|
2750
|
+
tags:
|
|
2751
|
+
- services
|
|
2752
|
+
- sampled
|
|
2753
|
+
parameters:
|
|
2754
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
2755
|
+
requestBody:
|
|
2756
|
+
required: true
|
|
2757
|
+
content:
|
|
2758
|
+
application/json:
|
|
2759
|
+
schema:
|
|
2760
|
+
title: ServicesServiceTypePutResponse
|
|
2761
|
+
type: object
|
|
2762
|
+
description: 'The object sent in a `PUT /services/{ServiceType}` request.'
|
|
2763
|
+
properties:
|
|
2764
|
+
providers:
|
|
2765
|
+
type: array
|
|
2766
|
+
minLength: 0
|
|
2767
|
+
maxLength: 256
|
|
2768
|
+
items:
|
|
2769
|
+
title: FspId
|
|
2770
|
+
type: string
|
|
2771
|
+
minLength: 1
|
|
2772
|
+
maxLength: 32
|
|
2773
|
+
description: FSP identifier.
|
|
2774
|
+
required:
|
|
2775
|
+
- providers
|
|
2776
|
+
responses:
|
|
2777
|
+
'200':
|
|
2778
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
2779
|
+
'400':
|
|
2780
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
2781
|
+
'401':
|
|
2782
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
2783
|
+
'403':
|
|
2784
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2785
|
+
'404':
|
|
2786
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2787
|
+
'405':
|
|
2788
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2789
|
+
'406':
|
|
2790
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2791
|
+
'501':
|
|
2792
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2793
|
+
'503':
|
|
2794
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|
|
2795
|
+
'/services/{ServiceType}/error':
|
|
2796
|
+
parameters:
|
|
2797
|
+
- $ref: '#/paths/~1services~1%7BServiceType%7D/parameters/0'
|
|
2798
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/2'
|
|
2799
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/3'
|
|
2800
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/4'
|
|
2801
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/5'
|
|
2802
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/6'
|
|
2803
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/7'
|
|
2804
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/8'
|
|
2805
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/9'
|
|
2806
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/parameters/10'
|
|
2807
|
+
put:
|
|
2808
|
+
description: |
|
|
2809
|
+
The HTTP request `PUT /services/{ServiceType}/error` is used to return error information
|
|
2810
|
+
operationId: PutServicesByServiceTypeAndError
|
|
2811
|
+
summary: PutServicesByServiceTypeAndError
|
|
2812
|
+
tags:
|
|
2813
|
+
- services
|
|
2814
|
+
- sampled
|
|
2815
|
+
parameters:
|
|
2816
|
+
- $ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/parameters/0'
|
|
2817
|
+
requestBody:
|
|
2818
|
+
description: Details of the error returned.
|
|
2819
|
+
required: true
|
|
2820
|
+
content:
|
|
2821
|
+
application/json:
|
|
2822
|
+
schema:
|
|
2823
|
+
$ref: '#/paths/~1accounts~1%7BID%7D~1error/put/requestBody/content/application~1json/schema'
|
|
2824
|
+
responses:
|
|
2825
|
+
'200':
|
|
2826
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/put/responses/200'
|
|
2827
|
+
'400':
|
|
2828
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/400'
|
|
2829
|
+
'401':
|
|
2830
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/401'
|
|
2831
|
+
'403':
|
|
2832
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/403'
|
|
2833
|
+
'404':
|
|
2834
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/404'
|
|
2835
|
+
'405':
|
|
2836
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/405'
|
|
2837
|
+
'406':
|
|
2838
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/406'
|
|
2839
|
+
'501':
|
|
2840
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/501'
|
|
2841
|
+
'503':
|
|
2842
|
+
$ref: '#/paths/~1parties~1%7BType%7D~1%7BID%7D/get/responses/503'
|