Entities

Upsert entity projection

Strict fixed allowlist. Unknown fields are rejected.

put/v1/entities/{id}

Request

  • Base URL: / (relative, and the document was published on a file host, not at the API’s origin)
  • URL: /v1/entities/{id}
  • Auth: HTTP bearer

Path parameters

idstring required

Entity id.

Example:01J9Z8Q5K3R7V2C4M6N8P0T1S3

Stable entity ULID.

Request body

displayNamestring required
expectedVersioninteger
idstring

Optional body copy of the path ULID.

identifiersobject

At most 32 identifier classes. Keys must match ^[A-Za-z][A-Za-z0-9_.-]{0,63}$; values are unique one-way fingerprints.

kindstring required
oneLineSummarystring
resourceRefsstring[]

Example request

{
  "displayName": "Acme",
  "expectedVersion": 1,
  "id": "01J9Z8Q5K3R7V2C4M6N8P0T1S3",
  "kind": "company",
  "oneLineSummary": "Key supplier.",
  "resourceRefs": [
    "conduit:customer:cus_8fA2"
  ]
}

Response

Upserted projection or canonical adoption tombstone.

canonicalEntityIdstring

Canonical id for a durable merge tombstone.

displayNamestring required

Bounded display name.

idstring required

Stable entity ULID.

identifiersobject

At most 32 identifier classes. Keys must match ^[A-Za-z][A-Za-z0-9_.-]{0,63}$; values are unique one-way fingerprints.

kindstring required

Non-customer entity kind.

oneLineSummarystring

Bounded one-line summary.

resourceRefsstring[] required
status'active' | 'merged' | 'archived' required

Lifecycle status.

versioninteger required

Example response

{
  "canonicalEntityId": "01J9Z8Q5K3R7V2C4M6N8P0T1S3",
  "displayName": "Acme",
  "id": "01J9Z8Q5K3R7V2C4M6N8P0T1S3",
  "kind": "company",
  "oneLineSummary": "Key supplier.",
  "resourceRefs": [
    "conduit:customer:cus_8fA2"
  ],
  "status": "active",
  "version": 1
}

Changes

No recorded changes to this operation across all 50 revisions of this API.