Internal Trilium API (0.99.3)

Download OpenAPI specification:

This is the internal API used by the Trilium Notes client application.

Important: This API is primarily intended for internal use by the Trilium client. For external integrations, please use the ETAPI (External Trilium API) instead.

Authentication

Most endpoints require session-based authentication. You can authenticate using:

  • Password login: POST to /api/login with password
  • Token authentication: Generate a token via /api/login/token
  • Sync authentication: Use document secret for sync operations

Rate Limiting

Authentication endpoints are rate-limited to prevent brute force attacks.

CSRF Protection

State-changing operations require CSRF tokens when using session authentication.

Authentication

Login, logout, and session management

Login with password

Request Body schema: application/x-www-form-urlencoded
required
password
required
string <password>
totpToken
string

TOTP token if 2FA is enabled

Responses

Generate API token

Request Body schema: application/json
required
password
required
string <password>
tokenName
string

Optional name for the token

Responses

Request samples

Content type
application/json
{
  • "password": "pa$$word",
  • "tokenName": "string"
}

Response samples

Content type
application/json
{
  • "authToken": "string"
}

Sync login using document secret

Request Body schema: application/json
required
timestamp
required
string <date-time>
hash
required
string

HMAC hash of document secret and timestamp

syncVersion
required
integer

Responses

Request samples

Content type
application/json
{
  • "timestamp": "2019-08-24T14:15:22Z",
  • "hash": "string",
  • "syncVersion": 0
}

Response samples

Content type
application/json
{
  • "instanceId": "string",
  • "maxEntityChangeId": "string"
}

Enter protected session

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
password
required
string <password>

Responses

Request samples

Content type
application/json
{
  • "password": "pa$$word"
}

Exit protected session

Authorizations:
sessionAuthtokenAuth

Responses

Keep protected session alive

Authorizations:
sessionAuthtokenAuth

Responses

Get OAuth status

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "enabled": true,
  • "configured": true,
  • "providers": [
    ]
}

Validate OAuth configuration

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "valid": true,
  • "errors": [
    ]
}

Notes

Core note operations

Get note metadata

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Delete note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

query Parameters
taskId
required
string
eraseNotes
boolean
Default: false
last
required
boolean

Responses

Get note content

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
No sample

Update note content

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: application/json
required
content
required
string
Array of objects (Attachment)

Responses

Request samples

Content type
application/json
{
  • "content": "string",
  • "attachments": [
    ]
}

Get note timestamps

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Change note title

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: application/json
required
title
required
string

Responses

Request samples

Content type
application/json
{
  • "title": "string"
}

Change note type and MIME

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: application/json
required
type
required
string (NoteType)
Enum: "text" "code" "render" "file" "image" "search" "relationMap" "book" "noteMap" "mermaid" "canvas" "webView" "launcher" "doc" "contentWidget" "mindMap" "geoMap"
mime
required
string

Responses

Request samples

Content type
application/json
{
  • "type": "text",
  • "mime": "string"
}

Protect or unprotect note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

isProtected
required
boolean
query Parameters
subtree
boolean
Default: false

Responses

Undelete note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Create new note

Authorizations:
sessionAuthtokenAuth
path Parameters
parentNoteId
required
string
query Parameters
target
string
Enum: "after" "into"
targetBranchId
string
Request Body schema: application/json
required
title
required
string
content
string
type
required
string (NoteType)
Enum: "text" "code" "render" "file" "image" "search" "relationMap" "book" "noteMap" "mermaid" "canvas" "webView" "launcher" "doc" "contentWidget" "mindMap" "geoMap"
mime
string
isProtected
boolean
isExpanded
boolean
notePosition
integer
prefix
string
parentNoteId
string
templateNoteId
string

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "content": "string",
  • "type": "text",
  • "mime": "string",
  • "isProtected": true,
  • "isExpanded": true,
  • "notePosition": 0,
  • "prefix": "string",
  • "parentNoteId": "string",
  • "templateNoteId": "string"
}

Response samples

Content type
application/json
{
  • "note": {
    },
  • "branch": {
    }
}

Duplicate note subtree

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

parentNoteId
required
string

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Force save revision

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "revisionId": "string",
  • "noteId": "string",
  • "title": "string",
  • "type": "text",
  • "mime": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z"
}

Sort child notes

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: application/json
required
sortBy
string
Enum: "title" "dateCreated" "dateModified"
sortDirection
string
Enum: "asc" "desc"
foldersFirst
boolean
sortNatural
boolean
sortLocale
string

