Skip to main content
The Fibonacci REST API allows you to programmatically manage workflows, execute them, and interact with the Fibonacci platform.

Base URL

https://api.fibonacci.dev/v1

Authentication

All API requests require authentication via API key:
curl https://api.fibonacci.dev/v1/workflows \
  -H "Authorization: Bearer YOUR_API_KEY"
Get your API key from the Fibonacci Dashboard.

Quick Reference

Workflows

MethodEndpointDescription
GET/workflowsList all workflows
POST/workflowsCreate a workflow
GET/workflows/{name}Get workflow details
PUT/workflows/{name}Update a workflow
DELETE/workflows/{name}Delete a workflow

Execution

MethodEndpointDescription
POST/workflows/{name}/executeExecute a workflow
GET/executions/{id}Get execution status
GET/executionsList executions
POST/executions/{id}/cancelCancel execution

Memory

MethodEndpointDescription
GET/memory/{key}Get memory value
PUT/memory/{key}Set memory value
DELETE/memory/{key}Delete memory value

Tools

MethodEndpointDescription
GET/toolsList available tools
GET/tools/{name}Get tool details
POST/tools/{name}/connectConnect a tool

Request Format

All requests should include:
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY

Response Format

Successful responses return JSON:
{
  "data": { ... },
  "meta": {
    "request_id": "req_abc123"
  }
}
Error responses:
{
  "error": {
    "code": "validation_error",
    "message": "Invalid input",
    "details": [...]
  }
}

Rate Limits

PlanRequests/minuteRequests/day
Free601,000
Pro30050,000
EnterpriseCustomCustom
Rate limit headers are included in responses:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 45
X-RateLimit-Reset: 1706054400

SDKs

We recommend using our official SDKs:
  • Python: pip install fibonacci-sdk
  • Node.js: npm install @fibonacci/sdk (coming soon)

Example: Execute a Workflow

curl -X POST https://api.fibonacci.dev/v1/workflows/my-workflow/execute \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "inputs": {
      "text": "Analyze this text"
    }
  }'
Response:
{
  "data": {
    "execution_id": "exec_abc123",
    "status": "completed",
    "outputs": {
      "analyzer": "The text sentiment is positive..."
    },
    "duration_ms": 1523
  }
}