FlowDot API Reference - Developer Documentation
TL;DR — Two APIs, pick the one that matches your use case:
- LLM Aggregator (OpenAI-compatible):
https://flowdot.ai/api/v1withBearer fd_agg_…. Point any OpenAI SDK at it. Use nested model IDs likeopenai/gpt-4o-mini,anthropic/claude-sonnet-4-6,redpill/google/gemini-2.5-flash-lite. See the aggregator guide. - Platform / MCP API:
https://flowdot.ai/api/mcp/v1and/api/hub/*withBearer fd_mcp_…. For workflow execution, custom nodes, apps, knowledge base, etc. - Get a key: open any app page → click the settings gear (top-right) → FlowDot API Keys tab (for
fd_agg_).fd_mcp_tokens live under Settings → MCP Tokens. - OpenAPI spec: /api/learn-center/openapi.json
FlowDot exposes two REST APIs. The LLM Aggregator API is a drop-in replacement for OpenAI's API — same shape, one key, every model (OpenAI, Anthropic, Google, Redpill, OpenRouter, and more) addressable via nested model IDs. The Platform API lets you integrate FlowDot workflows, custom nodes, apps, and knowledge-base features into your own systems.
Authentication
FlowDot issues three kinds of credentials. Use the one that matches the API you're calling:
fd_agg_ — LLM Aggregator keys
For the OpenAI-compatible aggregator at /api/v1/*. Create one in the app: click the settings gear (top-right of any app page) → FlowDot API Keys tab → Create Key. The plaintext key is shown once at creation — copy it immediately.
Authorization: Bearer fd_agg_xxxxxxxxxxxxx
fd_mcp_ — Platform / MCP tokens
For /api/mcp/v1/* and /api/hub/* (workflows, apps, custom nodes, knowledge base). Create in the settings modal (gear icon, top-right) → MCP Tokens tab.
Authorization: Bearer fd_mcp_xxxxxxxxxxxxx
Session cookies — web dashboard only
The /api/aggregator/keys/* and /api/user/credits/* endpoints are gated by auth:sanctum session cookies. They power the web UI — not callable from third-party integrations.
Example — aggregator chat completion
curl https://flowdot.ai/api/v1/chat/completions \
-H "Authorization: Bearer fd_agg_xxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{"model":"openai/gpt-4o-mini","messages":[{"role":"user","content":"Hi"}]}'
Example — platform (workflow list)
curl -X GET "https://flowdot.ai/api/mcp/v1/workflows" \
-H "Authorization: Bearer fd_mcp_xxxxxxxxxxxxx" \
-H "Content-Type: application/json"
Settings Modal — where each thing lives
All per-user configuration lives in one settings modal. Open any app page (Dashboard, Workflows, Agent, etc.) and click the settings gear icon in the top-right. The modal has these tabs:
| Tab | What it does |
|---|---|
| FlowDot Credits | Credit balance, transaction history, buy credits. |
| FlowDot API Keys | fd_agg_… keys for the OpenAI-compatible aggregator API (/api/v1/*). |
| MCP Tokens | fd_mcp_… tokens for the Platform / MCP API (/api/mcp/v1/*, /api/hub/*). |
| Notifications | Notification preferences. |
| LLM BYOK | Your own provider API keys (OpenAI, Anthropic, Google, etc.). Calls that resolve to a BYOK provider skip FlowDot credits. |
| Audio BYOK | Same idea, for TTS / STT providers. |
| Preferred Models | Default model choices for the Simple / Capable / Complex tiers used by LLM nodes. |
| Research | Deep-research / web-research preferences. |
Base URLs
fd_agg_fd_mcp_API Reference
Workflows
Executions
Settings & Configuration
Agent Conversations
Teams
FlowDot Apps
Authentication
OAuth & SSO
Live Agent
Audio Providers
LLM Providers
Files
Custom Nodes
Agent Toolkits (MCP)
Knowledge Base & RAG
Learn Center
LLM Aggregator API
Error Codes
The API uses standard HTTP status codes. Here are common errors you may encounter:
| Status | Code | Description |
|---|---|---|
| 400 | bad_request |
The request was invalid or malformed. This usually means required parameters are missing or have invalid values. |
| 401 | unauthorized |
Authentication is required but was not provided or is invalid. |
| 401 | INVALID_AGGREGATOR_KEY |
The Bearer token passed to an /api/v1/* endpoint is missing, malformed, revoked, or does not start with fd_agg_. |
| 401 | AUTH_ERROR |
Authentication failed during a Live Agent session. |
| 401 | invalid_credentials |
The email or password provided is incorrect. |
| 402 | INSUFFICIENT_CREDITS |
The estimated cost of the request (including a 20% safety buffer) exceeds the user's available credit balance. Returned by /api/v1/* calls funded via the FlowDot credits path. |
| 403 | forbidden |
You don't have permission to access this resource. |
| 404 | not_found |
The requested resource could not be found. |
| 408 | SESSION_EXPIRED |
Your Live Agent session has timed out. |
| 410 | token_expired |
The authentication token has expired. |
| 422 | validation_error |
The request data failed validation checks. |
| 429 | rate_limited |
You've exceeded the rate limit for this endpoint. |
| 429 | LIVE_007 |
You've exceeded the maximum number of concurrent Live Agent sessions (2 per user). |
| 429 | MODEL_RATE_LIMITED |
The upstream provider for the selected model has rate-limited the request. Check the Retry-After header. |
| 500 | internal_error |
An unexpected error occurred on the server. |
| 500 | TTS_ERROR |
Failed to generate audio from text in the Live Agent. |
| 500 | STT_ERROR |
Failed to transcribe audio in the Live Agent. |
| 500 | LLM_ERROR |
The AI language model provider returned an error. |
| 502 | UPSTREAM_PROVIDER_ERROR |
The upstream provider (OpenAI, Anthropic, Google, Redpill, OpenRouter, etc.) returned a 5xx or otherwise failed. Credit is not deducted for failed upstream calls. |
OpenAPI Specification
Download the OpenAPI 3.0 spec for use with Postman, Insomnia, or code generators.
FlowDot API Capabilities
The FlowDot API provides programmatic access to all core platform features. Here's what you can build:
Workflow Management
- List all workflows in your account
- Get workflow details and configuration
- Execute workflows programmatically
- Clone and duplicate workflows
- Manage workflow visibility (public/private)
Custom Nodes
- Create custom nodes with JavaScript
- Define input and output sockets
- Add configurable properties
- Share nodes publicly or keep private
- Version control for node updates
App Development
- Create React-based frontend apps
- Link apps to backend workflows
- Multi-file app architecture support
- Publish apps to the marketplace
- Clone and customize existing apps
Execution & Monitoring
- View execution history and logs
- Monitor workflow performance metrics
- Stream real-time execution results
- Share execution results publicly
- Create input presets for quick testing
API Best Practices
Follow these guidelines to build robust integrations with the FlowDot API:
Authentication Security
- Store API tokens securely using environment variables
- Never expose tokens in client-side JavaScript code
- Rotate tokens periodically for enhanced security
- Use separate tokens for development and production
- Revoke compromised tokens immediately in the dashboard
Error Handling
- Implement exponential backoff for rate limit (429) errors
- Parse error response bodies for detailed messages
- Log failed requests for debugging purposes
- Handle network timeouts gracefully with retries
- Validate input data before making API calls
Performance Optimization
- Use pagination for large result sets
- Cache workflow data when possible
- Batch multiple operations when available
- Use async execution for long-running workflows
- Monitor API usage to stay within rate limits
Integration Patterns
- Use webhooks for real-time workflow completion notifications
- Implement idempotency for workflow execution requests
- Store workflow IDs instead of duplicating configurations
- Use input presets for repeatable test scenarios
- Version your integration code alongside API updates
SDKs and Developer Tools
FlowDot provides tools to accelerate your API integration:
MCP Server
Connect FlowDot to AI assistants like Claude and Cursor using the Model Context Protocol.
- npm install:
npx "@flowdot.ai/mcp-server" - Works with Claude Desktop, Cursor IDE
- Execute workflows from AI conversations
OpenAPI Specification
Download the OpenAPI 3.0 spec for client generation and API exploration.
- Compatible with Postman and Insomnia
- Generate client SDKs in any language
- Interactive API documentation
Frequently Asked Questions
What is the FlowDot API base URL?
The FlowDot API base URL is https://flowdot.ai/api/mcp/v1 for all production API requests.
How do I get an API token?
Open any app page, click the settings gear (top-right), go to the MCP Tokens tab, and click Generate New Token. Your token will start with fd_mcp_.
What authentication method does the API use?
The FlowDot API uses Bearer token authentication. Include your token in the Authorization header: Authorization: Bearer fd_mcp_xxxxxxxxxxxxx
What are the API rate limits?
Rate limits vary by plan: Free tier allows 60 requests/minute, Pro allows 300 requests/minute, and Enterprise has custom limits. When rate limited, you'll receive a 429 status code.
How do I handle API errors?
The API returns standard HTTP status codes: 400 (Bad Request), 401 (Unauthorized), 403 (Forbidden), 404 (Not Found), 429 (Rate Limited), and 500 (Server Error). All error responses include a JSON body with details.
Can I execute workflows via the API?
Yes, use the POST /workflows/{id}/execute endpoint to run any workflow programmatically. You can pass input values and receive execution results synchronously or asynchronously.
Does FlowDot have an MCP integration?
Yes, FlowDot provides a Model Context Protocol (MCP) server that lets AI assistants like Claude execute your workflows. Install with npx "@flowdot.ai/mcp-server".