Responses

Request samples

Content type
application/json
{
  • "sortBy": "title",
  • "sortDirection": "asc",
  • "foldersFirst": true,
  • "sortNatural": true,
  • "sortLocale": "string"
}

Convert note to attachment

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "attachmentId": "string",
  • "ownerId": "string",
  • "role": "image",
  • "mime": "string",
  • "title": "string",
  • "blobId": "string",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Upload file to note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: multipart/form-data
required
upload
string <binary>

Responses

Open file note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Download file note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Download file note (alternative path)

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Save note to temp directory

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "filePath": "string"
}

Update note from modified temp file

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: application/json
required
filePath
required
string

Responses

Request samples

Content type
application/json
{
  • "filePath": "string"
}

Clone note to branch

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

parentBranchId
required
string

Responses

Response samples

Content type
application/json
{
  • "branchId": "string",
  • "noteId": "string",
  • "parentNoteId": "string",
  • "notePosition": 0,
  • "prefix": "string",
  • "isExpanded": true
}

Clone note to parent note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

parentNoteId
required
string

Responses

Response samples

Content type
application/json
{
  • "branchId": "string",
  • "noteId": "string",
  • "parentNoteId": "string",
  • "notePosition": 0,
  • "prefix": "string",
  • "isExpanded": true
}

Clone note after branch

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

afterBranchId
required
string

Responses

Response samples

Content type
application/json
{
  • "branchId": "string",
  • "noteId": "string",
  • "parentNoteId": "string",
  • "notePosition": 0,
  • "prefix": "string",
  • "isExpanded": true
}

Toggle note presence in parent

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

parentNoteId
required
string
present
required
boolean

Responses

Convert attachment to note

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Restore revision

Authorizations:
sessionAuthtokenAuth
path Parameters
revisionId
required
string

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Get image from note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

filename
required
string

Responses

Update image note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: multipart/form-data
required
upload
string <binary>

Responses

Execute bulk action

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
action
string
noteIds
Array of strings

Responses

Request samples

Content type
application/json
{
  • "action": "string",
  • "noteIds": [
    ]
}

Get affected notes count

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
action
string
noteIds
Array of strings

Responses

Request samples

Content type
application/json
{
  • "action": "string",
  • "noteIds": [
    ]
}

Response samples

Content type
application/json
{
  • "count": 0
}

Preview note deletion

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
branchIdsToDelete
Array of strings
deleteAllClones
boolean

Responses

Request samples

Content type
application/json
{
  • "branchIdsToDelete": [
    ],
  • "deleteAllClones": true
}

Response samples

Content type
application/json
{
  • "notesToDelete": [
    ]
}

Erase deleted notes

Authorizations:
sessionAuthtokenAuth

Responses

Tree

Note tree structure and branches

Create new note

Authorizations:
sessionAuthtokenAuth
path Parameters
parentNoteId
required
string
query Parameters
target
string
Enum: "after" "into"
targetBranchId
string
Request Body schema: application/json
required
title
required
string
content
string
type
required
string (NoteType)
Enum: "text" "code" "render" "file" "image" "search" "relationMap" "book" "noteMap" "mermaid" "canvas" "webView" "launcher" "doc" "contentWidget" "mindMap" "geoMap"
mime
string
isProtected
boolean
isExpanded
boolean
notePosition
integer
prefix
string
parentNoteId
string
templateNoteId
string

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "content": "string",
  • "type": "text",
  • "mime": "string",
  • "isProtected": true,
  • "isExpanded": true,
  • "notePosition": 0,
  • "prefix": "string",
  • "parentNoteId": "string",
  • "templateNoteId": "string"
}

Response samples

Content type
application/json
{
  • "note": {
    },
  • "branch": {
    }
}

Duplicate note subtree

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

parentNoteId
required
string

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Sort child notes

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: application/json
required
sortBy
string
Enum: "title" "dateCreated" "dateModified"
sortDirection
string
Enum: "asc" "desc"
foldersFirst
boolean
sortNatural
boolean
sortLocale
string

Responses

Request samples

Content type
application/json
{
  • "sortBy": "title",
  • "sortDirection": "asc",
  • "foldersFirst": true,
  • "sortNatural": true,
  • "sortLocale": "string"
}

Get tree structure

Authorizations:
sessionAuthtokenAuth
query Parameters
subTreeNoteId
string

Limit tree to this note and descendants

