Contract
/api/v1/contracts/contractsA master contract with a Vendor.
listgetcreateupdateterminateSchema
| Field | Type | Notes |
|---|---|---|
| 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 | frontend | backend | server | system | apiWhere the write originated. Defaults to 'api'. |
| 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. |
| vendor_id | uuid | UUID of the Vendor that is party to this contract. |
| owner_id | uuid | UUID of the Person (employee) who owns and is accountable for this contract internally. |
| type | string | Contract type classification. 'msa' = Master Service Agreement; 'sow' = Statement of Work; 'ela' = Enterprise License Agreement. |
| name | string | Human-readable name for this contract (e.g. 'Acme SaaS Platform — 2025 Renewal'). |
| status | string | Lifecycle status of the contract. 'executed' = signed but not yet in the effective date window; 'active' = currently in force. |
| signed_date | date-time | ISO 8601 date when the contract was signed by all parties. Null if not yet executed. |
| effective_date | date-time | ISO 8601 date when the contract's obligations begin. May differ from signedDate. |
| expiry_date | date-time | ISO 8601 date when the contract expires or must be renewed. Null for evergreen contracts. |
| notice_period_days | number | Number of days notice required to terminate the contract before its expiry. |
| auto_renewal_window_days | number | If set, the contract auto-renews unless cancelled at least this many days before the expiryDate (e.g. 60 means cancel 60 days before expiry or it renews automat |
| value | number | Total contract value (TCV) in the specified currency. Null if the value is time-and-materials or otherwise variable. |
| currency | string | ISO 4217 3-character currency code for the contract value (e.g. 'USD', 'EUR', 'GBP'). Null if value is null. |
| linked_license_ids | json | UUIDs of SoftwareLicense records that are governed by or created as a result of this contract. |
| document_ref | string | MinIO object path to the stored contract document (e.g. 'contracts/2024/acme-saas-renewal.pdf'). Access controlled by the cPod storage layer. |
| notes | string | Internal notes about the contract visible only to authorized users. |
| tags | json | Flat string tags for filtering and grouping. |
API
client.contracts.contracts.*Loading manifest…