Table of Contents | ||||
---|---|---|---|---|
|
1. Version Control
Version | Date | Description of Changes |
Bahrain OBF v1.0.0 | 25th Aug 2020 | Initial Release |
2. Overview
Aggregated Polling is about the provision of notification of revocations from ASPSPs to AISPs/ PISPs, upon AISP/ PISP request, enabling AISPs/ PISPs to update their records and contact the users/customers, if required, at the point in time of the request. However, the key difference is that rather than focusing on a specific consent resource’s status (via a GET request on that specific resource), aggregated polling allows an AISP/ PISP to request an aggregated set of events from multiple users/customers during a specific period.
...
This resource description should be read in conjunction with a compatible Aggregated Polling Profile.
3. Endpoints
S. No. | Resource | HTTP Operation | Endpoint | Mandatory | Scope | Grant Type | Message Signing | Idempotency Key | Request Object | Response Object |
2.1 | events | POST | POST /events | Mandatory | accounts payments | Client Credentials | N/A | No | OBEventPolling | OBEventPollingResponse |
3.1 POST /events
The endpoint allows an AISP/ PISP to poll for and acknowledge and receive event notifications.
The POST method allows the AISP/ PISP to transmit their polling parameters and event notification acknowledgments
The ASPSP responds accordingly, sending event notifications as indicated by the AISPs/ PISPs polling parameter
4. Data Model
4.1 Aggregated Polling - Request
The OBEventPolling will be used as the request payload for:
POST /events
4.1.1 UML Diagram
...
4.1.2 Data Dictionary
Name | Occurrence | XPath | Enhanced Definition | Class/ Datatype | Codes | Pattern |
OBEventPolling |
| OBEventPolling |
| OBEventPolling |
|
|
maxEvents | 0..1 | OBEventPolling/maxEvents | Maximum number of events to be returned. A value of zero indicates the ASPSP should not return events even if available | Integer |
|
|
returnImmediately | 0..1 | OBEventPolling/returnImmediately | Indicates whether an ASPSP should return a response immediately or provide a long poll | Boolean |
|
|
ack | 0..n | OBEventPolling/ack | An array of | Array:String |
|
|
setErrs | 0..1 | OBEventPolling/setErrs | An object that encapsulates all negative acknowledgements transmitted by the AISP/ PISP | OBEventPolling/setErrs |
|
|
<jti> | 0..n | OBEventPolling/setErrs/<jti> | A event notification error object entitled using the jti of the event notification | OBEventPolling/setErrs/<jti> |
|
|
err | 1..1 | OBEventPolling/setErrs/<jti>/err | A value from the IANA "Security Event Token Delivery Error Codes" registry that identifies the error as defined here | String |
|
|
description | 1..1 | OBEventPolling/setErrs/<jti>/description | A human-readable string that provides additional diagnostic information | String |
|
|
4.2 Aggregated Polling - Response
The OBEventPollingResponse will be used as the response payload for:
POST /events
4.2.1 UML Diagram
...
4.2.2 Data Dictionary
Name | Occurrence | XPath | Enhanced Definition | Class/ Datatype | Codes | Pattern |
OBEventPollingResponse | 1..1 | OBEventPollingResponse |
| OBEventPollingResponse |
|
|
moreAvailable | 1..1 | OBEventPollingResponse/moreAvailable | A JSON boolean value that indicates if more unacknowledged event notifications are available to be returned | Boolean |
|
|
sets | 1..1 | OBEventPollingResponse/sets | A JSON object that contains zero or more nested JSON attributes. If there are no outstanding event notifications to be transmitted, the JSON object SHALL be empty | OBEventPollingResponse/sets |
|
|
<jti> | 0..n | OBEventPollingResponse/sets/<jti> | An object named with the jti of the event notification to be delivered. The value is the event notification, expressed as a string. The payload of the event should be defined in the OBEventNotification format | OBEventPollingResponse/sets/<jti> |
|
|
5. Usage Example
Note for the sake of readability the SETs shown in examples are shorted.
5.1 Poll Only
5.1.1 POST Events Request
|
|
5.1.2 POST Event Response
|
|
5.2 Acknowledge Only
5.2.1 POST Events Request
|
5.2.2 POST Event Response
|
|
5.3 POST and Acknowledge with Errors
5.3.1 POST Events Request
|
|
5.3.2 POST Events Response
|
...