Responses

Response samples

Content type
application/json
{
  • "notes": [
    ],
  • "branches": [
    ],
  • "attributes": [
    ]
}

Load specific notes

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
noteIds
required
Array of strings

Responses

Request samples

Content type
application/json
{
  • "noteIds": [
    ]
}

Response samples

Content type
application/json
{
  • "notes": [
    ],
  • "branches": [
    ],
  • "attributes": [
    ]
}

Delete branch

Authorizations:
sessionAuthtokenAuth
path Parameters
branchId
required
string
query Parameters
taskId
required
string
eraseNotes
boolean
last
required
boolean

Responses

Response samples

Content type
application/json
{
  • "noteDeleted": true
}

Move branch to new parent

Authorizations:
sessionAuthtokenAuth
path Parameters
branchId
required
string
parentBranchId
required
string

Responses

Move branch before another

Authorizations:
sessionAuthtokenAuth
path Parameters
branchId
required
string
beforeBranchId
required
string

Responses

Move branch after another

Authorizations:
sessionAuthtokenAuth
path Parameters
branchId
required
string
afterBranchId
required
string

Responses

Set branch expanded state

Authorizations:
sessionAuthtokenAuth
path Parameters
branchId
required
string
expanded
required
boolean

Responses

Set subtree expanded state

Authorizations:
sessionAuthtokenAuth
path Parameters
branchId
required
string
expanded
required
boolean

Responses

Set branch prefix

Authorizations:
sessionAuthtokenAuth
path Parameters
branchId
required
string
Request Body schema: application/json
required
prefix
string or null

Responses

Request samples

Content type
application/json
{
  • "prefix": "string"
}

Clone note to branch

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

parentBranchId
required
string

Responses

Response samples

Content type
application/json
{
  • "branchId": "string",
  • "noteId": "string",
  • "parentNoteId": "string",
  • "notePosition": 0,
  • "prefix": "string",
  • "isExpanded": true
}

Clone note to parent note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

parentNoteId
required
string

Responses

Response samples

Content type
application/json
{
  • "branchId": "string",
  • "noteId": "string",
  • "parentNoteId": "string",
  • "notePosition": 0,
  • "prefix": "string",
  • "isExpanded": true
}

Clone note after branch

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

afterBranchId
required
string

Responses

Response samples

Content type
application/json
{
  • "branchId": "string",
  • "noteId": "string",
  • "parentNoteId": "string",
  • "notePosition": 0,
  • "prefix": "string",
  • "isExpanded": true
}

Toggle note presence in parent

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

parentNoteId
required
string
present
required
boolean

Responses

Attributes

Note attributes and metadata

Get effective note attributes

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Add note attribute

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: application/json
required
attributeId
required
string
noteId
required
string
type
required
string
Enum: "label" "relation"
name
required
string
value
required
string
position
integer
isInheritable
boolean

Responses

Request samples

Content type
application/json
{
  • "attributeId": "string",
  • "noteId": "string",
  • "type": "label",
  • "name": "string",
  • "value": "string",
  • "position": 0,
  • "isInheritable": true
}

Response samples

Content type
application/json
{
  • "attributeId": "string",
  • "noteId": "string",
  • "type": "label",
  • "name": "string",
  • "value": "string",
  • "position": 0,
  • "isInheritable": true
}

Update all note attributes

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: application/json
required
Array
attributeId
required
string
noteId
required
string
type
required
string
Enum: "label" "relation"
name
required
string
value
required
string
position
integer
isInheritable
boolean

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Delete attribute

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

attributeId
required
string

Responses

Update single attribute

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: application/json
required
attributeId
required
string
noteId
required
string
type
required
string
Enum: "label" "relation"
name
required
string
value
required
string
position
integer
isInheritable
boolean

Responses

Request samples

Content type
application/json
{
  • "attributeId": "string",
  • "noteId": "string",
  • "type": "label",
  • "name": "string",
  • "value": "string",
  • "position": 0,
  • "isInheritable": true
}

Set attribute value

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: application/json
required
type
required
string
Enum: "label" "relation"
name
required
string
value
required
string

Responses

Request samples

Content type
application/json
{
  • "type": "label",
  • "name": "string",
  • "value": "string"
}

Create relation

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

name
required
string
targetNoteId
required
string

Responses

Delete relation

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

name
required
string
targetNoteId
required
string

Responses

Get attribute name suggestions

