Skip to main content
PATCH
Edit a contact note

Authorizations

Api-Token
string
header
required

Server-to-server authentication. Generate a token in the admin UI at Settings → Developers → API Access. Send the raw token in the Api-Token header — there is no Bearer prefix.

Tokens can be marked read-only at creation time, in which case the API rejects any non-GET request with 403 Forbidden.

Path Parameters

uuid
string
required

ContactNote identifier

Body

application/merge-patch+json

The updated ContactNote resource

A single, attributed note left on a Contact. Replaced Contact::$notes (a one-off text blob, dropped 2026-09-01) with an append-style thread where each entry records its author and timestamps. The migrated legacy blobs have no author, so $author is nullable.

Tenant is mapped explicitly (not delegated to the parent contact) because ContactNote is an API Platform resource: the tenant-isolation Doctrine extensions emit WHERE o.tenant = :tenant, which requires a real column.

text
string
Maximum string length: 512
action
string | null

Response

ContactNote resource updated

A single, attributed note left on a Contact. Replaced Contact::$notes (a one-off text blob, dropped 2026-09-01) with an append-style thread where each entry records its author and timestamps. The migrated legacy blobs have no author, so $author is nullable.

Tenant is mapped explicitly (not delegated to the parent contact) because ContactNote is an API Platform resource: the tenant-isolation Doctrine extensions emit WHERE o.tenant = :tenant, which requires a real column.

text
string
required
Maximum string length: 512
uuid
string | null
action
string | null
dateCreated
string<date-time>
read-only
dateUpdated
string<date-time> | null
read-only
authorName
string | null
read-only
authorId
integer | null
read-only
authorLogo
string | null
read-only