x-cpod-domain: legal
Legal
Contracts, NDAs, cases, IP, compliance, and reviews.
Try in explorer
client.legalLegalContract
A legal contract record (MSA, partnership, vendor, employment).
REST path
/api/v1/legal/contractsOperations
listgetcreateupdatedeleteSDK
// list — returns only your records; add filters/search:
await client.legal.contracts.list()
// create:
await client.legal.contracts.create({
id: "rec_01HXEXAMPLE",
tenant_id: "example tenant_id",
created_at: "2026-01-01T00:00:00Z",
updated_at: "2026-01-01T00:00:00Z",
title: "example title",
app_id: "example app_id",
})| Field | Type | Description |
|---|---|---|
| id* | uuid | Server-assigned ULID with type prefix (e.g. per_…). |
| tenant_id* | string | Tenant scope — auto-stamped from the caller's JWT. |
| app_id | string | App scope. Stamped ONLY when the caller's JWT was minted for a specific Application (integration API keys). Absent for human-user sessions. Filters reads when present. |
| created_at* | date-time | Server stamp. |
| updated_at* | date-time | Server stamp; updated on every patch. |
| created_by | uuid | Person id from the caller's JWT (sub). |
| updated_by | uuid | Person id from the last writer's JWT (sub). |
| source | string | Provenance tag — defaults to 'edm'. |
| source_type | enum | Where the write originated. Defaults to 'api'.frontendbackendserversystemapi |
| is_deleted | boolean | Soft-delete flag. Excluded from default list queries. |
| deleted_at | date-time | Stamped when soft-deleted; null otherwise. |
| deleted_by | uuid | Person id who soft-deleted; null otherwise. |
| schema_version | number | Document schema version. Bumped on incompatible writes. |
| title* | string | Contract title. |
| type | enum | Contract type.servicepartnershipvendoremploymentother |
| status | enum | Contract lifecycle status.draftreviewsignedactiveexpiredterminated |
| parties | json | Parties to the contract. |
| effective_date | date-time | ISO 8601 date the contract becomes effective. |
| expiration_date | date-time | ISO 8601 date the contract expires. |
| value | number | Total contract value. |
| clauses | json | Structured clauses of the contract. |
| vendor_id | uuid | ID of the associated vendor. |
| owner_id | uuid | User ID of the contract owner. |
| name | string | Display name of the contract. |
| signed_date | date-time | ISO 8601 date the contract was signed. |
| expiry_date | date-time | ISO 8601 date the contract expires. |
| notice_period_days | integer | Notice period in days before termination. |
| auto_renewal_window_days | integer | Auto-renewal window in days before expiry. |
| currency | string | Currency code for the contract value. |
| linked_license_ids | json | IDs of licenses linked to this contract. |
| document_ref | string | Storage reference to the contract document. |
| notes | string | Free-form notes about the contract. |
| tags | json | Tags for categorizing the contract. |
NDA
A non-disclosure agreement, mutual or unilateral.
REST path
/api/v1/legal/ndasOperations
listgetcreateupdatedeleteSDK
// list — returns only your records; add filters/search:
await client.legal.ndas.list()
// create:
await client.legal.ndas.create({
id: "rec_01HXEXAMPLE",
tenant_id: "example tenant_id",
created_at: "2026-01-01T00:00:00Z",
updated_at: "2026-01-01T00:00:00Z",
title: "example title",
app_id: "example app_id",
})| Field | Type | Description |
|---|---|---|
| id* | uuid | Server-assigned ULID with type prefix (e.g. per_…). |
| tenant_id* | string | Tenant scope — auto-stamped from the caller's JWT. |
| app_id | string | App scope. Stamped ONLY when the caller's JWT was minted for a specific Application (integration API keys). Absent for human-user sessions. Filters reads when present. |
| created_at* | date-time | Server stamp. |
| updated_at* | date-time | Server stamp; updated on every patch. |
| created_by | uuid | Person id from the caller's JWT (sub). |
| updated_by | uuid | Person id from the last writer's JWT (sub). |
| source | string | Provenance tag — defaults to 'edm'. |
| source_type | enum | Where the write originated. Defaults to 'api'.frontendbackendserversystemapi |
| is_deleted | boolean | Soft-delete flag. Excluded from default list queries. |
| deleted_at | date-time | Stamped when soft-deleted; null otherwise. |
| deleted_by | uuid | Person id who soft-deleted; null otherwise. |
| schema_version | number | Document schema version. Bumped on incompatible writes. |
| title* | string | NDA title. |
| type | enum | NDA type.mutualunilateral |
| status | enum | NDA lifecycle status.draftsentsignedexpired |
| parties | json | Parties to the NDA. |
| effective_date | date-time | ISO 8601 date the NDA becomes effective. |
| expiration_date | date-time | ISO 8601 date the NDA expires. |
| scope | string | Scope of the confidential information covered. |
| vendor_id | uuid | ID of the associated vendor. |
| owner_id | uuid | User ID of the NDA owner. |
| name | string | Display name of the NDA. |
| signed_date | date-time | ISO 8601 date the NDA was signed. |
| expiry_date | date-time | ISO 8601 date the NDA expires. |
| notice_period_days | integer | Notice period in days before termination. |
| auto_renewal_window_days | integer | Auto-renewal window in days before expiry. |
| value | number | Monetary value associated with the NDA. |
| currency | string | Currency code for the value. |
| linked_license_ids | json | IDs of licenses linked to this NDA. |
| document_ref | string | Storage reference to the NDA document. |
| notes | string | Free-form notes about the NDA. |
| tags | json | Tags for categorizing the NDA. |
Case
A legal case (litigation, regulatory, contract, IP).
REST path
/api/v1/legal/casesOperations
listgetcreateupdatedeleteSDK
// list — returns only your records; add filters/search:
await client.legal.cases.list()
// create:
await client.legal.cases.create({
id: "rec_01HXEXAMPLE",
tenant_id: "example tenant_id",
created_at: "2026-01-01T00:00:00Z",
updated_at: "2026-01-01T00:00:00Z",
title: "example title",
app_id: "example app_id",
})| Field | Type | Description |
|---|---|---|
| id* | uuid | Server-assigned ULID with type prefix (e.g. per_…). |
| tenant_id* | string | Tenant scope — auto-stamped from the caller's JWT. |
| app_id | string | App scope. Stamped ONLY when the caller's JWT was minted for a specific Application (integration API keys). Absent for human-user sessions. Filters reads when present. |
| created_at* | date-time | Server stamp. |
| updated_at* | date-time | Server stamp; updated on every patch. |
| created_by | uuid | Person id from the caller's JWT (sub). |
| updated_by | uuid | Person id from the last writer's JWT (sub). |
| source | string | Provenance tag — defaults to 'edm'. |
| source_type | enum | Where the write originated. Defaults to 'api'.frontendbackendserversystemapi |
| is_deleted | boolean | Soft-delete flag. Excluded from default list queries. |
| deleted_at | date-time | Stamped when soft-deleted; null otherwise. |
| deleted_by | uuid | Person id who soft-deleted; null otherwise. |
| schema_version | number | Document schema version. Bumped on incompatible writes. |
| title* | string | Case title. |
| type | enum | Case type.litigationregulatorycontractipother |
| status | enum | Case lifecycle status.openpendingclosedescalated |
| assigned_to | string | User ID of the assignee. |
| notes | string | Free-form case notes. |
| priority | enum | Case priority.lowmediumhighcritical |
| related_entity_id | string | ID of a related entity. |
| related_entity_type | string | Type of the related entity. |
IP
An intellectual property asset (patent, trademark, copyright).
REST path
/api/v1/legal/ipOperations
listgetcreateupdatedeleteSDK
// list — returns only your records; add filters/search:
await client.legal.ip.list()
// create:
await client.legal.ip.create({
id: "rec_01HXEXAMPLE",
tenant_id: "example tenant_id",
created_at: "2026-01-01T00:00:00Z",
updated_at: "2026-01-01T00:00:00Z",
title: "example title",
app_id: "example app_id",
})| Field | Type | Description |
|---|---|---|
| id* | uuid | Server-assigned ULID with type prefix (e.g. per_…). |
| tenant_id* | string | Tenant scope — auto-stamped from the caller's JWT. |
| app_id | string | App scope. Stamped ONLY when the caller's JWT was minted for a specific Application (integration API keys). Absent for human-user sessions. Filters reads when present. |
| created_at* | date-time | Server stamp. |
| updated_at* | date-time | Server stamp; updated on every patch. |
| created_by | uuid | Person id from the caller's JWT (sub). |
| updated_by | uuid | Person id from the last writer's JWT (sub). |
| source | string | Provenance tag — defaults to 'edm'. |
| source_type | enum | Where the write originated. Defaults to 'api'.frontendbackendserversystemapi |
| is_deleted | boolean | Soft-delete flag. Excluded from default list queries. |
| deleted_at | date-time | Stamped when soft-deleted; null otherwise. |
| deleted_by | uuid | Person id who soft-deleted; null otherwise. |
| schema_version | number | Document schema version. Bumped on incompatible writes. |
| title* | string | IP asset title. |
| type | enum | IP type.patenttrademarkcopyrighttrade_secretother |
| status | enum | IP lifecycle status.pendingregisteredexpiredabandoned |
| registration_number | string | Registration or application number. |
| filed_at | date-time | ISO 8601 date the IP was filed. |
| granted_at | date-time | ISO 8601 date the IP was granted. |
| jurisdiction | string | Jurisdiction of registration. |
| owner_id | string | User ID of the IP owner. |
Compliance
A legal compliance assessment against a framework.
REST path
/api/v1/legal/complianceOperations
listgetcreateupdatedeleteSDK
// list — returns only your records; add filters/search:
await client.legal.compliance.list()
// create:
await client.legal.compliance.create({
id: "rec_01HXEXAMPLE",
tenant_id: "example tenant_id",
created_at: "2026-01-01T00:00:00Z",
updated_at: "2026-01-01T00:00:00Z",
title: "example title",
app_id: "example app_id",
})| Field | Type | Description |
|---|---|---|
| id* | uuid | Server-assigned ULID with type prefix (e.g. per_…). |
| tenant_id* | string | Tenant scope — auto-stamped from the caller's JWT. |
| app_id | string | App scope. Stamped ONLY when the caller's JWT was minted for a specific Application (integration API keys). Absent for human-user sessions. Filters reads when present. |
| created_at* | date-time | Server stamp. |
| updated_at* | date-time | Server stamp; updated on every patch. |
| created_by | uuid | Person id from the caller's JWT (sub). |
| updated_by | uuid | Person id from the last writer's JWT (sub). |
| source | string | Provenance tag — defaults to 'edm'. |
| source_type | enum | Where the write originated. Defaults to 'api'.frontendbackendserversystemapi |
| is_deleted | boolean | Soft-delete flag. Excluded from default list queries. |
| deleted_at | date-time | Stamped when soft-deleted; null otherwise. |
| deleted_by | uuid | Person id who soft-deleted; null otherwise. |
| schema_version | number | Document schema version. Bumped on incompatible writes. |
| title* | string | Compliance assessment title. |
| framework | enum | Compliance framework.gdprhipaasoxpci_dssiso_27001fedrampother |
| status | enum | Compliance status.compliantnon_compliantin_progressnot_assessed |
| assessed_at | date-time | ISO 8601 date the assessment was performed. |
| assessor_id | string | User ID of the assessor. |
| findings | string | Assessment findings. |
| remediation_plan | string | Plan to remediate findings. |
| next_review_date | date-time | ISO 8601 date of the next review. |
| control_id | string | Identifier of the compliance control (e.g. CC6.1). |
| description | string | Description of the control. |
| category | string | Control category (e.g. Access Control). |
| owner | string | User ID of the control owner. |
| evidence | json | Collected evidence supporting the control. |
| last_assessed_at | date-time | ISO 8601 date the control was last assessed. |
| next_review_at | date-time | ISO 8601 date of the next control review. |
| linked_asset_ids | json | IDs of assets linked to this control. |
Review
A legal review of a contract, NDA, policy, or compliance item.
REST path
/api/v1/legal/reviewsOperations
listgetcreateupdatedeleteSDK
// list — returns only your records; add filters/search:
await client.legal.reviews.list()
// create:
await client.legal.reviews.create({
id: "rec_01HXEXAMPLE",
tenant_id: "example tenant_id",
created_at: "2026-01-01T00:00:00Z",
updated_at: "2026-01-01T00:00:00Z",
type: "contract",
target_id: "example target_id",
})| Field | Type | Description |
|---|---|---|
| id* | uuid | Server-assigned ULID with type prefix (e.g. per_…). |
| tenant_id* | string | Tenant scope — auto-stamped from the caller's JWT. |
| app_id | string | App scope. Stamped ONLY when the caller's JWT was minted for a specific Application (integration API keys). Absent for human-user sessions. Filters reads when present. |
| created_at* | date-time | Server stamp. |
| updated_at* | date-time | Server stamp; updated on every patch. |
| created_by | uuid | Person id from the caller's JWT (sub). |
| updated_by | uuid | Person id from the last writer's JWT (sub). |
| source | string | Provenance tag — defaults to 'edm'. |
| source_type | enum | Where the write originated. Defaults to 'api'.frontendbackendserversystemapi |
| is_deleted | boolean | Soft-delete flag. Excluded from default list queries. |
| deleted_at | date-time | Stamped when soft-deleted; null otherwise. |
| deleted_by | uuid | Person id who soft-deleted; null otherwise. |
| schema_version | number | Document schema version. Bumped on incompatible writes. |
| type* | enum | Type of item under review.contractndapolicycomplianceother |
| target_id* | string | ID of the item being reviewed. |
| reviewer_id* | string | User ID of the reviewer. |
| status | enum | Review status.pendingapprovedrejectedchanges_requested |
| comments | string | Reviewer comments. |
| reviewed_at | date-time | ISO 8601 date the review was completed. |
| risk_level | enum | Assessed risk level.lowmediumhigh |