# Parties \[POST]

The `POST` request to the `/parties` endpoint can be used to create a new party in the Participant Registry.

{% hint style="info" %}
The `POST` request to the `/parties` is an **OPTIONAL** endpoint. For more information on **OPTIONAL** specifications, see [functional requirements per role.](https://framework.ishare.eu/detailed-descriptions/functional/functional-requirements-per-role)
{% endhint %}

### Request model

The request must be passed as JWT. The JSON model in the JWT is as follows.

* `id`\
  **String**. Contained in `party_info`. <mark style="color:red;">(Required)</mark>\
  iSHARE Identifier of the party derived from original party identifiers.
* `name`\
  **String**. Contained in `party_info`. <mark style="color:red;">(Required)</mark>\
  Name of the party.
* `alsoKnownAs`\
  **Array of Strings**. Contained in `party_info`\
  Array of registered party ids of the party with which the party is also identified. Optional, because a party could be identified with only its iSHARE-ID (in the 'id' property).
* `claims`\
  **Array of objects**. <mark style="color:red;">(Required)</mark>\
  Array of claims for the party. Refer to [Claim models](/reference/claim-models.md) for an overview of available claims. In the `POST` request the `id` and `registrarId` fields may be omitted, as they will be provided by the Participant Registry. To create a party as part of the iSHARE Framework, at minimum the following claims MUST be provided:
* x509Certificate or idpAssertion
* frameworkCompliance
* frameworkAgreement
* frameworkRole

For all roles except for Service Consumer and Entitled Party an x509Certificate claim is required. Service Consumer and Entitled Party MUST either provide a x509Certificate claim or idpAssertion claim if authenticating via Identity Provider.

### Example request

```json
POST /parties HTTP/1.1
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json

{
  "id": "did:ishare:EU.NL.NTRNL-12345678",
  "name": "Example Corporation",
  "alsoKnownAs": [
    "did:ishare:EU.NL.NTRNL-12345678", 
    "did:elsi:LEIXG-724500AZSGBRY55MNS59", 
    "did:web:example.com", 
    "CoC:123456789"
  ],
  "claims": [
    {
      "status": "active",
      "startDate": "2025-01-01T00:00:00.000Z",
      "endDate": "2026-12-31T00:00:00.000Z",
      "type": "frameworkCompliance",
      "frameworkId": "iSHARE",
      "additionalInfo": {
        "description": "Example description",
        "publiclyPublishable": true,
        "website": "https://www.example.com"
      }
    },
    {
      "status": "active",
      "startDate": "2025-01-01T00:00:00.000Z",
      "endDate": "2026-12-31T00:00:00.000Z",
      "type": "frameworkRole",
      "roleId": "ServiceConsumer",
      "title": "Service Consumer",
      "loa": "not-applicable",
      "compliancyVerified": "yes",
      "legalAdherence": "yes",
      "frameworkId": "iSHARE"
    },
    {
      "status": "active",
      "startDate": "2025-01-01T00:00:00.000Z",
      "endDate": "2026-12-31T00:00:00.000Z",
      "type": "frameworkAgreement",
      "agreementType": "AccessionAgreement",
      "agreementId": "fd06e213-7db2-469b-b9ce-de00e48e1817",
      "title": "Accession Agreement",
      "verificationHash": "aef5bb5e3ab49150a53b89628ab8593315b6686f3f96497277feb9d658527acb",
      "frameworkId": "iSHARE"
    },
    {
      "status": "active",
      "startDate": "2025-01-01T00:00:00.000Z",
      "endDate": "2026-12-31T00:00:00.000Z",
      "type": "frameworkAgreement",
      "agreementType": "TermsOfUse",
      "agreementId": "3cde6ff3-243d-48c0-8003-31d3fea3c1f1",
      "title": "Terms of Use",
      "verificationHash": "f727a459b5ca5a32e5aff71c03fdaa697cd46a45eb04eecaaae5931eb9a5c00e",
      "frameworkId": "iSHARE"
    },
    {
      "status": "active",
      "startDate": "2025-01-01T00:00:00.000Z",
      "endDate": "2026-12-31T00:00:00.000Z",
      "type": "x509Certificate",
      "subjectName": "C=NL,O=Test Service Consumer,CN=Test Service Consumer,2.5.4.97=NTRNL-10000001",
      "certificateType": "eSeal",
      "x5c": "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",
      "x5t#s256": "4670551451113b19425f8d63c3d6ce444b58de60831101748e9fb97b3e8766f8"
    }
  ]
}
```

### 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](/participant-registry-role/single-party.md#response-model).

### Example response

Please also refer to the [example response](/participant-registry-role/single-party.md#example-response) under the GET request definition.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://dev.ishare.eu/participant-registry-role/parties-post.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
