MiloNotes Documentation

Complete reference for every feature in MiloNotes — your AI-powered second brain for notes, projects, freelancing, and more.

Overview #

MiloNotes is a privacy-focused, AI-powered notebook and personal assistant. It combines rich note-taking with project management tools, an AI assistant named Milo, and a suite of productivity features — all running inside your own isolated container.

Key capabilities at a glance:

  • Rich Markdown editor with live preview, split view, and syntax highlighting
  • AI assistant (Milo) with tool use, memory, RAG, and streaming responses
  • Notebook organization with folders, tags, and full-text search
  • Kanban boards for project and task management
  • Knowledge Graph that visualizes connections between your notes
  • Day View / Timeline with calendar navigation and AI summaries
  • Freelancer tools — timeclock, expense tracking, invoicing
  • Study Games — 10 game types generated from your notes by Milo
  • Meeting Assistant with in-browser speech-to-text transcription
  • REST API and MCP server for integrations
  • Git Sync to back up notes as Markdown to a Git repository
ℹ️
Privacy first

Your data lives in an isolated database on your own private instance. No data is shared between users, and all AI processing uses models you configure.

Logging In #

Navigate to your MiloNotes instance URL in any modern browser. You will be presented with the login screen.

  • Enter your email and password
  • Click Sign In
  • You'll be automatically signed in and redirected to the dashboard
💡

If you are using the REST API or MCP integration, you can authenticate with an API key instead. See API Key Management.

The Dashboard & Timeline #

After logging in you land on the Dashboard, which serves as your daily command center. The dashboard is built around the Day View timeline, showing:

  • Today's date and a calendar picker for navigating to other days
  • Day entries you have written for that date
  • Any notes with timestamps that fall on the selected day
  • Activity summary (notes created, edited, time tracked)
  • Quick access to your recent notebooks and pinned items

The sidebar provides navigation to every major feature: Notes, Kanban, Goals, Memo Wall, Pomodoro, Study Games, and more. Feature visibility is controlled through Feature Toggles in Settings.

MiloNotes uses a familiar layout with a collapsible sidebar on the left, the main content area in the center, and optional panels (AI chat, transcript) on the right.

The primary sidebar contains links to all enabled features. Click any item to navigate. The sidebar collapses to icons on smaller screens and can be toggled with the hamburger button.

When viewing notes, a VSCode-style breadcrumb bar appears at the top showing your current location in the hierarchy:

Notebook > Folder > Subfolder > Note Title

Each segment is clickable, allowing quick navigation to any parent container.

ShortcutAction
Ctrl + KOpen command palette / search
Ctrl + NCreate new note
Ctrl + SSave current note
Ctrl + Shift + PToggle preview mode
Ctrl + \\Toggle split view
Ctrl + Shift + FOpen full-text search
EscClose modal / panel

Creating & Editing Notes #

Notes are the core unit of MiloNotes. Each note is a Markdown document with optional metadata (tags, timestamps, attachments).

Creating a Note

  • Click the + button in the sidebar or press Ctrl + N
  • Choose a destination notebook (or leave it orphaned)
  • Begin typing in the editor
  • Notes auto-save as you type

Editor Modes

The note editor supports three modes, toggled via the toolbar:

  • Edit — Full-featured code editor with syntax highlighting, line numbers, and Vim/Emacs keybindings (optional)
  • Preview — Rendered Markdown with code blocks, tables, Mermaid diagrams, LaTeX math
  • Split — Side-by-side edit and preview (Ctrl + \\)

Markdown Support #

MiloNotes supports standard GitHub-Flavored Markdown plus extensions:

