Build AI coaching agents, training integrations, and automations with the Flow State Endurance API.
Go to Settings → API Keys and create a new key. Copy it — you'll only see it once.
Keys are prefixed with fse_live_ and are 41 characters long.
curl -H "Authorization: Bearer fse_live_YOUR_KEY" \
"https://reachflowstate.ai/api/v1/athletes/me"All endpoints are under https://reachflowstate.ai/api/v1/. Responses follow a consistent { data, meta? } format. Errors return { error: { code, message } }.
All requests require a Bearer token in the Authorization header:
Authorization: Bearer fse_live_abc123def456...Keys have scopes that control access:
read — GET endpoints (workouts, events, athlete profile, recovery)write — POST/PUT/DELETE endpoints (create, update, delete resources)Planning API uses a separate PLANNING_API_KEY — see the Planning API section below.
Rate limits use a sliding window per API key:
Every response includes rate limit headers:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 97
X-RateLimit-Reset: 42When exceeded, you'll receive a 429 with a Retry-After header (seconds).
The Planning API powers the Kanban board and is designed for AI agents (Claude, GPT, etc.) and automations. It uses a separate PLANNING_API_KEY for authentication.
The tool schema provides ready-to-use function definitions for Claude, GPT, and other LLM frameworks.
{
"mcpServers": {
"flowstate": {
"command": "npx",
"args": ["-y", "@anthropic/openapi-to-mcp", "--spec", "https://reachflowstate.ai/openapi.json"]
}
}
}Each tool in tool-schema.json maps directly to { type: "function", function: { name, description, parameters } }.