Authorizations:
sessionAuthtokenAuth
query Parameters
type
required
string
Enum: "label" "relation"
query
string

Responses

Response samples

Content type
application/json
[
  • "string"
]

Get values for attribute

Authorizations:
sessionAuthtokenAuth
path Parameters
attributeName
required
string

Responses

Response samples

Content type
application/json
[
  • "string"
]

Attachments

File attachments

Convert note to attachment

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "attachmentId": "string",
  • "ownerId": "string",
  • "role": "image",
  • "mime": "string",
  • "title": "string",
  • "blobId": "string",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Stream file with partial content support

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string
header Parameters
Range
string
Example: bytes=0-1023

Responses

Get note attachments

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Save attachment

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

query Parameters
matchBy
string
Enum: "attachmentId" "title"
Request Body schema: application/json
required
attachmentId
required
string
ownerId
required
string
role
required
string
Enum: "image" "file"
mime
required
string
title
required
string
blobId
string
dateModified
string <date-time>
utcDateModified
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "attachmentId": "string",
  • "ownerId": "string",
  • "role": "image",
  • "mime": "string",
  • "title": "string",
  • "blobId": "string",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "attachmentId": "string",
  • "ownerId": "string",
  • "role": "image",
  • "mime": "string",
  • "title": "string",
  • "blobId": "string",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Upload attachment file

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Request Body schema: multipart/form-data
required
upload
string <binary>

Responses

Response samples

Content type
application/json
{
  • "attachmentId": "string",
  • "ownerId": "string",
  • "role": "image",
  • "mime": "string",
  • "title": "string",
  • "blobId": "string",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Get attachment metadata

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string

Responses

Response samples

Content type
application/json
{
  • "attachmentId": "string",
  • "ownerId": "string",
  • "role": "image",
  • "mime": "string",
  • "title": "string",
  • "blobId": "string",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Delete attachment

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string

Responses

Get attachment content

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string
query Parameters
preview
boolean

Responses

Rename attachment

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string
Request Body schema: application/json
required
title
required
string

Responses

Request samples

Content type
application/json
{
  • "title": "string"
}

Convert attachment to note

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Update attachment file

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string
Request Body schema: multipart/form-data
required
upload
string <binary>

Responses

Open attachment

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string

Responses

Download attachment

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string

Responses

Download attachment (alternative path)

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string

Responses

Get all attachment information

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string

Responses

Response samples

Content type
application/json
{
  • "attachmentId": "string",
  • "title": "string",
  • "mime": "string",
  • "isProtected": true,
  • "position": 0,
  • "contentLength": 0,
  • "ownerId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z"
}

Save attachment to temporary directory

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string

Responses

Response samples

Content type
application/json
{
  • "tmpPath": "string",
  • "success": true
}

Upload modified attachment file

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string
Request Body schema: multipart/form-data
required
upload
string <binary>

Responses

Response samples

Content type
application/json
{
  • "success": true
}

Get attached image

Authorizations:
sessionAuthtokenAuth
path Parameters
attachmentId
required
string
filename
required
string

Responses

Import attachments

Authorizations:
sessionAuthtokenAuth
path Parameters
parentNoteId
required
string
Request Body schema: multipart/form-data
required
upload
Array of strings <binary> [ items <binary > ]

Responses

Erase unused attachments

Authorizations:
sessionAuthtokenAuth

Responses

Revisions

Note revision history

Force save revision

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "revisionId": "string",
  • "noteId": "string",
  • "title": "string",
  • "type": "text",
  • "mime": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z"
}

Get note revisions

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Erase all note revisions

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Get revision details

Authorizations:
sessionAuthtokenAuth
path Parameters
revisionId
required
string

Responses

Response samples

Content type
application/json
{
  • "revisionId": "string",
  • "noteId": "string",
  • "title": "string",
  • "type": "text",
  • "mime": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z"
}

Erase revision

Authorizations:
sessionAuthtokenAuth
path Parameters
revisionId
required
string

Responses

Get revision content

Authorizations:
sessionAuthtokenAuth
path Parameters
revisionId
required
string
query Parameters
preview
boolean

Responses

Restore revision

Authorizations:
sessionAuthtokenAuth
path Parameters
revisionId
required
string

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Download revision

Authorizations:
sessionAuthtokenAuth
path Parameters
revisionId
required
string

Responses

Cleanup old revisions

Authorizations:
sessionAuthtokenAuth

Responses

Get notes edited on date

Authorizations:
sessionAuthtokenAuth
path Parameters
date
required
string <date>
Example: 2024-01-15

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get image from revision

Authorizations:
sessionAuthtokenAuth
path Parameters
revisionId
required
string
filename
required
string

Responses

Search

Search and discovery

Full text search

Authorizations:
sessionAuthtokenAuth
path Parameters
searchString
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Quick search with highlighting

Authorizations:
sessionAuthtokenAuth
path Parameters
searchString
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Execute search note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Search and execute actions

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Find related notes by attributes

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
attributeId
required
string
noteId
required
string
type
required
string
Enum: "label" "relation"
name
required
string
value
required
string
position
integer
isInheritable
boolean

Responses

Request samples

Content type
application/json
{
  • "attributeId": "string",
  • "noteId": "string",
  • "type": "label",
  • "name": "string",
  • "value": "string",
  • "position": 0,
  • "isInheritable": true
}

Response samples

Content type
application/json
[
  • {
    }
]

Search template notes

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get autocomplete suggestions

Authorizations:
sessionAuthtokenAuth
query Parameters
query
required
string
fastSearch
boolean
activeNoteId
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get total notes count

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "count": 0
}

