Parties [POST]
The POST request to the /parties can be used to create a new party in the Participant Registry. The Participant Registry is expected to allow this method only for selected parties.
Used to programatically create a participant.
OAuth 2.0 authorization based on bearer token. MUST contain “Bearer “ + access token value. Must be provided if restricted endpoints are needed.
Identifier of the participant. Usually it is an did:ishare id. MUST be provided when spor does not contain a JWT with organisationIdentifier claim in it.
did:ishare:EU.NL.NTRNL-12345678Array of registered party ids of the party.
["did:ishare:EU.NL.NTRNL-12345678","did:elsi:LEIXG-724500AZSGBRY55MNS59","did:web:example.com","CoC:123456789"]Version of the this request/response model corresponding to iSHARE version. MUST be 'v2.2' for current version.
v2.2Name of the party.
Example CorporationCapabilities endpoint of the party.
https://www.example.com/capabilitiesIdentifier of the party who registered the participant, identified by one of the id registered
did:ishare:EU.NL.NTRNL-12345678Request model
The request is passed as plain JSON, so no JWT token is used. The POST method uses the exact same input as the PUT method. The JSON model is as follows.
idString. Contained inparty_info. (Required) iSHARE Identifier of the party derived from original party identifiers.alsoKnownAsArray of Strings. Contained inparty_info. Identifiers of the party.party_nameString. Root level. Contained inparty_info. (Required) Name of the party.registrar_idString. Root level. Contained in
party_info. (Required)Identifier of the party who registered the participant identified by the
idattribute above.adherenceObject. Root level. Contained inparty_info. (Required) Object which contains status and validity timestamps of the party.statusString. Contained inadherence. (Required) Status of the party. Available values are Active, Pending, NotActive and Revoked.start_dateTimestamp (ISO 8601). Contained inadherence. (Required) UTC timestamp which states since when adherence status has established.end_dateTimestamp (ISO 8601). Contained inadherence. (Required) UTC timestamp which states till when adherence status has established.
additional_infoObject. Root level.Contained in
party_info.Object which contains additional general contact information of the party.
descriptionString. Contained in
additional_info.A brief description of the party.
logoString. Contained in
additional_info.URL pointing to the endpoint where company logo can be found.
websiteString. Contained in
additional_info.URL pointing to the endpoint where company logo can be found.
company_phoneString. Contained in
additional_info.General company phone number of the party.
company_emailString. Contained in
additional_info.General company email id of the party.
publicly_publishableBoolean. Contained in
additional_info.Consent to publicly publish the information contained in this object.
countries_operationArray of Objects. Contained in
additional_info.An array of ISO names of the countries where the party operates.
sector_industryArray of Objects. Contained in
additional_info.An array of GICS based sectors/industry that party serves in.
tagsString. Contained in
additional_info.An free text field containing keywords relevant for party.
agreementsArray of Objects. Root level. Contained inparty_info. Object which contains details about contracts including data space contracts that party has agreed and signed to.typeString. Contained in the object of
agreements. (Required)Type of agreement. Refers to the official type of agreement. For iSHARE following types are available Terms of Use, Accession Agreement, Certified Party Agreement, Participant Registry 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.
titleString. Contained in the object of
agreements. (Required)The name of the agreement or agreement file.
statusString. Contained in the object of
agreements. (Required)Status of the agreement. Available values are Draft, Signed, Accepted, Obsolete.
sign_dateTimestamp (ISO 8601). Contained in the object of
agreements. (Required)Date of signature of the agreement.
expiry_dateTimestamp (ISO 8601). Contained in the object of
agreements. (Required)Expiry date of the agreement. For non expiring agreements the end date is far in future.
agreement_fileString. Contained in the object of
agreements.Base64 of the agreement file that proves the party has signed the agreement. Note agreements are not stored in ledger, but only their calculated
SHA-256hash, so this attribute is only for create/update requests.hash_fileString. Contained in the object of
agreements.The calculated hash of the agreement file that has been uploaded. If
hash_fileis provided,agreement_fileMUST not be provided. Eitheragreement_fileorhash_fileMUST be provided.frameworkString. Contained in the object of
agreements. (Required)The trust framework to which this agreement complies to. Currently, only iSHARE is available.
dataspace_idString. 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.
compliancy_verifiedString. Contained in the object of
agreements. (Required)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.
certificatesArray of Objects. Root level. Contained in
party_info.Object which contains the details of the PKI/x509 certificates of the party. Either certificates or SPOR must be present.
subject_nameString. Contained in the object of
certificates.subjectName as encoded in the X.509 certificate which corresponds with the party that is being requested from the Participant Registry.
certificate_typeString. Contained in the object of
certificates.Contains the type of certificate. Since only eIDAS eSEAL certificates are accepted as certificates, the value of this field must always be eSEAL.
enabled_fromTimestamp (ISO 8601). Contained in the object of
certificates.UTC timestamp which states since when certificate is valid.
x5cString. Contained in the object of
certificates.The base64 encoded pem format value of the certificate identified by its subject name and fingerprint.
x5t#s256String. Contained in the object of
certificates.The SHA256 fingerprint of the certificate.
sporArray of Objects. Root level. Contained in
party_info.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_requestString. Contained in the object of
certifications.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, issued to the user, 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.4.
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.
rolesArray of Objects. Root level. Contained in
party_info. (Required)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.
roleString. Contained in the object of
roles. (Required)Role name. Possible roles are ServiceConsumer, ServiceProvider, EntitledParty, AuthorisationRegistry, IdentityProvider, IdentityBroker and IdentityBroker and ParticipantRegistry, iShareSatellite (deprecated, will be removed in future releases, use ParticipantRegistry instead).
start_dateTimestamp (ISO 8601). Contained in the object of
roles. (Required)UTC timestamp which states since when certification is valid.
end_dateTimestamp (ISO 8601). Contained in the object of
roles. (Required)UTC timestamp which states till when certification is valid.
loaInteger. Contained in the object of
roles. (Required)Certificate’s level of assurance. Available values are 1 (low), 2 (substantial) and 3 (high).
compliancy_verifiedBoolean. Contained in the object of
roles. (Required)Compliance requirements of this role has been met by party.
legal_adherenceBoolean. Contained in the object of
roles. (Required)Legal requirements of this role has been met by party including signing of appropriate agreements.
auth_registriesArray of Objects. Root level. Contained in
party_info.Object which contains details about the authorisation registers that the party uses.Please be aware that the current reference implementation of the iSHARE Satellite returns this information in an attribute "authregistery" instead of "auth_registries". This will be updated in a future release.
nameString. Contained in the object of
auth_registries.The name of the authorisation registry provider.
idString. Contained in the object of
auth_registries.The Id of the authorisation registry provider.
urlString. Contained in the object of
auth_registries.The URL pointer specific to the party where authorisations can be queried/checked from.
dataspace_idString. Contained in the object of
auth_registries.The id of the data space where the party uses this authorisation registry provider.
dataspace_nameString. Contained in the object of
auth_registries.The name of the data space where the party uses this authorisation registry provider.
Example request
Response model
The response will be equal to the response of the GET request for retrieving a single party. Please refer to the response model as defined here.
Example response
Please also refer to the example response under the GET request definition.
Last updated