@mojaloop/api-snippets 13.0.6 → 13.0.7

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.
Files changed (93) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/docs/thirdparty-openapi3-snippets.yaml +3004 -2483
  3. package/lib/thirdparty/index.d.ts +1 -4
  4. package/lib/thirdparty/openapi.d.ts +4728 -3740
  5. package/package.json +1 -1
  6. package/tests/dto/thirdparty.test.ts +4 -48
  7. package/thirdparty/openapi3/components/parameters/Accept.yaml +1 -1
  8. package/thirdparty/openapi3/components/parameters/Content-Length.yaml +1 -1
  9. package/thirdparty/openapi3/components/parameters/Content-Type.yaml +1 -1
  10. package/thirdparty/openapi3/components/parameters/Date.yaml +1 -1
  11. package/thirdparty/openapi3/components/parameters/FSPIOP-Destination.yaml +1 -1
  12. package/thirdparty/openapi3/components/parameters/FSPIOP-Encryption.yaml +1 -1
  13. package/thirdparty/openapi3/components/parameters/FSPIOP-HTTP-Method.yaml +1 -1
  14. package/thirdparty/openapi3/components/parameters/FSPIOP-Signature.yaml +1 -1
  15. package/thirdparty/openapi3/components/parameters/FSPIOP-Source.yaml +1 -1
  16. package/thirdparty/openapi3/components/parameters/FSPIOP-URI.yaml +1 -1
  17. package/thirdparty/openapi3/components/parameters/ID.yaml +1 -1
  18. package/thirdparty/openapi3/components/parameters/SubId.yaml +1 -1
  19. package/thirdparty/openapi3/components/parameters/Type.yaml +1 -1
  20. package/thirdparty/openapi3/components/parameters/X-Forwarded-For.yaml +1 -1
  21. package/thirdparty/openapi3/components/responses/200.yaml +1 -1
  22. package/thirdparty/openapi3/components/responses/202.yaml +1 -1
  23. package/thirdparty/openapi3/components/responses/400.yaml +1 -1
  24. package/thirdparty/openapi3/components/responses/401.yaml +1 -1
  25. package/thirdparty/openapi3/components/responses/403.yaml +1 -1
  26. package/thirdparty/openapi3/components/responses/404.yaml +1 -1
  27. package/thirdparty/openapi3/components/responses/405.yaml +1 -1
  28. package/thirdparty/openapi3/components/responses/406.yaml +1 -1
  29. package/thirdparty/openapi3/components/responses/501.yaml +1 -1
  30. package/thirdparty/openapi3/components/responses/503.yaml +1 -1
  31. package/thirdparty/openapi3/components/schemas/Account.yaml +5 -2
  32. package/thirdparty/openapi3/components/schemas/AccountAddress.yaml +20 -2
  33. package/thirdparty/openapi3/components/schemas/AccountList.yaml +11 -0
  34. package/thirdparty/openapi3/components/schemas/AccountsIDPutResponse.yaml +15 -5
  35. package/thirdparty/openapi3/components/schemas/AuthenticationResponse.yaml +4 -3
  36. package/thirdparty/openapi3/components/schemas/AuthenticatorAssertionResponse.yaml +32 -0
  37. package/thirdparty/openapi3/components/schemas/AuthenticatorAttestationResponse.yaml +23 -0
  38. package/thirdparty/openapi3/components/schemas/ConsentRequestChannelType.yaml +3 -3
  39. package/thirdparty/openapi3/components/schemas/ConsentRequestChannelTypeOTP.yaml +1 -1
  40. package/thirdparty/openapi3/components/schemas/ConsentRequestChannelTypeWeb.yaml +1 -1
  41. package/thirdparty/openapi3/components/schemas/ConsentRequestsIDPatchRequest.yaml +10 -1
  42. package/thirdparty/openapi3/components/schemas/ConsentRequestsIDPutResponseOTP.yaml +2 -0
  43. package/thirdparty/openapi3/components/schemas/ConsentRequestsIDPutResponseWeb.yaml +2 -0
  44. package/thirdparty/openapi3/components/schemas/ConsentRequestsPostRequest.yaml +19 -3
  45. package/thirdparty/openapi3/components/schemas/ConsentStatusIssued.yaml +1 -1
  46. package/thirdparty/openapi3/components/schemas/ConsentStatusRevoked.yaml +1 -1
  47. package/thirdparty/openapi3/components/schemas/ConsentsIDPatchResponseRevoked.yaml +2 -0
  48. package/thirdparty/openapi3/components/schemas/ConsentsIDPatchResponseVerified.yaml +3 -1
  49. package/thirdparty/openapi3/components/schemas/ConsentsIDPutResponseSigned.yaml +5 -3
  50. package/thirdparty/openapi3/components/schemas/ConsentsIDPutResponseVerified.yaml +5 -3
  51. package/thirdparty/openapi3/components/schemas/ConsentsPostRequestAUTH.yaml +6 -2
  52. package/thirdparty/openapi3/components/schemas/ConsentsPostRequestPISP.yaml +6 -4
  53. package/thirdparty/openapi3/components/schemas/CredentialType.yaml +5 -3
  54. package/thirdparty/openapi3/components/schemas/FIDOPublicKeyCredentialAssertion.yaml +8 -3
  55. package/thirdparty/openapi3/components/schemas/GenericCredential.yaml +1 -1
  56. package/thirdparty/openapi3/components/schemas/Scope.yaml +6 -1
  57. package/thirdparty/openapi3/components/schemas/ScopeAction.yaml +8 -6
  58. package/thirdparty/openapi3/components/schemas/ServiceType.yaml +11 -3
  59. package/thirdparty/openapi3/components/schemas/ServicesServiceTypePutResponse.yaml +15 -1
  60. package/thirdparty/openapi3/components/schemas/SignedPayloadFIDO.yaml +11 -0
  61. package/thirdparty/openapi3/components/schemas/SignedPayloadGeneric.yaml +11 -0
  62. package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsAuthorizationsIDPutResponseFIDO.yaml +4 -11
  63. package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsAuthorizationsIDPutResponseGeneric.yaml +4 -11
  64. package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsAuthorizationsIDPutResponseRejected.yaml +2 -0
  65. package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsAuthorizationsPostRequest.yaml +15 -3
  66. package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsTransactionsIDPatchResponse.yaml +15 -1
  67. package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsTransactionsIDPutResponse.yaml +11 -1
  68. package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsTransactionsPostRequest.yaml +15 -2
  69. package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsVerificationsIDPutResponse.yaml +12 -1
  70. package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsVerificationsPostRequestFIDO.yaml +4 -2
  71. package/thirdparty/openapi3/components/schemas/ThirdpartyRequestsVerificationsPostRequestGeneric.yaml +4 -2
  72. package/thirdparty/openapi3/components/schemas/VerifiedCredential.yaml +6 -7
  73. package/thirdparty/openapi3/openapi.yaml +9 -9
  74. package/thirdparty/openapi3/paths/consentRequests_ID.yaml +6 -6
  75. package/thirdparty/openapi3/paths/consents_ID.yaml +2 -2
  76. package/thirdparty/openapi3/paths/thirdpartyRequests_authorizations.yaml +1 -1
  77. package/thirdparty/openapi3/paths/thirdpartyRequests_authorizations_ID.yaml +3 -3
  78. package/thirdparty/openapi3/paths/thirdpartyRequests_transactions.yaml +1 -1
  79. package/thirdparty/openapi3/thirdparty-dfsp-api.yaml +66 -66
  80. package/thirdparty/openapi3/thirdparty-pisp-api.yaml +65 -65
  81. package/thirdparty/openapi3/components/schemas/AuthenticationType.yaml +0 -11
  82. package/thirdparty/openapi3/components/schemas/AuthenticationValue.yaml +0 -9
  83. package/thirdparty/openapi3/components/schemas/AuthorizationChannelType.yaml +0 -11
  84. package/thirdparty/openapi3/components/schemas/AuthorizationsIDPutResponse.yaml +0 -10
  85. package/thirdparty/openapi3/components/schemas/AuthorizationsPostRequest.yaml +0 -24
  86. package/thirdparty/openapi3/components/schemas/IndividualQuote.yaml +0 -51
  87. package/thirdparty/openapi3/components/schemas/IndividualQuoteResult.yaml +0 -46
  88. package/thirdparty/openapi3/components/schemas/TransactionRequestsPostRequest.yaml +0 -30
  89. package/thirdparty/openapi3/components/schemas/U2FPIN.yaml +0 -8
  90. package/thirdparty/openapi3/components/schemas/U2FPinValue.yaml +0 -19
  91. package/thirdparty/openapi3/components/schemas/index.yaml +0 -182
  92. package/thirdparty/openapi3/paths/authorizations.yaml +0 -51
  93. package/thirdparty/openapi3/paths/authorizations_ID.yaml +0 -56
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mojaloop/api-snippets",
3
- "version": "13.0.6",
3
+ "version": "13.0.7",
4
4
  "description": "Mojaloop API specification reusable snippets",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -2,7 +2,6 @@ import { Schemas } from '../../lib/thirdparty'
