Add a note
const url = 'https://app.nurseshark.org/api/projects/example/notes';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"body":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://app.nurseshark.org/api/projects/example/notes \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "body": "example" }'Adds a dated note to a project’s log. Notes are plain text: Markdown and HTML are shown as written. A project keeps at most 25 notes, and adding one fails with 422 once it has that many, until old ones are deleted on the website.
Same as the add_note MCP tool.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Name, slug or UUID of the project.
Request Bodyrequired
Section titled “Request Bodyrequired”object
Example generated
{ "body": "example"}Responses
Section titled “Responses”Created
object
The project’s slug.
object
Example generated
{ "project": "example", "note": { "body": "example", "created_at": "2026-04-15T12:00:00Z" }}A required parameter is missing.
object
What went wrong and what to change.
For validation failures, the messages for each field.
object
Example generated
{ "error": "example", "errors": { "additionalProperty": [ "example" ] }}The token is missing, invalid or expired.
object
What went wrong and what to change.
For validation failures, the messages for each field.
object
Example generated
{ "error": "example", "errors": { "additionalProperty": [ "example" ] }}No project with that name, slug or UUID belongs to this account.
object
What went wrong and what to change.
For validation failures, the messages for each field.
object
Example generated
{ "error": "example", "errors": { "additionalProperty": [ "example" ] }}The request was understood but can’t be done, for example a value over its limit or a name already in use. error says what to change.
object
What went wrong and what to change.
For validation failures, the messages for each field.
object
Example generated
{ "error": "example", "errors": { "additionalProperty": [ "example" ] }}Over the rate limit. Try again in a minute.
object
What went wrong and what to change.
For validation failures, the messages for each field.
object
Example generated
{ "error": "example", "errors": { "additionalProperty": [ "example" ] }}