API
Interactive OpenAPI reference for the ActionFlows REST API. Explore endpoints for flows, runs, and authentication with request and response schemas.
API Reference
The ActionFlows API is execution-focused: discover flows and agents you designed in the app, trigger runs, monitor or cancel work (including the run queue), and chat with agents. It does not create, update, or delete flows or agents, and does not expose flow graphs or Studio configuration. All endpoints require authentication using API keys.
Each endpoint page includes a Try it section in the page flow. Open the API Explorer to try every operation from one screen.
Base URL
All API requests should be made to:
https://api.actionflows.aiFor development environments, use your configured API URL.
Authentication
ActionFlows API uses API key authentication. You can authenticate requests using one of the following methods:
Using Authorization Header (Recommended)
Authorization: Bearer YOUR_API_KEYor
Authorization: ApiKey YOUR_API_KEYUsing X-API-Key Header
X-API-Key: YOUR_API_KEYGetting Your API Key
- Log in to your ActionFlows account
- Navigate to your organization settings
- Go to the API Keys section
- Create a new API key
- Copy the key immediately (it won't be shown again)
Important: Keep your API keys secure. Never commit them to version control or expose them in client-side code.
Rate Limiting
API requests are rate-limited per user. If you exceed the rate limit, you'll receive a 429 Too Many Requests response.
Rate limit headers are included in responses:
X-RateLimit-Limit: Maximum number of requests allowedX-RateLimit-Remaining: Number of requests remainingX-RateLimit-Reset: Time when the rate limit resets
Request Format
All requests should use:
- Content-Type:
application/json - Accept:
application/json
Response Format
All API responses follow a consistent format:
Success Response
{
"success": true,
"data": {
// Response data
}
}Error Response
{
"success": false,
"error": "Error message",
"message": "Detailed error description"
}HTTP Status Codes
200 OK- Request succeeded201 Created- Resource created successfully400 Bad Request- Invalid request parameters401 Unauthorized- Authentication required or invalid403 Forbidden- Access denied404 Not Found- Resource not found429 Too Many Requests- Rate limit exceeded500 Internal Server Error- Server error
Locale Support
You can specify the locale for error messages using the X-Locale header:
X-Locale: enSupported locales: en, tr, es, fr, de
Endpoints
Authentication
ActionFlows
Runs
Queue
Action Agents
- get
/api/action-agentsList agents - get
/api/action-agents/{actionAgentId}Get agent - post
/api/action-agents/{actionAgentId}/sessionsStart agent session - post
/api/action-agents/{actionAgentId}/sessions/{sessionId}/messagesSend agent message - get
/api/action-agents/{actionAgentId}/sessions/{sessionId}/streamResume agent session stream
Examples
cURL
curl -X GET https://api.actionflows.ai/api/actionflows \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"JavaScript (Fetch)
const response = await fetch('https://api.actionflows.ai/api/actionflows', {
method: 'GET',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
});
const data = await response.json();Python (requests)
import requests
headers = {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
}
response = requests.get('https://api.actionflows.ai/api/actionflows', headers=headers)
data = response.json()Error Handling
Always check the success field in the response. If success is false, handle the error appropriately:
const response = await fetch('https://api.actionflows.ai/api/actionflows', {
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
},
});
const data = await response.json();
if (!data.success) {
console.error('API Error:', data.error);
console.error('Message:', data.message);
// Handle error
} else {
// Use data.data
console.log('Flows:', data.data);
}Support
For API support, please contact [email protected] or visit our documentation.
send_action_agent_message
Send a user message to an Action Agent session and wait for the completed assistant reply. Non-streaming.
API Introduction
Introduction to the ActionFlows REST API: discover flows and agents, run flows, monitor or cancel runs, and chat with agents. Design graphs and Studio config in the app.