Find similar notes

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create search note

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Import/Export

Import and export operations

Export branch

Authorizations:
sessionAuthtokenAuth
path Parameters
branchId
required
string
type
required
string
Enum: "subtree" "single"
format
required
string
Enum: "html" "markdown" "opml"
version
required
string
taskId
required
string

Responses

Import notes

Authorizations:
sessionAuthtokenAuth
path Parameters
parentNoteId
required
string
Request Body schema: multipart/form-data
required
upload
string <binary>
safeImport
boolean
shrinkImages
boolean
textImportedAsText
boolean
codeImportedAsCode
boolean
explodeArchives
boolean
replaceUnderscoresWithSpaces
boolean

Responses

Response samples

Content type
application/json
{
  • "noteId": "string",
  • "note": {
    }
}

Import attachments

Authorizations:
sessionAuthtokenAuth
path Parameters
parentNoteId
required
string
Request Body schema: multipart/form-data
required
upload
Array of strings <binary> [ items <binary > ]

Responses

Sync

Synchronization between instances

Sync login using document secret

Request Body schema: application/json
required
timestamp
required
string <date-time>
hash
required
string

HMAC hash of document secret and timestamp

syncVersion
required
integer

Responses

Request samples

Content type
application/json
{
  • "timestamp": "2019-08-24T14:15:22Z",
  • "hash": "string",
  • "syncVersion": 0
}

Response samples

Content type
application/json
{
  • "instanceId": "string",
  • "maxEntityChangeId": "string"
}

Setup sync from server

Request Body schema: application/json
required
syncServerHost
required
string <uri>
syncProxy
string
password
required
string <password>

Responses

Request samples

Content type
application/json
{}

Get sync seed for setup

Responses

Response samples

Content type
application/json
{
  • "syncVersion": 0,
  • "schemaVersion": 0,
  • "documentSecret": "string",
  • "maxSyncId": 0
}

Test sync connection

Authorizations:
sessionAuthtokenAuth

Responses

Trigger sync now

Authorizations:
sessionAuthtokenAuth

Responses

Get sync status

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "synced": true,
  • "lastSyncedPush": "2019-08-24T14:15:22Z",
  • "lastSyncedPull": "2019-08-24T14:15:22Z"
}

Get sync changes

Authorizations:
sessionAuthtokenAuth
query Parameters
instanceId
required
string
lastEntityChangeId
required
integer
logMarkerId
required
string

Responses

Response samples

Content type
application/json
{
  • "entityChanges": [
    ],
  • "lastEntityChangeId": 0,
  • "outstandingPullCount": 0
}

Push sync changes

Authorizations:
sessionAuthtokenAuth
query Parameters
logMarkerId
required
string
header Parameters
pageCount
required
integer
pageIndex
required
integer
requestId
string
Request Body schema: application/json
required
instanceId
string
Array of objects (EntityChange)

Responses

Request samples

Content type
application/json
{
  • "instanceId": "string",
  • "entities": [
    ]
}

Mark sync as finished

Authorizations:
sessionAuthtokenAuth

Responses

Get sync statistics

Responses

Response samples

Content type
application/json
{
  • "initialized": true,
  • "stats": { }
}

Fill entity changes

Authorizations:
sessionAuthtokenAuth

Responses

Force full sync

