---
title: "Create Note"
method: POST
path: "/v2/notes"
tags: ["external", "external-v2"]
---

# Create Note

`POST /v2/notes`

Create a note with an optional note ID, timestamps, and collection links.
If omitted, Mem generates the note ID.
The first line of `content` becomes the note title.

## Request body

- CreateNoteRequestSchema
  - `collection_ids` string[], nullable — Optional collection IDs to associate with the note. IDs that do not map to accessible collections are ignored.
  - `collection_titles` string[], nullable — Optional collection titles to associate with the note. Matching is case-insensitive exact match; titles with no match are ignored. Maximum per title: 1,000 characters (and no more than 1,000 UTF-8 bytes).
  - `content` string, required — Full markdown body for the note. Send the full desired note body (partial patch semantics are not supported here). IMPORTANT: The first line is interpreted as the note title. Maximum: 200,000 characters (and no more than 200,000 UTF-8 bytes on create).
  - `created_at` string, date-time, nullable — Optional creation timestamp (ISO 8601). If provided, it must include a timezone offset and cannot be in the future. If omitted, Mem uses `updated_at` when provided; otherwise current server time.
  - `id` string, uuid, nullable — Optional UUID for the note. If omitted, Mem generates a new UUID.
  - `updated_at` string, date-time, nullable — Optional "last updated" timestamp for this write (ISO 8601). If provided, it must include a timezone offset and cannot be in the future. If omitted, Mem uses the current server time for the initial content write.

## Response `200`

OK

- CreateNoteResponseSchema
  - `collection_ids` string[], required — Collection UUIDs currently associated with this note.
  - `content` string, required — Full markdown content stored for the note.
  - `created_at` string, date-time, required — Creation timestamp for the note in ISO 8601 format.
  - `id` string, uuid, required — UUID of the created note.
  - `request_id` string, required — Identifier for this API request. Useful for tracing and support.
  - `title` string, required — Current note title, derived from the first line of markdown content.
  - `updated_at` string, date-time, required — Last modification timestamp for the note in ISO 8601 format.
  - `version` integer, required — Current note content document version after this write.

## Other responses

- `429` — Usage quota exceeded

---

[API](https://skmtc.net/mem/apis/mem-api.md) · [All operations](https://skmtc.net/mem/apis/mem-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mem/mem-api/revisions/4023cb07f31f/schema)
