Skip to main content

Pages

Pages are the fundamental unit of content in Raven Docs. They contain your documentation, notes, meeting minutes, and any other text-based content.

Creating Pages

From the UI

  1. Open a space
  2. Click New Page or press Cmd/Ctrl + N
  3. Start typing your content

From the API

const page = await client.pages.create({
workspaceId: 'ws_123',
spaceId: 'space_456',
title: 'My New Page',
content: {
type: 'doc',
content: [
{
type: 'paragraph',
content: [{ type: 'text', text: 'Hello, world!' }],
},
],
},
});

Page Structure

Content Format

Pages use a ProseMirror-based document format:

{
"type": "doc",
"content": [
{
"type": "heading",
"attrs": { "level": 1 },
"content": [{ "type": "text", "text": "My Heading" }]
},
{
"type": "paragraph",
"content": [{ "type": "text", "text": "Some content." }]
}
]
}

Block Types

BlockDescriptionSlash Command
ParagraphStandard text(default)
HeadingH1, H2, H3/h1, /h2, /h3
Bullet ListUnordered list/bullet
Numbered ListOrdered list/numbered
ChecklistTodo items/checklist
Code BlockSyntax-highlighted code/code
TableData tables/table
ImageEmbedded images/image
CalloutInfo boxes/callout
DividerHorizontal rule/divider

Page Hierarchy

Pages can be nested under other pages:

Moving Pages

Drag and drop pages in the sidebar, or use the API:

await client.pages.move({
pageId: 'page_123',
workspaceId: 'ws_456',
parentId: 'page_789', // New parent
});

Link to other pages using double brackets:

Check out the [[API Reference]] for more details.

Or by page ID:

See [[page:page_123|API Reference]].

View all pages that link to the current page in the page info panel.

Version History

Every page change is tracked:

  • View history in the page menu
  • Compare versions side-by-side
  • Restore previous versions
// Get page history
const history = await client.pages.getHistory({
pageId: 'page_123',
});

// Restore a version
await client.pages.restore({
historyId: 'hist_456',
});

Typed Pages

Pages can optionally be assigned a page type that adds structured metadata and integrates them into the Research Intelligence System.

Page Types

TypePurposeKey Metadata
hypothesisA testable claimformalStatement, predictions, status, domainTags, priority
experimentA test of a hypothesishypothesisId, method, results, status
findingA confirmed resultsource, confidence, domainTags
observationA raw observationcontext, domainTags
noteA research notedomainTags

Typed pages are connected in a knowledge graph with edges like VALIDATES, CONTRADICTS, and EXTENDS, enabling evidence chains and automated pattern detection.

Learn more about Research Intelligence

Page Metadata

FieldDescription
idUnique identifier
titlePage title
slugURL-friendly path
iconEmoji or custom icon
pageTypeOptional type (hypothesis, experiment, finding, observation, note)
metadataStructured metadata (varies by page type)
createdAtCreation timestamp
updatedAtLast modified timestamp
createdByAuthor user ID
parentIdParent page ID (if nested)

Collaboration

Real-time Editing

Multiple users can edit simultaneously:

  • Live cursors show who's editing
  • Changes merge automatically
  • Presence indicators in sidebar

Comments

Add comments to specific text or the whole page:

await client.comments.create({
pageId: 'page_123',
workspaceId: 'ws_456',
text: 'This needs review.',
});

Best Practices

  1. Descriptive titles - Make pages easy to find
  2. Use headings - Structure content for scanning
  3. Link liberally - Connect related content
  4. Keep pages focused - One topic per page
  5. Regular updates - Keep content current