| name | outline |
| description | Read, create, update, and search documents in the Outline wiki. Use when the user asks about documentation, knowledge base, wiki pages, team docs, or wants to save/retrieve information from Outline. |
Outline Wiki API
Read and write documents in the Outline wiki.
Authentication
All requests use Bearer token auth. The OUTLINE_API_KEY env var must be set.
curl -s -X POST "$OUTLINE_URL/api/<endpoint>" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OUTLINE_API_KEY"
Key Endpoints
Search documents
curl -s -X POST "$OUTLINE_URL/api/documents.search" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OUTLINE_API_KEY" \
-d '{"query": "search terms"}'
List documents
curl -s -X POST "$OUTLINE_URL/api/documents.list" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OUTLINE_API_KEY" \
-d '{}'
Get a document by ID
curl -s -X POST "$OUTLINE_URL/api/documents.info" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OUTLINE_API_KEY" \
-d '{"id": "DOCUMENT_ID"}'
Create a document
curl -s -X POST "$OUTLINE_URL/api/documents.create" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OUTLINE_API_KEY" \
-d '{
"title": "Document Title",
"text": "Markdown content here",
"collectionId": "COLLECTION_ID",
"publish": true
}'
Update a document
curl -s -X POST "$OUTLINE_URL/api/documents.update" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OUTLINE_API_KEY" \
-d '{
"id": "DOCUMENT_ID",
"title": "Updated Title",
"text": "Updated markdown content"
}'
Delete a document
curl -s -X POST "$OUTLINE_URL/api/documents.delete" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OUTLINE_API_KEY" \
-d '{"id": "DOCUMENT_ID"}'
List collections
curl -s -X POST "$OUTLINE_URL/api/collections.list" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OUTLINE_API_KEY" \
-d '{}'
Create a collection
curl -s -X POST "$OUTLINE_URL/api/collections.create" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OUTLINE_API_KEY" \
-d '{"name": "Collection Name", "description": "Optional description"}'
Notes
- All endpoints use POST (even reads)
- Content is Markdown format
- Documents belong to collections
- Set
OUTLINE_URL to your instance (e.g., http://127.0.0.1:3010 or your Tailscale URL)
- Full API reference: https://www.getoutline.com/developers