Skip to main content
POST
Create a note
Give a title, a Markdown body, or both. Without a title, the body’s first line becomes it. topic, tags, and pinned are optional. Tags are kept lowercase, without a leading #, each once. The note is marked source: api. The answer is the note (201), with its id and link, its page in the app. Creating twice makes two notes, so send an Idempotency-Key to make a retry safe. See Idempotency. MCP tool: create_note.

Authorizations

Authorization
string
header
required

API key with the vd_sk_ prefix, as Authorization: Bearer vd_sk_.... Create keys in Settings → API Keys.

Headers

Idempotency-Key
string

Any unique string (such as your order id). Resending the same request with the same key within 24 hours returns the first answer (with Idempotent-Replayed: true) and does nothing twice; the same key with a different request is a 422 idempotency_key_reused.

Required string length: 1 - 255

Body

application/json
title
string
default:""

One line. Left out, the body's first line becomes the title. A title or a body is needed.

Maximum string length: 200
body
string
default:""

The note, in Markdown.

Maximum string length: 20000
topic
string | null

One short topic, e.g. 'Travel'.

Maximum string length: 64
tags
string[]

Up to 10 short tags (each at most 40 characters). They are kept lowercase, without a leading #, each once.

Maximum array length: 10
Maximum string length: 40
pinned
boolean
default:false

Pin it to the top of the list.

Response

The note, saved on your Notes page.

id
string
required
title
string
required

One line, at most 200 characters.

body
string
required

The note itself, in Markdown (tables and checklists work).

source
enum<string>
required

Who wrote it first: user (you, on the Notes page), igris (the assistant), session (a chat session's agent), brain (a workflow's Brain) or api (the API or an AI assistant you connected).

Available options:
user,
igris,
session,
brain,
api

The path of the note's page in the Valendata app, e.g. /notes/{id}.

topic
string | null

One short topic, e.g. 'Travel'; null when none.

tags
string[]

Short lowercase tags.

pinned
boolean
default:false

Pinned notes come first in the list.

created_at
string<date-time> | null
updated_at
string<date-time> | null