Authorizations:
sessionAuthtokenAuth

Responses

Check entity changes consistency

Authorizations:
sessionAuthtokenAuth

Responses

Queue sector for sync

Authorizations:
sessionAuthtokenAuth
path Parameters
entityName
required
string
sector
required
string

Responses

Scripting

Script execution and automation

Search and execute actions

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Execute script

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
script
required
string
params
Array of strings
startNoteId
string
currentNoteId
string
originEntityName
string
originEntityId
string
transactional
boolean

Responses

Request samples

Content type
application/json
{
  • "script": "string",
  • "params": [
    ],
  • "startNoteId": "string",
  • "currentNoteId": "string",
  • "originEntityName": "string",
  • "originEntityId": "string",
  • "transactional": true
}

Response samples

Content type
application/json
{ }

Run script note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Get startup script bundles

Authorizations:
sessionAuthtokenAuth
query Parameters
mobile
boolean

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get widget script bundles

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get script bundle for note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "noteId": "string",
  • "script": "string",
  • "html": "string",
  • "css": "string"
}

Get relation script bundles

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

relationName
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Configuration

System options and settings

Get application information

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "appVersion": "0.91.6",
  • "dbVersion": 228,
  • "nodeVersion": "string",
  • "syncVersion": 34,
  • "buildDate": "2019-08-24T14:15:22Z",
  • "buildRevision": "string",
  • "dataDirectory": "string",
  • "clipperProtocolVersion": "string",
  • "utcDateTime": "2019-08-24T14:15:22Z"
}

Get setup status

Responses

Response samples

Content type
application/json
{
  • "isInitialized": true,
  • "schemaExists": true,
  • "syncVersion": 0
}

Initialize new document

Request Body schema: application/json
required
password
required
string <password>
theme
string

Responses

Request samples

Content type
application/json
{
  • "password": "pa$$word",
  • "theme": "string"
}

Setup sync from server

Request Body schema: application/json
required
syncServerHost
required
string <uri>
syncProxy
string
password
required
string <password>

Responses

Request samples

Content type
application/json
{}

Get sync seed for setup

Responses

Response samples

Content type
application/json
{
  • "syncVersion": 0,
  • "schemaVersion": 0,
  • "documentSecret": "string",
  • "maxSyncId": 0
}

Get system options

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "property1": "string",
  • "property2": "string"
}

Update multiple options

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
property name*
additional property
string

Responses

Request samples

Content type
application/json
{
  • "property1": "string",
  • "property2": "string"
}

Update single option

Authorizations:
sessionAuthtokenAuth
path Parameters
name
required
string
value
required
string

Responses

Get user-defined themes

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get supported locales

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Database

Database operations

Get database schema

Authorizations:
sessionAuthtokenAuth

Responses

Execute SQL from note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
[
  • { }
]

Create database backup

Authorizations:
sessionAuthtokenAuth

Responses

List existing backups

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • "string"
]

Vacuum database

Authorizations:
sessionAuthtokenAuth

Responses

Anonymize database

Authorizations:
sessionAuthtokenAuth
path Parameters
type
required
string
Enum: "save-as-file" "save-and-send"

Responses

List anonymized databases

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • "string"
]

Fix consistency issues

Authorizations:
sessionAuthtokenAuth

Responses

Check database integrity

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "results": [
    ]
}

Create SQL console note

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

LLM

AI/LLM integration

Create new chat session

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
title
string
systemPrompt
string
temperature
number [ 0 .. 1 ]
maxTokens
integer
model
string
provider
string
Enum: "openai" "anthropic" "ollama"
contextNoteId
string

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "systemPrompt": "string",
  • "temperature": 1,
  • "maxTokens": 0,
  • "model": "string",
  • "provider": "openai",
  • "contextNoteId": "string"
}

Response samples

Content type
application/json
{
  • "sessionId": "string",
  • "title": "string",
  • "messages": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "messageCount": 0
}

List all chat sessions

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get specific chat session

Authorizations:
sessionAuthtokenAuth
path Parameters
sessionId
required
string

Responses

Response samples

Content type
application/json
{
  • "sessionId": "string",
  • "title": "string",
  • "messages": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "messageCount": 0
}

Update chat session

Authorizations:
sessionAuthtokenAuth
path Parameters
sessionId
required
string
Request Body schema: application/json
required
title
string
systemPrompt
string
temperature
number
maxTokens
integer
model
string
provider
string
contextNoteId
string

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "systemPrompt": "string",
  • "temperature": 0,
  • "maxTokens": 0,
  • "model": "string",
  • "provider": "string",
  • "contextNoteId": "string"
}

