Skip to main content
PATCH
Update Activity
Partial edit of an activity’s content and its deal link. Only fields present in the request body are touched: an explicit null clears a column (e.g. unlinking a contact), an omitted field is left untouched entirely. At least one field must be present, or the request fails with 422. System-generated activities are read-only: stage-change/audit rows (any type outside note/call/meeting/email/task) and provider-synced rows (any source outside manual/import — e.g. calendar, gmail, outlook, slack, teams from a connected Pipedream integration) can’t be edited, and this endpoint returns 403. A null source is treated as user-created. deal_id is handled specially: a change routes through the same validated RPC as Link an activity to a deal (so the account-match check, account backfill, and deals.last_activity_at bump all still apply), not a raw column write. If the activity is already linked to a different deal, it’s unlinked first and then relinked to the new one. Every other field (type, summarysubject, body, contact_id) is a direct PostgREST column patch.
The response is just {"id": "<activity_id>"}not the updated row. Re-GET the activity if you need the fresh state back.

Auth

Requires a CRM manage scope and an active organization on the token. Any *:manage scope qualifies — in practice contacts:manage, deals:manage, companies:manage, or activities:manage.

Response

Errors

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

activity_id
string
required

The activity's id to update.

Body

application/json

Partial edit of an activity's content and associations.

Only fields present in the request are patched — an explicit null clears the column (e.g. unlinking a deal/contact), while an omitted field is left untouched.

type
string | null

New activity type; omit to leave unchanged.

summary
string | null

New subject line; omit to leave unchanged, maps to the subject column.

body
string | null

New body text; omit to leave unchanged.

contact_id
string | null

New contact link, or null to clear it; omit to leave unchanged.

deal_id
string | null

New deal link, or null to unlink; omit to leave unchanged, routed through the link-deal RPC.

Response

Successful Response

The response is of type Response Update Activity Activities Activity Id Patch · object.