Skip to main content
Flux exposes a FastAPI REST API (version 2.0.0) mounted at /api. The same process that serves the React frontend also serves the API, so no separate backend port is needed. Interactive Swagger documentation is automatically generated and available at /docs. Every route except /api/health requires an authenticated session.

Base URL

The API is served by the same process as the React frontend on port 8765 by default. The host and port are controlled by the FLUX_HOST and FLUX_PORT environment variables.

Authentication

All authenticated routes require a valid session. In production, Flux uses Microsoft Entra Easy Auth — App Service validates the token and injects claims that Flux decodes into reader or admin roles. In development, a mock administrator session is active with no Entra configuration required. See Authentication for the full identity model, role definitions, environment variables, and session response shape.

Response Format

All endpoints return JSON unless explicitly noted:
  • JSON — all standard data endpoints
  • CSV — export endpoints (filterable, injection-safe with ' prefix guard)
  • XLSX — export endpoints that accept ?format=xlsx (includes a Metadata sheet with generation time, snapshot version, and active filters)

Error Responses

When DuckDB is locked by a long-running synchronization write, all analytical read endpoints return 503 with a Retry-After header rather than hanging indefinitely. Retry after the indicated number of seconds.

Endpoint Index

Health & Session

Inventory & Changes

Cost Anomalies

Reports

Cost & FOCUS

Workload & Governance

Catalog

Fiscal Outlook

Commitments & Savings

Budgets

Virtual Tags

Allocation & Tag Hygiene

Executive Summary

Evidence

Right-Sizing Recommendations

Opportunities

Azure Integration

Intelligence

Semantic Layer & Expert Explorer

Operations Health

Administration

Remediation

Additional endpoints exist for virtual tags, the governed semantic layer, and remediation workflows. See their respective dedicated pages for full parameter documentation and examples. Interactive API documentation with a live try-it-out interface is also available at /docs.