Response samples

Content type
application/json
{
  • "sessionId": "string",
  • "title": "string",
  • "messages": [
    ],
  • "createdAt": "2019-08-24T14:15:22Z",
  • "lastActive": "2019-08-24T14:15:22Z",
  • "messageCount": 0
}

Delete chat session

Authorizations:
sessionAuthtokenAuth
path Parameters
chatNoteId
required
string

Responses

Send message to LLM

Authorizations:
sessionAuthtokenAuth
path Parameters
sessionId
required
string
Request Body schema: application/json
required
message
required
string
object
includeContext
boolean
useNoteContext
boolean

Responses

Request samples

Content type
application/json
{
  • "message": "string",
  • "options": {
    },
  • "includeContext": true,
  • "useNoteContext": true
}

Response samples

Content type
application/json
{
  • "response": "string",
  • "sources": [
    ]
}

Stream message to LLM

Authorizations:
sessionAuthtokenAuth
path Parameters
sessionId
required
string
Request Body schema: application/json
required
content
required
string
useAdvancedContext
boolean
showThinking
boolean
mentions
Array of strings

Responses

Request samples

Content type
application/json
{
  • "content": "string",
  • "useAdvancedContext": true,
  • "showThinking": true,
  • "mentions": [
    ]
}

List Ollama models

Authorizations:
sessionAuthtokenAuth
query Parameters
baseUrl
string

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "models": [
    ]
}

List OpenAI models

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "chatModels": [
    ],
  • "embeddingModels": [
    ]
}

List Anthropic models

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "chatModels": [
    ]
}

Security

Security features (2FA, tokens)

Enter protected session

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
password
required
string <password>

Responses

Request samples

Content type
application/json
{
  • "password": "pa$$word"
}

Exit protected session

Authorizations:
sessionAuthtokenAuth

Responses

Keep protected session alive

Authorizations:
sessionAuthtokenAuth

Responses

Protect or unprotect note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

isProtected
required
boolean
query Parameters
subtree
boolean
Default: false

Responses

Change password

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
current_password
string <password>
new_password
required
string <password>

Responses

Request samples

Content type
application/json
{
  • "current_password": "pa$$word",
  • "new_password": "pa$$word"
}

Reset password (destructive)

Authorizations:
sessionAuthtokenAuth
query Parameters
really
required
string
Example: really=yesIReallyWantToResetMyPassword

Responses

Generate TOTP secret

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "secret": "string",
  • "qrCode": "string"
}

Get TOTP status

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "enabled": true
}

Get TOTP configuration

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "secret": "string",
  • "qrCode": "string",
  • "backupCodes": [
    ]
}

Check if TOTP recovery is enabled

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "enabled": true
}

Generate TOTP recovery codes

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "codes": [
    ]
}

Get used TOTP recovery codes

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "usedCodes": [
    ]
}

Set TOTP recovery codes

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
codes
Array of strings

Responses

Request samples

Content type
application/json
{
  • "codes": [
    ]
}

Response samples

Content type
application/json
{
  • "success": true
}

Verify TOTP recovery code

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
code
string

Responses

Request samples

Content type
application/json
{
  • "code": "string"
}

Response samples

Content type
application/json
{
  • "valid": true
}

List ETAPI tokens

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create ETAPI token

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
name
required
string

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "etapiTokenId": "string",
  • "name": "string",
  • "token": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "isDeleted": true
}

Update ETAPI token

Authorizations:
sessionAuthtokenAuth
path Parameters
etapiTokenId
required
string
Request Body schema: application/json
required
name
string

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "etapiTokenId": "string",
  • "name": "string",
  • "token": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "isDeleted": true
}

Delete ETAPI token

Authorizations:
sessionAuthtokenAuth
path Parameters
etapiTokenId
required
string

Responses

Special Notes

Special note types (calendar, inbox)

Get/create inbox note

Authorizations:
sessionAuthtokenAuth
path Parameters
date
required
string <date>

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Get/create day note

Authorizations:
sessionAuthtokenAuth
path Parameters
date
required
string <date>

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Get/create week note

Authorizations:
sessionAuthtokenAuth
path Parameters
week
required
string^\d{4}-\d{2}$
Example: 2024-03

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Get/create month note

