Parties
Parties represent all contacts in your legal practice: individual persons, organizations, and courts. Each party can have multiple addresses, contact details, identifiers, bank accounts, and insurance policies.
Endpoints
| Method | Path | Description |
|---|---|---|
GET | /api/v1/parties | List parties |
POST | /api/v1/parties | Create a party |
GET | /api/v1/parties/{id} | Get a party |
PUT | /api/v1/parties/{id} | Update a party |
DELETE | /api/v1/parties/{id} | Delete a party |
GET | /api/v1/parties/{id}/addresses | List addresses |
POST | /api/v1/parties/{id}/addresses | Create an address |
PUT | /api/v1/parties/addresses/{addr_id} | Update an address |
DELETE | /api/v1/parties/addresses/{addr_id} | Delete an address |
GET | /api/v1/parties/{id}/contacts | List contacts (phone, email) |
POST | /api/v1/parties/{id}/contacts | Create a contact |
GET | /api/v1/parties/{id}/identifiers | List identifiers |
POST | /api/v1/parties/{id}/identifiers | Create an identifier |
GET | /api/v1/parties/{id}/bank-accounts | List bank accounts |
POST | /api/v1/parties/{id}/bank-accounts | Create a bank account |
POST | /api/v1/parties/conflict-check | Run a conflict check |
Required scope: parties:read for GET endpoints, parties:write for POST/PUT, parties:delete for DELETE.
The Party Object
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"type": "person",
"display_name": "Dr. Hans Schmidt",
"first_name": "Hans",
"last_name": "Schmidt",
"title": "Dr.",
"date_of_birth": "1980-03-15",
"addresses": [
{
"id": "addr_01",
"type": "work",
"street": "Musterstrasse 42",
"zip": "10115",
"city": "Berlin",
"country": "DE"
}
],
"contacts": [
{
"id": "cnt_01",
"type": "email",
"value": "hans.schmidt@example.com"
}
]
}
Party Types
| Type | Description | Key Fields |
|---|---|---|
person | Individual person | first_name, last_name, title, date_of_birth |
organization | Company or institution | company_name, legal_form, registration_number |
court | Court or tribunal | court_name, court_type, jurisdiction |
Conflict Check
POST /api/v1/parties/conflict-check
Check whether a party name or identifier conflicts with existing parties across your workspace:
{
"query": "Smith",
"check_identifiers": true
}
List Parties
GET /api/v1/parties?type=person&search=Smith&limit=50
Query Parameters
| Parameter | Type | Description |
|---|---|---|
cursor | string | Pagination cursor |
limit | integer | Results per page (1-100, default 50) |
type | string | Filter: person, organization, court |
search | string | Search by name, company, or email |
Next Steps
Was this helpful?