x-cpod-domain: common
Common
Cross-domain primitives — data sources, tags, relationships, attention signals, and timeline events.
Try in explorer
client.dataSources · client.relationships · client.commonAttentionSignal
An explainable "why now" signal flagging an entity that needs attention.
REST path
/api/v1/common/attention-signalsOperations
listgetcreateupdatedeletedismissresolveSDK
// list — returns only your records; add filters/search:
await client.dataSources.attentionSignals.list()
// create:
await client.dataSources.attentionSignals.create({
id: "rec_01HXEXAMPLE",
tenant_id: "example tenant_id",
created_at: "2026-01-01T00:00:00Z",
updated_at: "2026-01-01T00:00:00Z",
target_id: "example target_id",
target_type: "account",
})| 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. |
| target_id* | string | ID of the entity needing attention (account, project, task, etc.). |
| target_type* | enum | Type of target entity.accountprojecttaskincidentapprovalcontractleaddealcasepolicyriskassetemployeeother |
| domain* | enum | Business domain this signal belongs to.workservicelegalmarketingfinancehrcomplianceoperationssecuritycustomerother |
| signal_type* | enum | Type of attention signal.sla_riskoverdue_approvalstale_ownerrenewal_riskmissing_evidencecontract_duedeadline_approachingblockedescalationanomalyfollow_upreview_dueother |
| severity* | enum | Signal severity level.criticalhighmediumlow |
| reason* | string | Human-readable explanation of why attention is needed. |
| summary | string | Brief summary for list views. |
| due_at | date-time | When this becomes urgent/deadline. |
| stale_at | date-time | When this becomes stale if not addressed. |
| owner_id | string | User who should act on this signal. |
| team_id | string | Team responsible for this signal. |
| source_refs | json | Array of source records that generated this signal. |
| computed_by | string | System or user that computed this signal. |
| status | enum | Signal lifecycle status.activedismissedresolvedexpired |
| dismissed_at | date-time | When signal was dismissed. |
| dismissed_by | string | Who dismissed the signal. |
| resolved_at | date-time | When signal was resolved. |
| resolved_by | string | Who resolved the signal. |
| resolution_notes | string | Notes about how the signal was resolved. |
| metadata | json | Additional context-specific data. |
| tags | json | Free-form tags. |
TimelineEvent
A source-backed business activity ledger event.
REST path
/api/v1/common/timeline-eventsOperations
listgetcreateupdatedeleteSDK
// list — returns only your records; add filters/search:
await client.dataSources.timelineEvents.list()
// create:
await client.dataSources.timelineEvents.create({
id: "rec_01HXEXAMPLE",
tenant_id: "example tenant_id",
created_at: "2026-01-01T00:00:00Z",
updated_at: "2026-01-01T00:00:00Z",
source_id: "example source_id",
source_type: "account",
})| 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. |
| source_id* | string | ID of the source record (account, project, incident, etc.). |
| source_type* | enum | Type of source entity.accountprojecttaskincidentapprovalcontractleaddealcasepolicyriskassetemployeemeetingdocumentother |
| domain* | enum | Business domain this event belongs to.workservicelegalmarketingfinancehrcomplianceoperationssecuritycustomerother |
| event_type* | enum | Type of timeline event.createdupdatedstatus_changedassignedcomment_addedattachment_addedapproval_requestedapprovedrejectedescalatedresolvedclosedreopeneddeadline_setdeadline_missedmilestone_reachedhandoffother |
| title* | string | Human-readable event title. |
| summary | string | Detailed summary of what happened. |
| actor_id | string | User who performed the action (if human-initiated). |
| actor_type | enum | Type of actor.usersystemagentworkflowexternal |
| actor_name | string | Display name of the actor. |
| occurred_at* | date-time | When the event occurred. |
| visibility | enum | Who can see this event.publicinternalprivaterestricted |
| risk_level | enum | Risk level associated with this event.nonelowmediumhighcritical |
| citation_refs | json | Array of source records that prove this event happened. |
| previous_state | json | State before the event (for change events). |
| current_state | json | State after the event (for change events). |
| metadata | json | Additional context-specific data. |
| tags | json | Free-form tags. |
DataSource
A registered data source, often the origin of synced records.
REST path
/api/v1/datasourcesOperations
listgetcreateupdatesyncSDK
// list — returns only your records; add filters/search:
await client.dataSources.datasources.list()
// create:
await client.dataSources.datasources.create({
id: "rec_01HXEXAMPLE",
tenant_id: "example tenant_id",
created_at: "2026-01-01T00:00:00Z",
updated_at: "2026-01-01T00:00:00Z",
app_id: "example app_id",
created_by: "rec_01HXEXAMPLE",
})| 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. |
| name | string | Human-readable display name for this integration connection. |
| type | string | Integration type identifying the external system being connected. Drives the connector module and the config schema used for this DataSource. |
| status | string | Current operational status of this integration. 'error' indicates the last sync failed and manual intervention may be required. 'paused' means syncs have been t |
| last_sync_at | date-time | ISO 8601 timestamp of the most recently completed sync run. Null if this DataSource has never successfully synced. |
| next_sync_at | date-time | ISO 8601 timestamp of the next scheduled sync run. Null if no sync is scheduled (e.g. paused or disconnected). |
| synced_entities | json | Count of entities currently synced from this DataSource, broken down by entity type. Updated after each successful sync. |
| config | json | Integration-specific configuration for this DataSource. The shape varies by type. Sensitive fields (API keys, client secrets) are stored encrypted and never ret |
Tag
A free-form tag attachable to any entity.
REST path
/api/v1/common/tagsOperations
listgetcreateupdatedeleteSDK
// list — returns only your records; add filters/search:
await client.dataSources.tags.list()
// create:
await client.dataSources.tags.create({
id: "rec_01HXEXAMPLE",
tenant_id: "example tenant_id",
created_at: "2026-01-01T00:00:00Z",
updated_at: "2026-01-01T00:00:00Z",
app_id: "example app_id",
created_by: "rec_01HXEXAMPLE",
})| 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. |
| name | string | Canonical machine-friendly name of the tag. Must be lowercase kebab-case (e.g. 'soc2-in-scope', 'pii-data', 'critical-asset'). This is the value stored on tagge |
| display_name | string | Human-readable label displayed in the UI for this tag. |
| color | string | Hex color code for rendering this tag as a colored chip in the UI. Must be a 6-digit hex color prefixed with '#'. Null for tags with no assigned color. |
| description | string | Optional description explaining the purpose and intended usage of this tag. |
| created_by_id | uuid | UUID of the Person who created this tag. |
Relationship
A generic edge between two entities when no FK fits.
REST path
/api/v1/relationshipsOperations
listgetcreatedeleteSDK
// list — returns only your records; add filters/search:
await client.dataSources.relationships.list()
// create:
await client.dataSources.relationships.create({
id: "rec_01HXEXAMPLE",
tenant_id: "example tenant_id",
created_at: "2026-01-01T00:00:00Z",
updated_at: "2026-01-01T00:00:00Z",
app_id: "example app_id",
created_by: "rec_01HXEXAMPLE",
})| 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. |
| source_id | uuid | UUID of the source entity (the 'from' end of the directed edge). |
| source_type | string | Entity type name of the source entity — must match an EDM entity type (e.g. Person, TechnologyAsset). |
| target_id | uuid | UUID of the target entity (the 'to' end of the directed edge). |
| target_type | string | Entity type name of the target entity. Must match one of the EDM entity type names. |
| relationship_type | string | Semantic label describing the nature of this relationship. Common values include 'manages', 'owns', 'depends_on', 'runs_on', 'mitigates', 'member_of', 'reports_ |
| discovered_by | string | System that created or discovered the edge — 'manual' for a human, otherwise an integration/discovery engine (e.g. ad_sync, aws_discovery). |
| properties | json | Arbitrary key-value metadata on this edge, specific to the relationship type. For example, a 'depends_on' edge might include {'criticality': 'hard', 'protocol': |
| confidence | number | Confidence score (0.0 to 1.0) indicating how certain the platform is that this relationship is accurate. 1.0 means authoritative (manually created or confirmed) |