Skip to main content

API Endpoints Overview

OfficePlane exposes a REST API at http://localhost:8001. All endpoints return JSON. The API docs are also available as interactive Swagger at http://localhost:8001/docs.

Base URL

http://localhost:8001

Endpoint Groups

GroupBase PathDescription
Documents/api/documentsUpload, list, read, edit, download, plan, execute, verify
Instances/api/instancesOpen/close document sessions
Tasks/api/tasksQueue management, cancel, retry
Generation/api/generateAsync content generation with SSE
Teams/api/teamsMulti-agent team orchestration
System/health, /metricsHealth checks and Prometheus metrics
Real-time/wsWebSocket for live updates

Authentication

OfficePlane does not currently require authentication for API calls. Authentication and multi-tenancy are on the roadmap.

Common Response Patterns

Success

{
"id": "uuid",
"status": "ok",
...
}

Error

{
"detail": "Document not found",
"status_code": 404
}

Async Job (202 Accepted)

{
"job_id": "gen-abc-123",
"status": "queued",
"stream_url": "/api/generate/gen-abc-123/stream"
}

Quick Reference

MethodEndpointDescription
POST/api/documents/uploadUpload and ingest a document
GET/api/documentsList all documents
GET/api/documents/{id}Get document with hierarchy
DELETE/api/documents/{id}Delete a document
GET/api/documents/{id}/downloadDownload in any format
POST/api/documents/{id}/planGenerate action plan
POST/api/documents/{id}/executeExecute action plan
POST/api/documents/{id}/verifyVerify changes match intent
POST/api/instancesOpen document instance
GET/api/instancesList instances
POST/api/instances/{id}/closeClose instance
POST/api/tasksCreate task
GET/api/tasksList tasks
POST/api/tasks/{id}/cancelCancel task
POST/api/tasks/{id}/retryRetry failed task
POST/api/generateStart generation job
GET/api/generate/{id}/streamSSE stream
GET/api/generate/{id}Job status
DELETE/api/generate/{id}Cancel job
POST/api/teamsStart agent team
GET/api/teams/{id}/streamTeam SSE stream
GET/api/teams/{id}Team status
DELETE/api/teams/{id}Cancel team
GET/healthHealth check
GET/metricsPrometheus metrics