Create Entitled Party / Service Consumer

circle-info

This page must be considered part of the iSHARE Framework

This page is considered normative and is therefore compliant with RFC 2119.

This page contains the description of the /ep_creation endpoint, which can be used to programatically create an Entitled Party or Service Consumer without certificate.

circle-info

In a future release this endpoint will be converted into CRUD operations using HTTP methods on the /parties endpoint.

Create Entitled Party

post
/[v2.2]/ep_creation

Used to programatically create an Entitled Party or Service Consumer, without providing a certificate. Both the request body and the http 200 response body contain a signed JSON Web Token. Please refer to the models 'jwt_header', 'jwt_payload_ep_creation_request_token' and 'jwt_payload_ep_creation_response_token' which indicate what the decoded request and response look like.

Authorizations
AuthorizationstringRequired

OAuth 2.0 authorization based on bearer token. MUST contain “Bearer “ + access token value. Must be provided if restricted endpoints are needed.

Body
ep_creation_tokenstring · application/jwtRequired
Responses
chevron-right
200Success
application/json
post
/[v2.2]/ep_creation
200Success

Request model

The request body contains an iSHARE compliant JWT. In addition to the iSHARE JWT claims, it also contains the following parameters:

  • parties_info Object. Root level. Contains results count and information about the parties.

    • id String. Contained in party_info. (Conditionally Required) iSHARE Identifier of the party derived from original party identifiers. id is conditionally required. when spor-signed-request contains JWT of id_token with organisationIdentifier then it will be picked up from there. In all other types of values in spor, id as iSHARE did must be provided.

    • alsoKnownAs Array of Strings. Contained in party_info. Identifiers of the party.

    • party_name String. Contained in party_info. (Required)

    • capability_url

      String. Contained in party_info.

      Capabilities endpoint of the party.

    • registrar_id

      String. Contained in party_info. (Required)

      Identifier of the party who registered the participant identified by the id attribute above.

    • adherence Object. Contained in party_info. (Required) Object which contains status and validity timestamps of the party.

      • status String. Contained in adherence. (Required) Status of the party. Available values are Active, Pending, NotActive and Revoked.

      • start_date Timestamp (ISO 8601). Contained in adherence. (Required) UTC timestamp which states since when adherence status has established.

      • end_date Timestamp (ISO 8601). Contained in adherence. (Required) UTC timestamp which states till when adherence status has established.

    • additional_info

      Object. Contained in party_info.

      Object which contains additional general contact information of the party.

      • description

        String. Contained in additional_info.

        A brief description of the party.

      • logo

        String. Contained in additional_info.

        URL pointing to the endpoint where company logo can be found.

      • website

        String. Contained in additional_info.

        URL pointing to the endpoint where company logo can be found.

      • company_phone

        String. Contained in additional_info.

        General company phone number of the party.

      • company_email

        String. Contained in additional_info.

        General company email id of the party.

      • publicly_publishable

        Boolean. Contained in additional_info.

        Consent to publicly publish the information contained in this object.

      • countries_operation

        Array of Objects. Contained in additional_info. An array of ISO names of the countries where the party operates.

      • sector_industry

        Array of Objects. Contained in additional_info. An array of GICS based sectors/industry that party serves in.

      • tags

        String. Contained in additional_info. A free text field containing keywords relevant for party.

    • agreements Array of Objects. Contained in data.Object which contains details about contracts including data space contracts that party has agreed and signed to.

      • type

        String. Contained in the object of agreements.

        Type of agreement. Refers to the official type of agreement. For iSHARE following types are available Terms of Use, Accession Agreement, Certified Party Agreement, Data Space Agreement (former name Satellite Agreement will be deprecated). Additionally, each data space can define their own type and it can be listed here when appropriate data space is chosen.

      • title

        String. Contained in the object of agreements.

        The name of the agreement or agreement file.

      • status

        String. Contained in the object of agreements.

        Status of the agreement. Available values are Draft, Signed, Accepted, Obsolete.

      • sign_date

        Timestamp (ISO 8601). Contained in the object of agreements.

        Date of signature of the agreement.

      • expiry_date

        Timestamp (ISO 8601). Contained in the object of agreements.

        Expiry date of the agreement. For non expiring agreements the end date is far in future.

      • hash_file

        String. Contained in the object of agreements.

        The calculated hash of the agreement file that has been uploaded. Note agreements are not stored in ledger, but only their hash.

      • framework

        String. Contained in the object of agreements.

        The trust framework to which this agreement complies to. Currently, only iSHARE is available.

      • dataspace_id

        String. Contained in the object of agreements.

        The ID of the data space. If specified, party is onboarded in accordance to this data space’s terms and conditions.

      • dataspace_title

        String. Contained in the object of agreements.

        The name of the selected dataspace.

      • complaiancy_verified

        String. Contained in the object of agreements.

        Legal compliance to this agreement has been verified in accordance with the process set in trust framework as we as data space governance. Possible values are Yes, No, Not Applicable.

    • spor

      Array of Objects. Contained in data.

      The signed proof received from recognised issuer (currently eID identity providers) of information about the organisation and the authorised representative of that organisation being authenticated with “High” level of assurance.

      • signed_request

        String. Contained in the object of spor.

        Verifiable credentials of the participant signed by a trusted authority vouching for its authenticity.

        • Value MUST be a JWT or a base64 string.

        • If JWT, it MUST be an “id_token” as defined in Open ID Connect specifications, with an additional “organisationIdentifier” attribute contained within, being the identifier of the organisation the authenticated user is representing. OrganizationIdentifier (issued by a Trust Service Provider (TSP)), SHOULD be in the format of this field described in ETSI EN 319 412-1 V1.5.1, paragraph 5.1.4arrow-up-right.

        • If the base64 encoded value, it MUST be a proof demonstrating that the authenticated user is validated by the Identity Provider and that the user is agreeing to sign up to become a participant. This can have similar information to id_token or verifiable credential above, but in a different format.

    • roles

      Array of Objects. Contained in data.

      Object which contains details about the iSHARE roles of the party. The details include the level of assurance as well as compliance status for each role.

      • role

        String. Contained in the object of roles.

        Role of the party that is created. Must be either EntitledParty or ServiceConsumer.

      • start_date

        Timestamp (ISO 8601). Contained in the object of roles.

        UTC timestamp which states since when certification is valid.

      • end_date

        Timestamp (ISO 8601). Contained in the object of roles.

        UTC timestamp which states till when certification is valid.

      • loa

        Integer. Contained in the object of roles.

        Participant’s level of assurance. Available values are 1 (low), 2 (substantial) and 3 (high). The value of loa is determined using assessment framework (link to the page about assessment framework)

      • complaiancy_verified

        Boolean. Contained in the object of roles.

        Compliance requirements of this role has been met by party.

      • legal_adherence

        Boolean. Contained in the object of roles.

        Legal requirements of this role has been met by party including signing of appropriate agreements.

    • auth_registries

      Array of Objects. Contained in data.

      Object which contains details about the authorisation registers that the party uses.

      • name

        String. Contained in the object of auth_registries.

        The name of the authorisation registry provider.

      • id

        String. Contained in the object of auth_registries.

        The Id of the authorisation registry provider.

      • url

        String. Contained in the object of auth_registries.

        The URL pointer specific to the party where authorisations can be queried/checked from.

      • dataspace_id

        String. Contained in the object of auth_registries.

        The id of the data space where the party uses this authorisation registry provider.

      • dataspace_name

        String. Contained in the object of auth_registries.

        The name of the data space corresponding to the data space id.

Response model

Response headers

  • Content-Type

    String.

    Defines response body content type. MUST be equal to application/json.

Response body

The response body contains an iSHARE compliant JWT. In addition to the iSHARE JWT claims, it also contains the following parameters:

  • parties_info Object. Root level. Contains results count and information about the parties. The parties_info object is similar to the parties_info object in the request model. Details are omitted here.

  • status String. Root level. Status of the request for creation of entitled party

Example request

Example request body

Example of the parties_info object in the encoded JWT body.

Example response

Example of the parties_info and status object in the encoded JWT body.

Last updated