opencode HttpApi
Experimental HttpApi surface for selected instance routes.
health
server
location
agent
plugin
Experimental plugin routes.
session
Experimental message routes.
- GETList sessions
/api/session - POSTCreate session
/api/session - GETList active sessions
/api/session/active - GETGet session
/api/session/{sessionID} - DELETEDelete session
/api/session/{sessionID} - POSTFork session
/api/session/{sessionID}/fork - POSTSwitch session agent
/api/session/{sessionID}/agent - POSTSwitch session model
/api/session/{sessionID}/model - POSTRename session
/api/session/{sessionID}/rename - POSTMove session
/api/session/{sessionID}/move - POSTSend message
/api/session/{sessionID}/prompt - POSTRun command
/api/session/{sessionID}/command - POSTActivate skill
/api/session/{sessionID}/skill - POSTAdd synthetic message
/api/session/{sessionID}/synthetic - POSTRun shell command
/api/session/{sessionID}/shell - POSTCompact session
/api/session/{sessionID}/compact - POSTWait for session
/api/session/{sessionID}/wait - POSTStage session revert
/api/session/{sessionID}/revert/stage - POSTClear staged revert
/api/session/{sessionID}/revert/clear - POSTCommit staged revert
/api/session/{sessionID}/revert/commit - GETGet session context
/api/session/{sessionID}/context - GETList instruction entries
/api/session/{sessionID}/instructions/entries - PUTPut instruction entry
/api/session/{sessionID}/instructions/entries/{key} - DELETERemove instruction entry
/api/session/{sessionID}/instructions/entries/{key} - GETRead the session log
/api/experimental/session/{sessionID}/log - POSTInterrupt session execution
/api/session/{sessionID}/interrupt - POSTBackground blocking session tools
/api/session/{sessionID}/background - GETGet session message
/api/session/{sessionID}/message/{messageID} - GETGet session messages
/api/session/{sessionID}/message
model
Experimental model routes.
generate
Experimental one-shot generation routes.
provider
Experimental provider routes.
integration
Integration discovery and authentication routes.
- GETList integrations
/api/integration - GETGet integration
/api/integration/{integrationID} - POSTConnect with key
/api/integration/{integrationID}/connect/key - POSTBegin OAuth connection
/api/integration/{integrationID}/connect/oauth - GETGet OAuth attempt status
/api/integration/attempt/{attemptID} - DELETECancel OAuth connection
/api/integration/attempt/{attemptID} - POSTComplete OAuth connection
/api/integration/attempt/{attemptID}/complete
mcp
MCP server and resource routes.
credential
- DELETERemove credential
/api/credential/{credentialID} - PATCHUpdate credential
/api/credential/{credentialID}
project
Location-scoped project routes.
- GETList projects
/api/project - GETGet current project
/api/project/current - GETList project directories
/api/project/{projectID}/directories
form
Session form routes.
- GETList pending form requests
/api/form/request - GETList session forms
/api/session/{sessionID}/form - POSTCreate session form
/api/session/{sessionID}/form - GETGet session form
/api/session/{sessionID}/form/{formID} - GETGet form state
/api/session/{sessionID}/form/{formID}/state - POSTReply to form
/api/session/{sessionID}/form/{formID}/reply - POSTCancel form
/api/session/{sessionID}/form/{formID}/cancel
permission
Experimental permission routes.
- GETList pending permission requests
/api/permission/request - GETList saved permissions
/api/permission/saved - DELETERemove saved permission
/api/permission/saved/{id} - GETList session permission requests
/api/session/{sessionID}/permission - POSTCreate permission request
/api/session/{sessionID}/permission - GETGet permission request
/api/session/{sessionID}/permission/{requestID} - POSTReply to pending permission request
/api/session/{sessionID}/permission/{requestID}/reply
filesystem
Experimental location-scoped filesystem routes.
command
Experimental command routes.
skill
Experimental skill routes.
event
Experimental event stream routes.
pty
Experimental location-scoped PTY routes.
- GETList PTY sessions
/api/pty - POSTCreate PTY session
/api/pty - GETGet PTY session
/api/pty/{ptyID} - PUTUpdate PTY session
/api/pty/{ptyID} - DELETERemove PTY session
/api/pty/{ptyID} - POSTCreate PTY WebSocket token
/api/pty/{ptyID}/connect-token - GETConnect to PTY session
/api/pty/{ptyID}/connect
shell
Experimental location-scoped shell command routes.
- GETList running shell commands
/api/shell - POSTRun shell command
/api/shell - GETGet shell command
/api/shell/{id} - DELETERemove shell command
/api/shell/{id} - PATCHUpdate shell timeout
/api/shell/{id}/timeout - GETRead shell output
/api/shell/{id}/output
question
Experimental session question routes.
- GETList pending question requests
/api/question/request - GETList session question requests
/api/session/{sessionID}/question - POSTReply to pending question request
/api/session/{sessionID}/question/{requestID}/reply - POSTReject pending question request
/api/session/{sessionID}/question/{requestID}/reject
reference
Location-scoped project references.
projectCopy
Project copy management routes.
- POST/experimental/project/{projectID}/copy
- DELETE/experimental/project/{projectID}/copy
- POST/experimental/project/{projectID}/copy/refresh
vcs
Location-scoped version control routes.