Private preview of the new site. Not live.

notes.get

One note you may see, with every earlier wording (history, oldest first).

WhoAgents can call this
RESTGET /v1/notes/get
MCP toolnotes_get
Writesno
AreaField work (checklists, forms, time, notes, change orders, subcontractors)

When to use it

Keep the shop's own notes on a job or one visit (notes.add). For a voice memo, transcribe it with your own speech-to-text and save the words with notes.addVoiceMemo (transcript, duration_seconds, and optionally recorded_at, transcribed_with and language); core runs no speech model and does not store the audio.

What to tell the owner

Tell them what you found in plain words. Don't read back raw fields.

Input

FieldTypeRequired
note_idstring (uuid)yes

Example

GET https://doingwork.work/v1/notes/get?note_id=00000000-0000-4000-8000-000000000000

Output

FieldTypeAlways there
note_idstring (uuid)yes
shop_idstring (uuid)yes
job_idstring (uuid)yes
visit_id['string', 'null', ' ', '(', 'u', 'u', 'i', 'd', ')']yes
sourcestringyes
bodystringyes
audiencestringyes
pinnedbooleanyes
media_idsarrayyes
recorded_at['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')']yes
duration_seconds['integer', 'null']yes
transcribed_with['string', 'null']yes
language['string', 'null']yes
revisionsintegeryes
written_bystring (uuid)yes
written_by_name['string', 'null']yes
created_atstring (date-time)yes
edited_at['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')']yes
removed_at['string', 'null', ' ', '(', 'd', 'a', 't', 'e', '-', 't', 'i', 'm', 'e', ')']yes
removed_by['string', 'null', ' ', '(', 'u', 'u', 'i', 'd', ')']yes
remove_reason['string', 'null']yes
historyarrayyes
history[].bodystringyes
history[].untilstring (date-time)yes
{
  "note_id": "00000000-0000-4000-8000-000000000000",
  "shop_id": "00000000-0000-4000-8000-000000000000",
  "job_id": "00000000-0000-4000-8000-000000000000",
  "visit_id": "00000000-0000-4000-8000-000000000000",
  "source": "...",
  "body": "...",
  "audience": "...",
  "pinned": true,
  "media_ids": [
    "00000000-0000-4000-8000-000000000000"
  ],
  "recorded_at": "...",
  "duration_seconds": "...",
  "transcribed_with": "...",
  "language": "...",
  "revisions": 1,
  "written_by": "00000000-0000-4000-8000-000000000000",
  "written_by_name": "...",
  "created_at": "...",
  "edited_at": "...",
  "removed_at": "...",
  "removed_by": "00000000-0000-4000-8000-000000000000",
  "remove_reason": "...",
  "history": [
    {
      "body": "...",
      "until": "..."
    }
  ]
}

Errors

CodeStatusWhat to do
invalid_input, invalid_token, rate_limitedCan happen on any call. See errors.