Paper documentation
Personal API

Page format

The Markdown the API reads and writes, with tables, boards, timelines, charts, dates and links.

Each page is plain Markdown, readable in any editor. Blocks Markdown doesn't have become code blocks with their own names, and the app turns them back into interactive blocks.

Block names and keywords (paper-kanban, tipo, título, [!nota]) stay the same in every language, because they are part of the file format.

Basics

## Section heading

Text with **bold**, *italic*, ~~strikethrough~~ and `code`.

- List
1. Numbered list
- [ ] Open task
- [x] Done task

> Quote

> [!nota]
> Highlight (callout)

```js
console.log('code block')
```

---
WriteBecomes
[[Page name]]Link to another page in the vault
[[Page name|text]]Link with different text
@2026-10-06Date. On a task, it shows in the app's Calendar
@2026-10-06 14:30Date with a time
![photo.png](Anexos/a3f9c21b7e-photo.png)Image uploaded through the attachments API
#tagTag, which shows in the app's search filters

Dates in the file are always YYYY-MM-DD, whatever language the app is in.

Table

A regular Markdown table. An optional comment before it keeps the type of each column (texto, numero, data, check, opcao):

<!-- paper-tabela {"tipos":["texto","data","check"]} -->
| Task | Due | Done |
| --- | --- | --- |
| Budget | 2026-10-06 | sim |

Board (Kanban)

Each ## is a column; each item is a card.

```paper-kanban
## To do
- [ ] Review contract

## Doing
- [ ] Write report

## Done
- [x] Schedule meeting
```

Timeline

One stage per line: start, end and name.

```paper-cronograma
- [x] 2026-10-01 → 2026-10-05 · Plan
- [ ] 2026-10-04 → 2026-10-15 · Build
- [ ] 2026-10-14 → 2026-10-20 · Review
```

-> and até also work in place of →.

Chart

Type (barras bars, linhas lines, area, pizza pie), an optional title and a small table separated by ;. The first line gives the series names.

```paper-grafico
tipo: barras
título: Quarter spending

Month; Groceries; Transport
Jul; 820; 210
Aug; 790; 180
Sep; 845; 230
```

Frontmatter

The page's properties sit in a --- block at the top of the file. The API returns those properties in props, and you don't need to send the frontmatter when creating or editing: send only the text.

Protected pages

In the .md file, a password-protected page becomes an encrypted block that only the app opens with the password. The API neither reads nor writes these pages (423).

On this page