Send Consent Artefact API
This API is used by the AA to send the consent artefact to the FIP on creation.
Request Parameters
Parameter Name
Data type
Required?
Description
ver
string
Yes
Version of the AA Ecosystem APIs. Example : "1.0"
txnid
string
Yes
The unique transaction identifier used for providing an end to end traceability. Example : "0b811819-9044-4856-b0ee-8c88035f8858"
consentId
string
Yes
The unique ID of the consent artefact. Example : "XXXX-XXXX-XXXX-XXXX"
status
string
Yes
Current Status of the Consent. Could be ACTIVE, PAUSED, REVOKED, EXPIRED
createTimestamp
string (date-time)
Yes
Creation time of the consent artefact. Example : "2018-12-06T11:39:57.153Z"
ConsentDetail
This Section defines the consent and should be digitally signed. CAN NOT CHANGE after generation, for any change a new consent has to be generated.
consentStart
string (date-time)
Yes
Start date-time of the consent. This field would allow for Post-Dated consent. Example : "2019-12-06T11:39:57.153Z"
consentExpiry
string (date-time)
Yes
Expiry date-time for the consent. Example : "2019-12-06T11:39:57.153Z"
consentMode
string
Yes
Consent Mode as defined in the AA technical Standards. Could be VIEW, STORE, QUERY, STREAM
fetchType
string
Yes
FI Fetch type. Could be ONETIME or PERIODIC
consentTypes
string
Yes
Array, could be TRANSACTIONS, PROFILE, BALANCE.
fiTypes
string
Yes
List of FITypes used in the Consent. FITypes names should be as defined in the AA Technical Standards. Could be DEPOSIT, TERM-DEPOSIT, RECURRING_DEPOSIT, SIP, CP, GOVT_SECURITIES, EQUITIES, BONDS, DEBENTURES, MUTUAL_FUNDS, ETF, IDR, CIS, AIF, INSURANCE_POLICIES, NPS, INVIT, REIT, OTHER
DataConsumer
DataConsumer - The entity which receives data. For a consent between FIP & AA, DataConsumer would be AA whereas for a consent between FIU/AA Application & AA, DataConsumer would be FIU.
id
string
Yes
AA ID. Example : "AA_ID"
type
string
Yes
Data consumer type. AA in the consent between FIP & AA.
DataProvider
DataProvider - The entity which sends/provides data. For a consent between FIP & AA, DataProvider would be FIP whereas for a consent between FIU/AA Application & AA, DataProvider would be AA.
id
string
Yes
DataProvider ID. Example : "FIP_ID"
type
string
Yes
Type of DataConsumer. Example : "FIP"
Customer
Address of the end customer
id
string
No
Customer Address. Example : "customer_identifier
@AA_identifier"
Accounts
List of accounts which the consent would fetch FI from. For a consent between FIU & AA, this list could have accounts from multiple FIP. For a consent between FIP & AA, only accounts from particular FIP must be present in this section.
fiType
string
No
Type of Financial Information. Example : "DEPOSIT"
fipId
string
No
FIP ID. Example : "FIP1"
accType
string
No
Type of Account. Example : "SAVINGS"
linkRefNumber
string
No
FIP’s linkRefNumber as shared by the FIP after linking. Example : "XXXX-XXXX-XXXX"
maskedAccNumber
string
No
Masked account number. Example : "XXXXXXXX4020"
Purpose
Purpose of the consent (Defined in AA Technical Specification)
code
string
Yes
Purpose Code as defined in the AA Technical Specification
refUri
string
No
URL where the purpose is further defined
text
string
No
Textual Description
Category
type
string
No
Category name of the Purpose code
FIDataRange
Data Range (Datetime) for the Financial Information Requested
from
string (date-time)
Yes
Start date for financial information. Example : "2017-07-13T11:33:34.509Z"
to
string (date-time)
Yes
End date for financial information. Example : "2018-07-13T11:33:34.509Z"
DataLife
Datalife defines for how long can the FIU/AA Application store the data.
unit
string
Yes
A unit of how long a consumer can store the data.
value
number
Yes
Value for the Datalife Unit. If INF, value must be set to 0.
Frequency
Frequency of data request. Could be defined in HOUR/DAY/MONTH/YEAR.
unit
string
Yes
Define the frequency for repeating access of the financial information. Could be HOUR, DAY, MONTH, YEAR
value
number
Yes
Define the value of unit on how many can consumer can make a request within defined unit of frequency
DataFilter
Array of rules that will be utilized by FIP to filter the data.
type
string
Yes
The condition to filter the data on. Example : "TRANSACTIONAMOUNT"
operator
string
Yes
Operator to filter data by. Could be =, !=, >, <, >= or ⇐ Example : ">="
value
string
Yes
Value to filter data. Example : "20000"
consentDetailDigitalSig
nature
string (byte)
Yes
Digital Signature of the ConsentDetail Section after generation. The receiver has to verify the given signature by generating signature from the received ConsentDetail section. 'https://www.w3.org/TR/xmldsig-core1/' Pattern : "^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$" Example : "Digital Signature of the ConsentDetail Section."
ConsentUse
Section defining the parameters for consent tracking
logUri
string
No
Logging; logUri can be any valid URI including an email address
count
number
No
Number of times the consent has been used. Example : 1.0
lastUseDateTime
string (date-time)
No
Consent Last Used Datetime. Example : "2018-12-06T11:39:57.153Z"
Response Parameters
Parameter Name
Data type
Required?
Description
--None--
Example
Sample Request
{
"ver": "1.0",
"txnid": "0b811819-9044-4856-b0ee-8c88035f8858",
"consentId": "XXXX-XXXX-XXXX-XXXX",
"status": "ACTIVE",
"createTimestamp": "2018-12-06T11:39:57.153Z",
"ConsentDetail": {
"consentStart": "2019-12-06T11:39:57.153Z",
"consentExpiry": "2019-12-06T11:39:57.153Z",
"consentMode": "VIEW",
"fetchType": "ONETIME",
"consentTypes": [
"BALANCE"
],
"fiTypes": [
"DEPOSIT"
],
"DataConsumer": {
"id": "AA_ID",
"type": "AA"
},
"DataProvider": {
"id": "FIP_ID",
"type": "FIP"
},
"Customer": {
"id": "customer_identifier@AA_identifier"
},
"Accounts": [
{
"fiType": "DEPOSIT",
"fipId": "FIP1",
"accType": "SAVINGS",
"linkRefNumber": "XXXX-XXXX-XXXX",
"maskedAccNumber": "XXXXXXXX4020"
}
],
"Purpose": {
"code": "101",
"refUri": "https://api.rebit.org.in/aa/purpose/101.xml",
"text": "Wealth management service",
"Category": {
"type": "string"
}
},
"FIDataRange": {
"from": "2017-07-13T11:33:34.509Z",
"to": "2018-07-13T11:33:34.509Z"
},
"DataLife": {
"unit": "DAY",
"value": 0
},
"Frequency": {
"unit": "HOUR",
"value": 0
},
"DataFilter": [
{
"type": "TRANSACTIONAMOUNT",
"operator": ">=",
"value": 20000
}
]
},
"consentDetailDigitalSignature": "Digital Signature of the ConsentDetail Section.",
"ConsentUse": {
"logUri": "string",
"count": 1,
"lastUseDateTime": "2018-12-06T11:39:57.153Z"
}
}
Sample Response
200 - OK