SSI Authority Agent REST API

From DE4A
Jump to navigation Jump to search

The SSI Authority Agent REST API is a high-level component that provides the endpoints for performing operations necessary for DID connection establishment, VC issuing and VP validation. It facilitates the interaction between the HL Aries cloud and edge agent and stores relevant status changes on the DID connection, VC or VP status in its internal database.

The REST API is a Java EE-based implementation (JDK16+), which is to be deployed on the DP/DC side from an appropriate Docker image.

The YAML file with endpoint specifications is available at https://github.com/de4a-wp5/ssi-authority-agent/blob/main/v1.0/authority-agent-api_v1.0.yaml.

First pilot iteration endpoints (REST API v1.0)

For the first pilot iteration, the REST API v1.0 includes the following endpoints grouped according to their role:

  • DID connection management:
/generate-invitation - generates a DID connection invitation for establishing a connection between the DP/DC's HL Aries cloud and the User's edge agent.
/did-conn-status/{userId} - retrieves the current status of the DID connection between the DP/DC's HL Aries cloud and the User's edge agent.
  • VC issuance (DP side):
/send-vc-offer - generates a signed VC from the canonical diploma evidence and sends the offered VC for the User to validate that it includes the correct data.
/check-offer-vc-response/{userId} - retrieves the current status of the User's response to the VC (offer).
/send-vc - sends a signed VC (approved by the User) to the User's edge agent.
  • VP submission (DC side):
/send-vp-request - sends a request to the User's edge agent to submit a Verifiable Presentation in a given format.
/check-request-vp-response/{userId} - retrieves the current status of the User's response to the VP (request).
/validate-vp/{userId} - validates the submitted Verifiable Presentation based on its digital signature, User's eIDAS data, issuer data and schema.
/get-vp/{vpName} - retrieves the contents of the submitted Verifiable Presentation.
  • EBSI integration:
/get-did-ebsi - retrieves the currently valid EBSI-compliant DID registered in the EBSI DID Registry (information necessary for registering the organization to the EBSI Trusted Issuer Registry).
API endpoints usage on the DP/DC side
API endpoint DP DC
/get-did-ebsi [x] [x]
/generate-invitation [x] [x]
/did-conn-status [x] [x]
/send-vc-offer [x]
/check-offer-vc-status [x]
/send-vc [x]
/send-vp-request [x]
/check-request-vp-response [x]
/validate-vp [x]
/get-vp [x]