Authorizations:
sessionAuthtokenAuth
path Parameters
month
required
string^\d{4}-\d{2}$
Example: 2024-01

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Get/create year note

Authorizations:
sessionAuthtokenAuth
path Parameters
year
required
string^\d{4}$
Example: 2024

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Create SQL console note

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Create search note

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Create launcher

Authorizations:
sessionAuthtokenAuth
path Parameters
parentNoteId
required
string
launcherType
required
string

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Get notes for specific month

Authorizations:
sessionAuthtokenAuth
path Parameters
month
required
string
Example: 2024-03

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get quarter note

Authorizations:
sessionAuthtokenAuth
path Parameters
quarter
required
string
Example: 2024-Q1

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Get first day of week for date

Authorizations:
sessionAuthtokenAuth
path Parameters
date
required
string <date>
Example: 2024-03-15

Responses

Response samples

Content type
application/json
{
  • "date": "2019-08-24"
}

Reset launcher note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Save search note

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
query
string
title
string

Responses

Request samples

Content type
application/json
{
  • "query": "string",
  • "title": "string"
}

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Save SQL console note

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
sql
string
title
string

Responses

Request samples

Content type
application/json
{
  • "sql": "string",
  • "title": "string"
}

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Update API script launcher

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
code
string

Script code

Responses

Request samples

Content type
application/json
{
  • "code": "string"
}

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Visualization

Maps and visualizations

Get tree map

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{ }

Get link map

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{ }

Get backlink count for note

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "count": 0
}

Get relation map data

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
noteId
string
maxDepth
integer
excludeArchived
boolean

Responses

Request samples

Content type
application/json
{
  • "noteId": "string",
  • "maxDepth": 0,
  • "excludeArchived": true
}

Response samples

Content type
application/json
{ }

External

External integrations (clipper, sender)

Clipper handshake

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "protocolVersion": "string"
}

Add web clipping

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
title
string
content
string
url
string

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "content": "string",
  • "url": "string"
}

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Create clipper note

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
title
string
content
string
parentNoteId
string

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "content": "string",
  • "parentNoteId": "string"
}

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Open note in clipper

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "success": true,
  • "url": "string"
}

Sender login

Request Body schema: application/json
required
username
required
string
password
required
string

Responses

Request samples

Content type
application/json
{
  • "username": "string",
  • "password": "string"
}

Response samples

Content type
application/json
{
  • "token": "string"
}

Upload image from sender

Authorizations:
sessionAuthtokenAuth
Request Body schema: multipart/form-data
required
upload
string <binary>

Responses

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Save note from sender

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
title
string
content
string

Responses

Request samples

Content type
application/json
{
  • "title": "string",
  • "content": "string"
}

Response samples

Content type
application/json
{
  • "noteId": "ur11rSfHkzeV",
  • "title": "string",
  • "type": "text",
  • "mime": "text/html",
  • "isProtected": true,
  • "blobId": "string",
  • "dateCreated": "2019-08-24T14:15:22Z",
  • "dateModified": "2019-08-24T14:15:22Z",
  • "utcDateCreated": "2019-08-24T14:15:22Z",
  • "utcDateModified": "2019-08-24T14:15:22Z"
}

Utilities

Miscellaneous utilities

Get system metrics

Authorizations:
sessionAuthtokenAuth
query Parameters
format
string
Default: "json"
Enum: "prometheus" "json"

Responses

Response samples

Content type
{ }

Run system diagnostics

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Health check endpoint

Responses

Get backend log

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get note size

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "size": 0
}

Get subtree size

Authorizations:
sessionAuthtokenAuth
path Parameters
noteId
required
string

12-character note ID

Responses

Response samples

Content type
application/json
{
  • "size": 0
}

Get keyboard actions

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get keyboard shortcuts for notes

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get font CSS

Authorizations:
sessionAuthtokenAuth

Responses

Add recent note

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
noteId
required
string

Responses

Request samples

Content type
application/json
{
  • "noteId": "string"
}

Get recent changes

Authorizations:
sessionAuthtokenAuth
path Parameters
ancestorNoteId
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get icon usage statistics

Authorizations:
sessionAuthtokenAuth

Responses

Response samples

Content type
application/json
{
  • "property1": 0,
  • "property2": 0
}

Render markdown to HTML

Authorizations:
sessionAuthtokenAuth
Request Body schema: application/json
required
markdownContent
required
string

Responses

Request samples

Content type
application/json
{
  • "markdownContent": "string"
}