FeatureSyntax
Headings# H1 through ###### H6
Bold / Italic**bold** / *italic*
Code blocksTriple backticks with optional language tag
TablesPipe-delimited GFM tables
Task lists- [ ] / - [x]
Mermaid diagrams```mermaid fenced blocks
LaTeX math$inline$ and $$block$$
Links & ImagesStandard Markdown syntax
Footnotes[^1] reference style

Notebook Organization #

Notebooks are the top-level containers for notes. Each notebook has:

  • A name and optional emoji icon
  • A color for visual identification in the sidebar
  • Zero or more folders for hierarchical organization
  • A flat list of notes that belong directly to the notebook

Create a notebook from the sidebar by clicking + New Notebook, or ask Milo: "Create a notebook called Research".

Folders & Sections #

Folders provide hierarchical organization within a notebook. Folders can be nested to any depth.

  • Right-click a notebook or folder to create a subfolder
  • Drag notes between folders
  • Drag folders to reorder or nest them
  • Folders are displayed in the sidebar tree and in the breadcrumb navigation

Moving Notes #

You can move notes between notebooks and folders in two ways:

  • Drag-and-drop — Drag a note from the sidebar to another notebook or folder
  • Move dialog — Right-click a note and select "Move to..." to pick a destination from a tree view

Orphaned Notes #

Notes created without selecting a notebook appear in the Orphaned Notes section. This is useful for quick capture. You can later move them to a notebook via the move dialog or drag-and-drop.

Note Metadata #

Each note stores the following metadata:

  • Title — Extracted from the first heading or set manually
  • Created date and updated date (Unix ms timestamps)
  • Optional date — Assign a specific date to make the note appear in the Day View timeline
  • Optional time — Assign a timestamp for timeline ordering
  • Tags — Categorize with tags for cross-cutting organization
  • UUID — Unique identifier used in API calls and deep links

Tags & Tag Suggestions #

Tags provide a flat, cross-cutting taxonomy independent of the notebook/folder hierarchy.

  • Add tags to any note via the metadata panel
  • Browse all tags from the Tags section in the sidebar
  • Click a tag to see all notes associated with it
  • Milo can suggest tags based on note content when you ask

Tags are stored as a many-to-many relationship. A note can have any number of tags, and a tag can be associated with any number of notes.

MiloNotes uses a built-in full-text search index for fast search across all your notes.

  • Open search with Ctrl + Shift + F or the search icon
  • Results are ranked by relevance and displayed with highlighted matches
  • Search indexes note titles and content
  • The FTS index is kept in sync automatically via database triggers
💡

You can also search by title only from the quick-open palette (Ctrl + K). This is faster for navigating when you know the note name.

Inspired by VSCode, the breadcrumb bar at the top of the editor shows your current position within the notebook hierarchy. Each segment (notebook, folder, note) is clickable and opens a dropdown listing siblings, making it easy to navigate laterally without the sidebar.

Note Templates #

Note templates let you create pre-filled notes for recurring patterns (meeting notes, daily journals, project specs). Templates are notes flagged as templates and can be inserted via the "New from template" option when creating a note.

Attachments & Images #

Attach files and images to any note:

  • Drag-and-drop files onto the editor area
  • Paste images from your clipboard directly into the editor
  • Upload button in the toolbar for file picker

Attachments are stored in the per-user attachments/ directory. Images are automatically inserted as Markdown image references. Other files appear as download links.


Chat Interface #

Milo is the built-in AI assistant. Open the chat panel from the sidebar or by clicking the Milo icon. The chat interface features:

  • Streaming responses via Server-Sent Events (SSE) for real-time output
  • Markdown rendering in responses (code blocks, tables, lists)
  • Conversation history preserved across sessions
  • Multiple conversations — create, rename, and delete chat threads
  • Context awareness — Milo can read the currently open note when you ask

Available AI Tools #

Milo has access to a tool loop that lets it take actions inside MiloNotes on your behalf. Available tools include:

ToolDescription
create_noteCreate a new note with specified title, content, and notebook
create_notebookCreate a new notebook
create_folderCreate a folder inside a notebook
create_kanban_boardSet up a kanban board with columns
create_tagCreate a new tag
search_notesFull-text search across all notes (used for RAG)
read_noteRead a specific note by ID
list_notebooksList all notebooks
list_notesList notes in a notebook or folder
create_goalCreate a goal with optional milestones
create_memoCreate a memo on the wall
recall_memoryRecall something from Milo's memory system
save_memorySave a fact or preference to memory
ℹ️

Milo executes tools in a loop — it can chain multiple tool calls in a single response. For example: "Create a notebook called Work, add a folder called Projects, and create a note in it with a project template."

Memory System #

Milo has a persistent memory system that stores facts, preferences, and context between conversations.

  • Automatic memory — Milo can save relevant facts during conversation
  • Manual memory — Tell Milo to remember something: "Remember that my team meeting is every Tuesday at 10am"
  • Memory recall — Milo automatically retrieves relevant memories when answering
  • Memory management — View, edit, and delete memories from the Memories section
  • Memory consolidation — Milo can merge and deduplicate memories

RAG (Retrieval-Augmented Generation) #

RAG allows Milo to search your notes and use them as context when answering questions. This is powered by the built-in full-text search index.

  • When you ask Milo a question, it can search your notes for relevant content
  • Matched note excerpts are injected into the context window
  • Milo cites which notes it used when answering
  • This works automatically — no configuration needed

Example: "What did I write about the Q3 marketing strategy?" — Milo will search your notes, find matches, and synthesize an answer.

Summarize, Rewrite & Key Points #

Three one-click AI actions are available from the note toolbar or right-click menu:

  • Summarize — Generates a concise summary of the current note
  • Rewrite — Rewrites the note content for clarity and style
  • Key Points — Extracts the main points as a bulleted list

Results appear in a panel below the editor. You can copy the output, insert it into the note, or discard it.

Learn from Files #

The "Learn" feature lets you upload documents (PDF, text, Markdown) and have Milo process them into your knowledge base. The content is indexed and becomes searchable via RAG.

AI Providers (BYOK) #

MiloNotes supports Bring Your Own Key (BYOK) for AI providers. Configure your own AI backend:

  • Navigate to Settings > AI Providers
  • Add a provider with its API base URL and your API key
  • Select the model you want to use
  • API keys are stored hashed — they are never exposed in plaintext after initial entry
⚠️

When using BYOK, your data is sent to the configured AI provider. Make sure you trust the provider and understand their data retention policies.


Knowledge Graph — How It Works #

The Knowledge Graph provides a visual map of connections between your notes. Connections are derived from:

  • Shared tags — Notes with common tags are linked
  • Internal links — Notes that reference other notes by title or ID
  • AI-detected relationships — Milo can identify semantic connections

Visualizing Note Connections #

The graph is rendered as an interactive force-directed layout:

  • Zoom and pan to navigate the graph
  • Click a node to open the corresponding note
  • Hover over a node to highlight its connections
  • Nodes are colored by notebook, sized by connection count
  • Edge thickness indicates relationship strength

Daily Entries #

Day View entries are standalone text blocks tied to a specific date. They are different from notes — think of them as journal entries or daily logs.

  • Write one or more entries per day
  • Entries support Markdown formatting
  • Each entry has a timestamp showing when it was created

Calendar Navigation #

The calendar widget lets you jump to any date. Days with entries or activity are indicated with a dot. Click a date to view that day's timeline.

Activity Tracking #

MiloNotes tracks your activity automatically:

  • Notes created and edited per day
  • Time spent in the editor (activity sessions)
  • Pomodoro sessions completed
  • Timeclock entries

Activity data is displayed as summaries in the Day View and can be queried via the API.

AI-Generated Daily Summaries #

Milo can generate a summary of your day, pulling from your entries, notes, and activity data. Summaries appear at the top of the Day View and highlight key work done, decisions made, and items to follow up on.

Timestamped Notes in Timeline #

Notes with a date and optional time in their metadata appear inline in the Day View timeline, interspersed with your day entries. This creates a unified chronological view of everything that happened on a given day.


Creating Boards & Columns #

Kanban boards provide a visual project management interface. Each board consists of columns, and each column contains cards.

  • Create a board from the Kanban section or ask Milo
  • Add columns by clicking + Add Column
  • Rename columns by clicking the column title
  • Reorder columns by dragging the column header

Cards & Card Management #

Cards represent individual tasks or items. Each card has:

  • Title — Short description of the task
  • Description — Optional Markdown body
  • Position — Order within the column (auto-managed by drag-and-drop)

Drag-and-Drop #

Cards can be dragged between columns and reordered within a column. The position updates are persisted immediately. Drag a card to a different column to change its status (e.g., from "To Do" to "In Progress").


Creating Goals #

Goals track longer-term objectives with optional due dates and milestones.

  • Create goals from the Goals section or via Milo
  • Set a title, description, and optional due date
  • Goals are displayed with a progress bar based on milestone completion

Milestones & Progress #

Break goals into milestones — discrete checkpoints that track progress:

  • Add milestones to any goal
  • Mark milestones as complete to update the progress bar
  • Milestones have a title and optional due date
  • Progress percentage = (completed milestones / total milestones) × 100

Memo Wall — Quick Reminders #

The Memo Wall is a collection of sticky-note-style cards for quick reminders and short-lived information.

  • Click + New Memo to create a memo
  • Memos have a title and content
  • Displayed as a grid of colored cards
  • Delete memos when they are no longer needed
  • Milo can create memos on your behalf: "Remind me to call the dentist"

Focus Sessions #

The built-in Pomodoro timer helps you maintain focused work sessions with structured breaks.

  • Focus interval — Default 25 minutes (configurable)
  • Short break — Default 5 minutes
  • Long break — Default 15 minutes (after 4 focus sessions)
  • Optional: Link a note to the Pomodoro session to track what you worked on
  • Browser notifications when a session ends

Session History #

All Pomodoro sessions are logged with start time, duration, and the linked note (if any). View your history to track productivity patterns over time. Sessions also appear in the Day View activity summary.


Saving Articles from URLs #

The Web Snipper lets you save articles from any URL for offline reading and reference.

  • Click + Save URL in the Web Snipper section
  • Paste the URL and click Save
  • MiloNotes extracts the article content automatically, stripping ads and navigation
  • The title, author, excerpt, and main content are saved

Reading View #

Saved articles are displayed in a clean, distraction-free reading view. The original formatting is preserved while removing clutter. You can adjust font size and toggle between light and dark reading themes.

Article Management #

Organize saved articles with:

  • Archive — Move read articles to the archive
  • Favorite — Star important articles for quick access
  • Delete — Remove articles you no longer need
  • Search — Full-text search across saved articles

Converting Snippets to Notes #

Convert any saved article to a note to incorporate it into your notebook structure. The article content becomes the note body (in Markdown), and the original URL is preserved in the metadata.


Organizations (Clients) #

Organizations represent your clients or companies. They serve as the anchor for all freelancer tools.

  • Create organizations with name, address, and contact details
  • Link organizations to notebooks (see below)
  • All timeclock entries, expenses, and invoices are scoped to an organization

Timeclock #

Track billable and non-billable time with the timeclock:

  • Clock in — Start tracking time for an organization
  • Clock out — Stop the timer and save the entry
  • Manual entries — Add entries with custom start/end times
  • Descriptions — Add a description to each entry for context
  • Reports — View time totals by organization, date range, and category
  • CSV export — Export timeclock data for external billing systems

Expense Tracker #

Track project-related expenses:

  • Add expenses with amount, category, date, and description
  • Mark expenses as billable or non-billable
  • Categorize by type (software, travel, supplies, etc.)
  • Filter and total expenses by organization and date range

Invoice Generator #

Generate professional invoices from your tracked time and expenses:

  • Create an invoice for an organization
  • Import from timeclock — Automatically populate line items from time entries
  • Import from expenses — Add billable expenses as line items
  • Add custom line items manually (description, quantity, rate)
  • Set payment terms, due date, and notes
  • Printable preview — Clean, professional layout ready for PDF export
  • Invoice numbering is auto-incremented

Linking Organizations to Notebooks #

Associate a notebook with an organization to keep client notes and project documentation together. When viewing an organization, you can quickly jump to its linked notebook and vice versa.


Study Game Types #

Study Games turn your notes into interactive learning experiences. Milo generates questions and challenges based on your note content. There are 10 game types:

GameDescription
TriviaMultiple-choice questions generated from your notes
Flashcard BlitzTimed flashcard drill — flip cards and rate your recall
Fill in the BlankKey terms removed from sentences — type the missing word
True/FalseStatements from your notes — decide if they are accurate
Spot the WrongIntentionally altered facts — identify what was changed
Brain DumpFree-form recall — write everything you know about a topic, Milo scores it
SynapseMatch related concepts from different notes
Chain ReactionOrder events, steps, or concepts in the correct sequence
Last One StandingElimination rounds — answer correctly to survive
FuseCombine two separate concepts to explain their connection

Playing Against Milo #

When you start a study game, Milo generates questions from one or more selected notes. You play interactively — Milo presents questions, evaluates your answers, and provides explanations for incorrect responses.

  • Select one or more notes as source material
  • Choose a game type
  • Set the number of rounds or questions
  • Play the game — Milo evaluates answers in real time

Session History & Statistics #

Each game session is logged with your score, time taken, and accuracy. View your statistics to identify weak areas and track improvement over time.


In-Browser Transcription #

The Meeting Assistant provides real-time speech-to-text transcription directly in your browser. No audio leaves your device — transcription runs entirely locally.

Audio Capture #

Two audio capture modes are supported:

  • Microphone — Captures your voice and any in-room audio
  • System audio — Captures audio from any application (requires browser tab/screen share). Useful for transcribing virtual meetings on Zoom, Teams, etc.

You can use both simultaneously for full meeting coverage.

Real-Time Transcript #

As the meeting proceeds, the transcript appears in a sidebar panel in real time. Each segment includes a timestamp. The transcript is scrollable and searchable.

AI Copilot Note-Taking #

Milo can act as a meeting copilot: the transcript is available in the chat context, so you can ask Milo to summarize the meeting, extract action items, or answer questions about what was discussed — all while the meeting is still happening.


Connecting a Repository #

Git Sync exports your notes as Markdown files to a Git repository, providing version history and an external backup.

  • Navigate to Settings > Git Sync
  • Enter the repository URL (HTTPS or SSH)
  • Provide authentication credentials (token or SSH key)
  • Choose the branch (default: main)

Auto-Sync Configuration #

Once connected, you can enable auto-sync:

  • On save — Sync every time a note is saved
  • Interval — Sync on a timer (e.g., every 30 minutes)
  • Manual — Sync only when you click the sync button

Export Format #

Notes are exported as .md files with YAML front matter containing metadata:

markdown---
title: "Project Kickoff Notes"
notebook: "Work"
folder: "Projects/Alpha"
tags: [meeting, planning]
created: 2025-01-15T10:30:00Z
updated: 2025-01-15T14:22:00Z
---

# Project Kickoff Notes

Meeting notes go here...

The directory structure mirrors your notebook/folder hierarchy.


Feature Toggles #

Not every user needs every feature. Feature toggles let you show or hide entire sections of the interface:

  • Navigate to Settings > Features
  • Toggle individual features on or off
  • Disabled features are hidden from the sidebar and inaccessible via the UI
  • Data is preserved — re-enabling a feature restores your content

Available toggles: Kanban, Goals, Memo Wall, Pomodoro, Study Games, Web Snipper, Freelancer Tools, Knowledge Graph, Meeting Assistant, Git Sync.

Theme (Light/Dark) #

MiloNotes supports both light and dark themes. Switch themes from Settings > Appearance. The theme preference is stored per-user and persists across sessions.

User Profile #

Manage your account from Settings > Profile:

  • Update your display name
  • Change your email address
  • Change your password

AI Usage & Quotas #

The Settings > AI page shows your AI usage statistics:

  • Total requests made this billing period
  • Token usage (input and output)
  • Remaining quota (if applicable)
  • Usage breakdown by feature (chat, summarize, study games, etc.)

REST API Overview #

MiloNotes exposes a comprehensive REST API under the /api/ prefix. All endpoints return JSON with camelCase keys. Timestamps are Unix milliseconds.

ℹ️

The API uses the same endpoints that the web interface uses. Anything you can do in the UI, you can do via the API.

Base URL

https://your-instance.milonotes.com/api/

Response Format

Successful responses return JSON data directly. Error responses use the format:

json{
  "error": "Description of what went wrong"
}

API Key Management #

Create and manage API keys from Settings > API Keys:

  • Click + Create API Key
  • Give it a descriptive name (e.g., "Obsidian sync", "CLI tool")
  • The key is displayed once — copy and store it securely
  • Keys are stored as SHA256 hashes (the plaintext is never saved)
  • Revoke keys at any time by deleting them

Include the key in requests via the Authorization header:

httpAuthorization: Bearer your-api-key-here

API Endpoints Reference #

Authentication

MethodEndpointDescription
POST/api/auth/loginLogin with email/password, returns JWT
GET/api/auth/infoGet instance info (no auth required)

Notes

MethodEndpointDescription
GET/api/notesList all notes
POST/api/notesCreate a note
GET/api/notes/:idGet a note by ID
PUT/api/notes/:idUpdate a note
DELETE/api/notes/:idDelete a note
GET/api/notes/search-titleSearch notes by title

Notebooks

MethodEndpointDescription
GET/api/notebooksList all notebooks
POST/api/notebooksCreate a notebook
GET/api/notebooks/:idGet a notebook by ID
PUT/api/notebooks/:idUpdate a notebook
DELETE/api/notebooks/:idDelete a notebook

Folders

MethodEndpointDescription
GET/api/foldersList folders for a notebook
POST/api/foldersCreate a folder
PUT/api/folders/:idUpdate a folder
DELETE/api/folders/:idDelete a folder

Tags

MethodEndpointDescription
GET/api/tagsList all tags
POST/api/tagsCreate a tag
DELETE/api/tags/:idDelete a tag
POST/api/notes/:id/tagsAssociate tags with a note
MethodEndpointDescription
GET/api/search?q=queryFull-text search across all notes

Kanban

MethodEndpointDescription
GET/api/kanban/boardsList boards
POST/api/kanban/boardsCreate a board
GET/api/kanban/boards/:idGet board with columns and cards
POST/api/kanban/columnsCreate a column
POST/api/kanban/cardsCreate a card
PATCH/api/kanban/cards/:id/moveMove a card to another column/position

Day View

MethodEndpointDescription
GET/api/day-view/entries?date=YYYY-MM-DDGet entries for a date
POST/api/day-view/entriesCreate a day entry
GET/api/day-view/calendarGet calendar data (dates with entries)
GET/api/day-view/summary?date=YYYY-MM-DDGet AI-generated daily summary
GET/api/day-view/activityGet activity data

Goals

MethodEndpointDescription
GET/api/goalsList all goals
POST/api/goalsCreate a goal
PUT/api/goals/:idUpdate a goal
DELETE/api/goals/:idDelete a goal
POST/api/goals/:id/milestonesAdd a milestone
PATCH/api/goals/:goalId/milestones/:idUpdate milestone (toggle complete)

Memos

MethodEndpointDescription
GET/api/memosList all memos
POST/api/memosCreate a memo
PUT/api/memos/:idUpdate a memo
DELETE/api/memos/:idDelete a memo

Timeclock

MethodEndpointDescription
GET/api/timeclock/orgsList organizations
POST/api/timeclock/clock-inClock in for an organization
POST/api/timeclock/clock-outClock out
GET/api/timeclock/entriesList time entries
GET/api/timeclock/reportsGet time reports

Chat / AI

MethodEndpointDescription
POST/api/ai/chatSend a message (SSE streaming response)
POST/api/ai/summarizeSummarize text
POST/api/ai/rewriteRewrite text
POST/api/ai/keypointsExtract key points
POST/api/ai/learnIndex content for RAG
POST/api/ai/indexReindex notes for search

Chat History

MethodEndpointDescription
GET/api/chat-historyList conversations
POST/api/chat-historyCreate a conversation
GET/api/chat-history/:idGet conversation with messages
DELETE/api/chat-history/:idDelete a conversation

Memories

MethodEndpointDescription
GET/api/memoriesList all memories
POST/api/memoriesCreate a memory
PUT/api/memories/:idUpdate a memory
DELETE/api/memories/:idDelete a memory
POST/api/memories/importBulk import memories
POST/api/memories/consolidateAI-powered memory deduplication

Study Games

MethodEndpointDescription
POST/api/study-games/generateGenerate a game from notes
GET/api/study-games/sessionsList game sessions
GET/api/study-games/statsGet game statistics

Export

MethodEndpointDescription
GET/api/export/markdownExport all notes as Markdown (ZIP)
GET/api/export/jsonExport all data as JSON

MCP Integration #

MiloNotes includes a Model Context Protocol (MCP) server, allowing external AI tools (Claude Desktop, Cursor, etc.) to interact with your notes.

Setup

Configure your MCP client to connect to your MiloNotes instance:

json{
  "mcpServers": {
    "milonotes": {
      "url": "https://your-instance.milonotes.com/mcp",
      "headers": {
        "Authorization": "Bearer your-api-key"
      }
    }
  }
}

Available MCP Tools

The MCP server exposes the following tools to external AI clients:

  • search_notes — Full-text search
  • read_note — Read a note's content
  • create_note — Create a new note
  • update_note — Update an existing note
  • list_notebooks — List notebooks
  • list_notes — List notes in a notebook
  • create_notebook — Create a notebook
  • create_memo — Create a memo
  • list_tags — List tags

Authentication #

Two authentication methods are supported:

JWT Tokens

Used by the web interface. Obtained via POST /api/auth/login:

bashcurl -X POST https://your-instance.milonotes.com/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"email": "you@@example.com", "password": "your-password"}'

Response:

json{
  "token": "eyJhbGciOi...",
  "user": {
    "id": "uuid",
    "email": "you@@example.com",
    "name": "Your Name"
  }
}

JWT tokens expire after 7 days. Include in subsequent requests:

httpAuthorization: Bearer eyJhbGciOi...

API Keys

API keys do not expire (unless revoked) and are suitable for automated integrations. Create them from Settings or the admin API. Use the same Authorization: Bearer header format.


Markdown Export #

Export all your notes as a ZIP archive of Markdown files. The archive preserves your notebook and folder structure as directories. Each file includes YAML front matter with metadata (title, tags, dates).

  • Navigate to Settings > Export
  • Click Export as Markdown
  • A ZIP file is downloaded containing all notes

JSON Export #

Export all data (notes, notebooks, folders, tags, settings, kanban boards, goals, memos, memories, etc.) as a single JSON file. Useful for full backups or migration.

  • Navigate to Settings > Export
  • Click Export as JSON
  • The JSON includes all user data with UUIDs intact