2
2
 
3
3
  describe('thirdparty', () => {
4
4
  const accountAddress: Schemas.AccountAddress = 'account-id'
5
- const authenticationTypeQRCODE: Schemas.AuthenticationType = 'QRCODE'
6
5
  const currency: Schemas.Currency = 'USD'
7
6
  const name: Schemas.Name = 'name'
8
7
  const account: Schemas.Account = {
@@ -10,7 +9,6 @@ describe('thirdparty', () => {
10
9
  address: accountAddress,
11
10
  currency
12
11
  }
13
- const authorizationChannelTypeU2F: Schemas.AuthorizationChannelType = 'U2F'
14
12
  const extensionKey: Schemas.ExtensionKey = 'key'
15
13
  const extensionValue: Schemas.ExtensionValue = 'value'
16
14
  const extension: Schemas.Extension = {
@@ -43,17 +41,7 @@ describe('thirdparty', () => {
43
41
  currency,
44
42
  amount: '1'
45
43
  }
46
- const quote: Schemas.QuotesIDPutResponse = {
47
- transferAmount: money,
48
- payeeReceiveAmount: money,
49
- payeeFspFee: money,
50
- payeeFspCommission: money,
51
- expiration: dateTime,
52
- geoCode,
53
- ilpPacket,
54
- condition: ilpCondition,
55
- extensionList
56
- }
44
+
57
45
  const consentRequestChannelType: Schemas.ConsentRequestChannelType = 'WEB'
58
46
  const consentRequestChannelTypeWeb: Schemas.ConsentRequestChannelTypeWeb = 'WEB'
59
47
  const consentRequestChannelTypeOTP: Schemas.ConsentRequestChannelTypeOTP = 'OTP'
@@ -124,7 +112,7 @@ describe('thirdparty', () => {
124
112
  const verifiedCredential: Schemas.VerifiedCredential = {
125
113
  credentialType: credentialTypeFIDO,
126
114
  status: 'VERIFIED',
127
- payload: FIDOPublicKeyCredentialAttestation
115
+ fidoPayload: FIDOPublicKeyCredentialAttestation
128
116
  }
129
117
 
130
118
  const transactionType: Schemas.TransactionType = {
@@ -154,27 +142,11 @@ describe('thirdparty', () => {
154
142
  expect(accountAddress).toBeDefined()
155
143
  })
156
144
 
157
- test('AuthorizationChannelType', () => {
158
- expect(authorizationChannelTypeU2F).toBeDefined()
159
- })
160
-
161
145
  test('AuthorizationResponseType', () => {
162
146
  const authorizationResponseType: Schemas.AuthorizationResponseType = 'ACCEPTED'
163
147
  expect(authorizationResponseType).toBeDefined()
164
148
  })
165
149
 
166
- test('AuthorizationsPostRequest', () => {
167
- const authorizationsPostRequest: Schemas.AuthorizationsPostRequest = {
168
- authenticationType: authorizationChannelTypeU2F,
169
- retriesLeft: integer,
170
- amount: money,
171
- transactionId: correlationId,
172
- transactionRequestId: correlationId,
173
- quote
174
- }
175
- expect(authorizationsPostRequest).toBeDefined()
176
- })
177
-
178
150
  test('BinaryString', () => {
179
151
  const binaryString: Schemas.BinaryString = '1234'
180
152
  expect(binaryString).toBeDefined()
@@ -227,7 +199,7 @@ describe('thirdparty', () => {
227
199
  expect(scopeActionTransfer).toBeDefined()
228
200
  expect(scopeActionStatement).toBeDefined()
229
201
  })
230
-
202
+
231
203
  test('ConsentsIDPatchResponseRevoked', () => {
232
204
  const consentsIDPatchResponse: Schemas.ConsentsIDPatchResponseRevoked = {
233
205
  status: consentStatusRevoked,
@@ -603,7 +575,7 @@ describe('thirdparty', () => {
603
575
  responseType: 'ACCEPTED',
604
576
  signedPayload: {
605
577
  signedPayloadType: 'GENERIC',
606
- genericSignedPayload: 'some signature utf-8 string',
578
+ genericSignedPayload: 'some signature utf-8 string'
607
579
  }
608
580
  }
609
581
  expect(thirdpartyRequestsAuthorizationsIDPutResponseGeneric).toBeDefined()
@@ -623,22 +595,6 @@ describe('thirdparty', () => {
623
595
  expect(transactionType).toBeDefined()
624
596
  })
625
597
 
626
- test('TransactionRequestsPostRequest', () => {
627
- const transactionRequestsPostRequest: Schemas.TransactionRequestsPostRequest = {
628
- transactionRequestId: correlationId,
629
- payee: party,
630
- payer: partyIdInfo,
631
- amount: money,
632
- transactionType,
633
- note,
634
- geoCode,
635
- authenticationType: authenticationTypeQRCODE,
636
- expiration: dateTime,
637
- extensionList
638
- }
639
- expect(transactionRequestsPostRequest).toBeDefined()
640
- })
641
-
642
598
  test('ThirdpartyRequestsVerificationsIDPutResponse', () => {
643
599
  const thirdpartyRequestsVerificationsIdPutResponse: Schemas.ThirdpartyRequestsVerificationsIDPutResponse = {
644
600
  authenticationResponse: 'VERIFIED'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/Accept.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/Accept.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/Content-Length.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/Content-Length.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/Content-Type.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/Content-Type.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/Date.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/Date.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-Destination.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-Destination.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-Encryption.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-Encryption.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-HTTP-Method.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-HTTP-Method.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-Signature.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-Signature.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-Source.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-Source.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-URI.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/FSPIOP-URI.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/ID.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/ID.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/SubId.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/SubId.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/Type.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/Type.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/X-Forwarded-For.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/parameters/X-Forwarded-For.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/responses/200.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/responses/200.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/responses/202.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/responses/202.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/responses/400.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/responses/400.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/responses/401.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/responses/401.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/responses/403.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/responses/403.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/responses/404.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/responses/404.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/responses/405.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/responses/405.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/responses/406.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/responses/406.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/responses/501.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/responses/501.yaml'
@@ -1 +1 @@
1
- $ref: '../../../../fspiop/v1_1/openapi3/components/responses/503.yaml'
1
+ $ref: '../../../../fspiop/v1_1/openapi3/components/responses/503.yaml'
@@ -1,6 +1,9 @@
1
1
  title: Account
2
2
  type: object
3
- description: Data model for the complex type Account.
3
+ description: >-
4
+ Data model for the complex type Account.
5
+
6
+ https://github.com/mojaloop/documentation/blob/master/website/versioned_docs/v1.0.1/api/thirdparty/data-models.md#3211-account
4
7
  properties:
5
8
  accountNickname:
6
9
  $ref: ./Name.yaml
@@ -10,5 +13,5 @@ properties:
10
13
  $ref: ./Currency.yaml
11
14
  required:
12
15
  - accountNickname
13
- - id
16
+ - address
14
17
  - currency
@@ -1,7 +1,25 @@
1
1
  title: AccountAddress
2
2
  type: string
3
- description: |
4
- An address which can be used to identify the account.
3
+ description: >-
4
+ The AccountAddress data type is a variable length string with a maximum size
5
+ of 1023 characters and consists of:
6
+
7
+ Alphanumeric characters, upper or lower case. (Addresses are case-sensitive
8
+ so that they can contain data encoded in formats such as base64url.)
9
+
10
+ - Underscore (_)
11
+ - Tilde (~)
12
+ - Hyphen (-)
13
+ - Period (.) Addresses MUST NOT end in a period (.) character
14
+
15
+ An entity providing accounts to parties (i.e. a participant) can provide any
16
+ value for an AccountAddress that is meaningful to that entity.
17
+ It does not need to provide an address that makes the account identifiable
18
+ outside the entity's domain.
19
+
20
+ IMPORTANT: The policy for defining addresses and the life-cycle of these is at the discretion of the address space owner (the payer DFSP in this case).
21
+
22
+ https://github.com/mojaloop/documentation/blob/master/website/versioned_docs/v1.0.1/api/thirdparty/data-models.md#3212-accountaddress
5
23
  pattern: '^([0-9A-Za-z_~\-\.]+[0-9A-Za-z_~\-])$'
6
24
  minLength: 1
7
25
  maxLength: 1023
@@ -0,0 +1,11 @@
1
+ title: AccountList
2
+ type: array
3
+ description: >-
4
+ The AccountList data model is used to hold information about the accounts
5
+ that a party controls.
6
+
7
+ https://github.com/mojaloop/documentation/blob/master/website/versioned_docs/v1.0.1/api/thirdparty/data-models.md#3213-accountlist
8
+ items:
9
+ $ref: ./Account.yaml
10
+ minItems: 1
11
+ maxItems: 256
@@ -1,11 +1,21 @@
1
1
  title: AccountsIDPutResponse
2
2
  type: object
3
- description: The object sent in a `PUT /accounts/{ID}` request.
3
+ description: >-
4
+ Callback and data model information for GET /accounts/{ID}:
5
+
6
+ Callback - PUT /accounts/{ID}
7
+ Error Callback - PUT /accounts/{ID}/error
8
+ Data Model - Empty body
9
+
10
+ The PUT /accounts/{ID} response is used to inform the requester of the result
11
+ of a request for accounts information. The identifier ID given in the call
12
+ are the values given in the original request.
13
+
14
+ https://github.com/mojaloop/documentation/blob/master/website/versioned_docs/v1.0.1/api/thirdparty/data-models.md#31121--put-accountsid
4
15
  properties:
5
16
  accountList:
6
- description: Information about the accounts that the DFSP associates with the identifier sent by the PISP
7
- type: array
8
- items:
9
- $ref: ./Account.yaml
17
+ $ref: ./AccountList.yaml
18
+ extensionList:
19
+ $ref: ./ExtensionList.yaml
10
20
  required:
11
21
  - accounts
@@ -2,8 +2,9 @@ title: AuthenticationResponse
2
2
  type: string
3
3
  enum:
4
4
  - VERIFIED
5
- - REJECTED
6
- description: |-
5
+ description: >-
6
+ The AuthenticationResponse enumeration describes the result of authenticating
7
+ verification request.
8
+
7
9
  Below are the allowed values for the enumeration AuthenticationResponse.
8
10
  - VERIFIED - The challenge was correctly signed.
9
- - REJECTED - The challenge was not correctly signed.
@@ -0,0 +1,32 @@
1
+ title: FIDOPublicKeyCredentialAssertion
2
+ type: object
3
+ description: >-
4
+ A data model representing an AssertionStatement from WebAuthN.
5
+
6
+ https://github.com/mojaloop/documentation/blob/master/website/versioned_docs/v1.0.1/api/thirdparty/data-models.md#32130-authenticatorassertionresponse
7
+ properties:
8
+ authenticatorData:
9
+ type: string
10
+ description: |
11
+ Authenticator data object.
12
+ minLength: 49
13
+ maxLength: 256
14
+ clientDataJSON:
15
+ type: string
16
+ description: |
17
+ JSON string with client data.
18
+ minLength: 121
19
+ maxLength: 512
20
+ signature:
21
+ type: string
22
+ description: |
23
+ The signature generated by the private key associated with this credential.
24
+ minLength: 59
25
+ maxLength: 256
26
+ userHandle:
27
+ type: string
28
+ description: |
29
+ This field is optionally provided by the authenticator, and
30
+ represents the user.id that was supplied during registration.
31
+ minLength: 1
32
+ maxLength: 88
@@ -0,0 +1,23 @@
1
+ title: AuthenticatorAttestationResponse
2
+ type: object
3
+ description: |
4
+ A data model representing an AttestationStatement from WebAuthN.
5
+
6
+ https://github.com/mojaloop/documentation/blob/master/website/versioned_docs/v1.0.1/api/thirdparty/data-models.md#32129-authenticatorattestationresponse
7
+ properties:
8
+ clientDataJSON:
9
+ type: string
10
+ description: |
11
+ JSON string with client data
12
+ minLength: 121
13
+ maxLength: 512
14
+ attestationObject:
15
+ type: string
16
+ description: |
17
+ CBOR.encoded attestation object
18
+ minLength: 306
19
+ maxLength: 2048
20
+ required:
21
+ - clientDataJSON
22
+ - attestationObject
23
+ additionalProperties: false
@@ -4,6 +4,6 @@ enum:
4
4
  - WEB
5
5
  - OTP
6
6
  description: |
7
- The auth channel being used for the consentRequest.
8
- - "WEB" - The Web auth channel.
9
- - "OTP" - The OTP auth channel.
7
+ The auth channel being used for the consent request.
8
+ - WEB - DFSP can support authorization via a web-based login.
9
+ - OTP - DFSP can support authorization via a One Time PIN.
@@ -3,4 +3,4 @@ type: string
3
3
  enum:
4
4
  - OTP
5
5
  description: |
6
- The OTP auth channel being used for PUT consentRequest/{ID} request.
6
+ The OTP auth channel being used for `PUT /consentRequests/{ID}` request.
@@ -3,4 +3,4 @@ type: string
3
3
  enum:
4
4
  - WEB
5
5
  description: |
6
- The web auth channel being used for PUT consentRequest/{ID} request.
6
+ The web auth channel being used for `PUT /consentRequest/{ID}` request.
@@ -1,8 +1,17 @@
1
1
  title: ConsentRequestsIDPatchRequest
2
2
  type: object
3
- description: The object sent in a `PATCH /consentRequests/{ID}` request.
3
+ description: >-
4
+ Used by: PISP
5
+
6
+ After the user completes an out-of-band authorization with the DFSP,
7
+ the PISP will receive a token which they can use to prove to the DFSP
8
+ that the user trusts this PISP.
9
+
10
+ https://github.com/mojaloop/documentation/blob/master/website/versioned_docs/v1.0.1/api/thirdparty/data-models.md#31222-patch-consentrequestsid
4
11
  properties:
5
12
  authToken:
6
13
  $ref: ./BinaryString.yaml
14
+ extensionList:
15
+ $ref: ./ExtensionList.yaml
7
16
  required:
8
17
  - authToken
@@ -22,6 +22,8 @@ properties:
22
22
  # whitelist the PISP's url ahead of time.
23
23
  callbackUri:
24
24
  $ref: ./Uri.yaml
25
+ extensionList:
26
+ $ref: ./ExtensionList.yaml
25
27
  required:
26
28
  - scopes
27
29
  - authChannels
@@ -29,6 +29,8 @@ properties:
29
29
  # login.
30
30
  authUri:
31
31
  $ref: ./Uri.yaml
32
+ extensionList:
33
+ $ref: ./ExtensionList.yaml
32
34
  required:
33
35
  - scopes
34
36
  - authChannels
@@ -1,12 +1,27 @@
1
1
  title: ConsentRequestsPostRequest
2
2
  type: object
3
- description: The object sent in a `POST /consentRequests` request.
3
+ description: >-
4
+ Used by: PISP
5
+
6
+ The HTTP request POST /consentRequests is used to request a DFSP to grant
7
+ access to one or more accounts owned by a customer of the DFSP for the
8
+ PISP who sends the request.
9
+
10
+ Callback and data model for POST /consentRequests:
11
+
12
+ Callback: PUT /consentRequests/{ID}
13
+ Error callback: PUT /consentRequests/{ID}/error
14
+ Data model - see below url
15
+
16
+ https://github.com/mojaloop/documentation/blob/master/website/versioned_docs/v1.0.1/api/thirdparty/data-models.md#31212-post-consentrequests
4
17
  properties:
5
18
  consentRequestId:
6
19
  $ref: ./CorrelationId.yaml
7
20
  userId:
8
21
  type: string
9
- description: The identifier used in the **GET /accounts/**_{ID}_. Used by the DFSP to correlate an account lookup to a `consentRequest`
22
+ description: >-
23
+ The identifier used in the **GET /accounts/**_{ID}_.
24
+ Used by the DFSP to correlate an account lookup to a `consentRequest`
10
25
  minLength: 1
11
26
  maxLength: 128
12
27
  scopes:
@@ -26,7 +41,8 @@ properties:
26
41
  # whitelist the PISP's url ahead of time.
27
42
  callbackUri:
28
43
  $ref: ./Uri.yaml
29
-
44
+ extensionList:
45
+ $ref: ./ExtensionList.yaml
30
46
  required:
31
47
  - consentRequestId
32
48
  - userId
@@ -1,4 +1,4 @@
1
- title: ConsentStatus
1
+ title: ConsentStatusIssued
2
2
  type: string
3
3
  enum:
4
4
  - ISSUED
@@ -1,4 +1,4 @@
1
- title: ConsentStatus
1
+ title: ConsentStatusRevoked
2
2
  type: string
3
3
  enum:
4
4
  - REVOKED
@@ -10,6 +10,8 @@ properties:
10
10
  $ref: ./ConsentStatusRevoked.yaml
11
11
  revokedAt:
12
12
  $ref: ./DateTime.yaml
13
+ extensionList:
14
+ $ref: ./ExtensionList.yaml
13
15
  required:
14
16
  - status
15
17
  - revokedAt
@@ -2,7 +2,7 @@ title: ConsentsIDPatchResponseVerified
2
2
  description: |
3
3
  PATCH /consents/{ID} request object.
4
4
 
5
- Sent by the DFSP to the PISP when a consent is verified.
5
+ Sent by the DFSP to the PISP when a consent is issued and verified.
6
6
  Used in the "Register Credential" part of the Account linking flow.
7
7
  type: object
8
8
  properties:
@@ -13,5 +13,7 @@ properties:
13
13
  $ref: ./CredentialStatusVerified.yaml
14
14
  required:
15
15
  - status
16
+ extensionList:
17
+ $ref: ./ExtensionList.yaml
16
18
  required:
17
19
  - credential
@@ -7,15 +7,17 @@ description: >
7
7
  Called by a `PISP` to after signing a challenge. Sent to a DFSP for
8
8
  verification.
9
9
  properties:
10
+ status:
11
+ $ref: ./ConsentStatusIssued.yaml
10
12
  scopes:
11
13
  type: array
12
14
  items:
13
15
  $ref: ./Scope.yaml
14
- status:
15
- $ref: ./ConsentStatusIssued.yaml
16
16
  credential:
17
17
  $ref: ./SignedCredential.yaml
18
+ extensionList:
19
+ $ref: ./ExtensionList.yaml
18
20
  required:
19
21
  - scopes
20
22
  - credential
21
- additionalProperties: false
23
+ additionalProperties: false
@@ -7,15 +7,17 @@ description: >
7
7
  Called by a `auth-service` to notify a DFSP that a credential has
8
8
  been verified and registered.
9
9
  properties:
10
+ status:
11
+ $ref: ./ConsentStatusIssued.yaml
10
12
  scopes:
11
13
  type: array
12
14
  items:
13
15
  $ref: ./Scope.yaml
14
- status:
15
- $ref: ./ConsentStatusIssued.yaml
16
16
  credential:
17
17
  $ref: ./VerifiedCredential.yaml
18
+ extensionList:
19
+ $ref: ./ExtensionList.yaml
18
20
  required:
19
21
  - scopes
20
22
  - credential
21
- additionalProperties: false
23
+ additionalProperties: false
@@ -10,6 +10,8 @@ properties:
10
10
  description: |
11
11
  Common ID between the PISP and FSP for the Consent object
12
12
  determined by the DFSP who creates the Consent.
13
+ consentRequestId:
14
+ $ref: ./CorrelationId.yaml
13
15
  scopes:
14
16
  minLength: 1
15
17
  maxLength: 256
@@ -20,10 +22,12 @@ properties:
20
22
  allOf:
21
23
  - $ref: ./SignedCredential.yaml
22
24
  status:
23
- $ref: ConsentStatus.yaml
25
+ $ref: ./ConsentStatus.yaml
26
+ extensionList:
27
+ $ref: ./ExtensionList.yaml
24
28
  required:
25
29
  - consentId
26
30
  - scopes
27
31
  - credential
28
- - status
32
+ - status
29
33
  additionalProperties: false
@@ -7,8 +7,8 @@ properties:
7
7
  allOf:
8
8
  - $ref: ./CorrelationId.yaml
9
9
  description: |
10
- Common ID between the PISP and the Payer DFSP for the consent object. The ID
11
- should be reused for resends of the same consent. A new ID should be generated
10
+ Common ID between the PISP and the Payer DFSP for the consent object. The ID
11
+ should be reused for re-sends of the same consent. A new ID should be generated
12
12
  for each new consent.
13
13
  consentRequestId:
14
14
  allOf:
@@ -22,9 +22,11 @@ properties:
22
22
  items:
23
23
  $ref: ./Scope.yaml
24
24
  status:
25
- $ref: ConsentStatus.yaml
25
+ $ref: ./ConsentStatus.yaml
26
+ extensionList:
27
+ $ref: ./ExtensionList.yaml
26
28
  required:
27
29
  - consentId
28
- - consentRequestId
30
+ - consentRequestId
29
31
  - scopes
30
32
  - status
@@ -3,7 +3,9 @@ type: string
3
3
  enum:
4
4
  - FIDO
5
5
  - GENERIC
6
- description: |
6
+ description: >-
7
7
  The type of the Credential.
8
- - "FIDO" - A FIDO public/private keypair
9
- - "GENERIC" - A Generic public/private keypair
8
+ - "FIDO" - The credential is based on a FIDO challenge. Its payload is a FIDOPublicKeyCredentialAttestation object.
9
+ - "GENERIC" - The credential is based on a simple public key validation. Its payload is a GenericCredential object.
10
+
11
+ https://github.com/mojaloop/documentation/blob/master/website/versioned_docs/v1.0.1/api/thirdparty/data-models.md#3226-credentialtype