Skip to main content
The Output Framework API server provides endpoints for executing workflows and managing their lifecycle.

Base URL

http://localhost:3001
The API server runs locally when you start development with output dev.

Authentication

API requests require a Bearer token in the Authorization header:
curl -H "Authorization: Bearer $API_AUTH_TOKEN" \
  https://api.example.com/workflow
Set the API_AUTH_TOKEN environment variable in your .env file.

Execute Workflow

Start a new workflow execution.
workflowName
string
required
Name of the workflow to execute
input
object
required
Input data matching the workflow’s input schema
curl -X POST http://localhost:3001/workflow \
  -H "Content-Type: application/json" \
  -d '{
    "workflowName": "summarize",
    "input": {
      "text": "Your content to summarize"
    }
  }'

Response

{
  "workflowId": "summarize-abc123",
  "status": "RUNNING"
}

List Workflows

Get all available workflows.
curl http://localhost:3001/workflow/list

Response

{
  "workflows": [
    {
      "name": "summarize",
      "description": "Summarize text content"
    },
    {
      "name": "classify",
      "description": "Classify text into categories"
    }
  ]
}

Webhook Feedback

Resume a workflow waiting on a webhook.
workflowId
string
required
The workflow execution ID
payload
object
required
Response data to resume the workflow with
curl -X POST http://localhost:3001/workflow/feedback \
  -H "Content-Type: application/json" \
  -d '{
    "workflowId": "summarize-abc123",
    "payload": {
      "approved": true,
      "feedback": "Looks good"
    }
  }'

Using the CLI

List workflows with the Output CLI:
# Simple list
output workflow list

# Detailed table view
output workflow list --format table

# JSON format
output workflow list --format json

# Filter by name
output workflow list --filter summarize