Skip to main content

Data Flow

Data flow is initiated by the DC to pull the data from the DP. The flow is initiated post the Data Principal has shared the consent artifact with the DC. DC can fetch the data till the consent is valid and meets the conditions defined by the consent artifact.

Sequence Diagram

dataFlow

Details of the data flow-

  1. DC sends a notification for DP to prepare data. This request will encapsulate the public key in JWK format which needs to be used by the DP for sharing the encrypted data fetch URL and data access token.
  2. DataReadyNotification is triggered by the DP to notify the DC that it can now fetch the data from the shared url. As a part of the notification are the encrypted Data Access Token which will be required by the DC to fetch the data.
  3. DC verifies the token and sends out the acknowledgement notification.
  4. DC uses the provided endpoint and the access token to fetch the data from DP. Both the parties exchange data over mTLS connection.
  5. DC sends out the DataRxNotifications to inform the receiving of the data.
  6. DP sends out the DataTxNotifications to inform the sending of the data.

Endpoints

/notification/data

The endpoint is used by DC and DP to send following notifications

  • PrepareDataNotification - notification triggered by the DC to DP on receiving of consent artifact. This commands the DP to prepare the data which will be fetched.
  • DataReadyNotification - DP notifies the DC about the endpoint from which it can fetch the requested data.
  • DataTxNotification - Notifications triggered by the DP for giving updates on the data transfer.
  • DataRxNotification - Notifications by DC to notify on the data received.

/{dynamic-data-fetch-url}

Endpoint generated by the DP from where the requested data can be fetched. This is only known to DC and DP.