Skip to navigation

Update Note

Edit a note’s text, pin or unpin it, or both. Send at least one of body and isPinned. Works for notes on projects, opportunities, accounts, work orders and files.

  • Edit the text with body. The note being edited must be authored by the connected user.
  • Pin or unpin with isPinned: true pins the note and false unpins it. Pinning an already-pinned note is a no-op that returns 200. Pinning and unpinning only need access to view the note, not authorship.
  • Sending both makes both changes in the same request.

Note lists stay newest-first, so pinning does not reorder them. To show pinned notes on top, sort the list by isPinned and then pinnedAt on your side. Every note response includes isPinned and pinnedAt.

Note: The following legacy paths will continue to work until users are notified and migrated to the new naming:

  • /projects/{projectId}/comments/{commentId}
  • /requests/{requestId}/comments/{commentId}
  • /clients/{clientId}/comments/{commentId}

Authentication

x-api-keystring
API Key authentication via header

Path parameters

note_idstringRequired

Request

This endpoint expects an object.
bodystringOptional

Updated note text content. Omit to leave the text unchanged.

Mention (@) tokens are supported in the body string using the format [Display Name|~id:USER_ID] (users), [Team Name|~team:TEAM_ID] (teams, notifies all members), or [Name|~agent:slug] (AI agents). The display-name portion is cosmetic; the trailing token drives the mention. A valid mention creates a feed notification for the mentioned recipient(s). The author is excluded from their own mention notifications.

isPinnedbooleanOptional

true pins the note, false unpins it. Pinning an already-pinned note is a no-op. Omit to leave the pin unchanged.

Response

Note updated successfully
idinteger
Note identifier
notestring
Note text content
createdAtstringformat: "date-time"
Creation timestamp
updatedAtstringformat: "date-time"
Last update timestamp
isPinnedboolean
Whether the note is pinned.
pinnedAtstring or nullformat: "date-time"

When the note was pinned. null when the note is not pinned.

authorobjectOptional

Errors

400
Bad Request Error
401
Unauthorized Error
404
Not Found Error