Automated Swagger / OpenAPI 2.0 Specification
REST API Reference
Interact programmatically with the NexFlux Platform. All endpoints use standard HTTP methods, return JSON formatted payloads, and support API Key authentication.
API Authentication
Authenticate developer requests using Bearer API Tokens in HTTP headers.
Authorization: Bearer nexflux_api_key_xxxxxxxxxxxxxAI Studio
16 endpointspost/api/v1/ai-studio/actions/debug-help— Get debugging help
post/api/v1/ai-studio/actions/design-circuit— Design circuit with AI
post/api/v1/ai-studio/actions/generate-code— Generate code with AI
post/api/v1/ai-studio/actions/get-ideas— Get project ideas
get/api/v1/ai-studio/content— List generated content
delete/api/v1/ai-studio/content/{id}— Delete generated content
post/api/v1/ai-studio/content/{id}/save— Save content to project
get/api/v1/ai-studio/context/project/{id}— Get project context for AI
get/api/v1/ai-studio/recommendations/components— Get component recommendations
get/api/v1/ai-studio/sessions— List AI chat sessions
post/api/v1/ai-studio/sessions— Create new AI chat session
get/api/v1/ai-studio/sessions/{id}— Get AI chat session with messages
put/api/v1/ai-studio/sessions/{id}— Update AI chat session
delete/api/v1/ai-studio/sessions/{id}— Delete AI chat session
post/api/v1/ai-studio/sessions/{id}/messages— Send message to AI
get/api/v1/ai-studio/usage/stats— Get AI usage stats
AI Vision Proxy
6 endpointsget/ai-vision/component-types— Get supported component types
get/ai-vision/health— Check AI service health
get/ai-vision/models— Get available models
post/ai-vision/proxy/chat— Send chat message
post/ai-vision/proxy/detect— Detect components in image
post/ai-vision/proxy/validate— Validate lab step
Boards
2 endpointsget/boards/dropdown— Get boards for dropdown (public)
get/boards/platforms— Get platform options (public)
CMS
3 endpointsget/cms/app— Get App CMS content for Help, Docs, Upgrade pages
get/cms/content— Get all CMS content for landing page
get/cms/content/{section}— Get single CMS section for landing page
Challenges
7 endpointsget/challenges— List challenges
get/challenges/daily— Get today's daily challenge
get/challenges/progress— Get my challenge progress
get/challenges/{id}— Get challenge details
put/challenges/{id}/progress— Update challenge progress
post/challenges/{id}/start— Start a challenge
post/challenges/{id}/submit— Submit challenge completion
Circuits
10 endpointsget/circuits— List user's circuits
post/circuits— Create new circuit
get/circuits/templates— List circuit templates
post/circuits/templates/{id}/use— Use circuit template
get/circuits/{id}— Get circuit detail
put/circuits/{id}— Update circuit
delete/circuits/{id}— Delete circuit
post/circuits/{id}/duplicate— Duplicate circuit
get/circuits/{id}/export— Export circuit
post/circuits/{id}/thumbnail— Upload circuit thumbnail
Community
24 endpointsput/community/answers/{id}— Update an answer
delete/community/answers/{id}— Delete an answer
post/community/answers/{id}/accept— Accept an answer
get/community/answers/{id}/comments— Get paginated comments for an answer
post/community/answers/{id}/report— Report an answer
post/community/answers/{id}/vote— Vote on an answer
get/community/posts— List forum posts
post/community/posts— Create a new post
get/community/posts/{id}— Get post detail
put/community/posts/{id}— Update a post
delete/community/posts/{id}— Delete a post
get/community/posts/{id}/answers— Get paginated answers for a post
post/community/posts/{id}/answers— Create an answer
post/community/posts/{id}/bookmark— Toggle bookmark on a post
post/community/posts/{id}/close— Close a post
post/community/posts/{id}/report— Report a post
post/community/posts/{id}/view— Increment post view count
post/community/posts/{id}/vote— Vote on a post
get/community/stats— Get forum statistics
get/community/tags— List all tags
get/community/tags/{slug}— Get tag with posts
get/community/users/me/bookmarks— Get user's bookmarks
get/community/users/top— Get top contributors
get/community/users/{id}/posts— Get user's posts
Components
9 endpointsget/components— List components
get/components/categories— Get component categories
get/components/favorites— Get favorite components
post/components/request— Request new component
post/components/request/batch— Request multiple new components
get/components/requests— Get my component requests
get/components/search— Search components
get/components/{id}— Get component details
post/components/{id}/favorite— Toggle component favorite
Documentation
10 endpointsget/docs/articles— List articles
get/docs/articles/featured— Get featured articles
get/docs/articles/popular— Get popular articles
get/docs/articles/{slug}— Get article details
post/docs/articles/{slug}/view— Record article view
get/docs/categories— Get documentation categories
get/docs/categories/{slug}— Get category details
get/docs/search— Search documentation
get/docs/videos— List video tutorials
get/docs/videos/{id}— Get video details
Gamification
6 endpointsget/achievements— Get all achievements
get/achievements/user— Get my achievements
get/leaderboard— Get leaderboard
get/streak— Get streak info
post/streak/repair— Repair broken streak
get/users/me/stats— Get user stats
Health
3 endpointsget/health— Full health check endpoint
get/ping— Simple health check
get/ready— Readiness check
Integrations
16 endpointsget/users/me/integrations— Get all integrations
get/users/me/integrations/arduino-cloud— Get Arduino Cloud integration
put/users/me/integrations/arduino-cloud— Connect Arduino Cloud
delete/users/me/integrations/arduino-cloud— Disconnect Arduino Cloud
get/users/me/integrations/blynk— Get Blynk integration
put/users/me/integrations/blynk— Connect Blynk
delete/users/me/integrations/blynk— Disconnect Blynk
get/users/me/integrations/github— Get GitHub integration
delete/users/me/integrations/github— Disconnect GitHub
put/users/me/integrations/github/settings— Update GitHub settings
get/users/me/integrations/google— Get Google integration
delete/users/me/integrations/google— Disconnect Google
get/users/me/integrations/mqtt— Get MQTT configuration
put/users/me/integrations/mqtt— Save MQTT configuration
delete/users/me/integrations/mqtt— Delete MQTT configuration
post/users/me/integrations/mqtt/test— Test MQTT connection
Labs
16 endpointsget/labs— List available labs
get/labs/session/active— Get active session
post/labs/session/force-end— Force end active session
get/labs/session/history— Get session history
get/labs/slug/{slug}— Get lab details by slug
get/labs/{id}— Get lab details
post/labs/{id}/actuators/control— Control actuator
get/labs/{id}/code/status/{compilation_id}— Get compilation status
post/labs/{id}/code/submit— Submit code for compilation
post/labs/{id}/queue— Join lab queue
delete/labs/{id}/queue— Leave lab queue
get/labs/{id}/queue/status— Get queue status
get/labs/{id}/sensors— Get sensor data
post/labs/{id}/serial— Send serial command
post/labs/{id}/session/end— End lab session
post/labs/{id}/session/start— Start lab session
Labs WebSocket
1 endpointget/ws/labs/{id}— WebSocket connection for lab
LiveKit
3 endpointsget/livekit/health— Check LiveKit health
get/livekit/labs/:lab_id/token— Get token for lab room
post/livekit/token— Generate LiveKit access token
Projects
19 endpointsget/projects— List user's projects
post/projects— Create new project
get/projects/templates— Get project templates
get/projects/{id}— Get project details
put/projects/{id}— Update project
delete/projects/{id}— Delete project
get/projects/{id}/code— Get project code data
put/projects/{id}/code— Save project code
get/projects/{id}/collaborators— Get project collaborators
post/projects/{id}/collaborators— Add collaborator to project
delete/projects/{id}/collaborators/{userId}— Remove collaborator from project
post/projects/{id}/complete— Complete project
post/projects/{id}/duplicate— Duplicate project
put/projects/{id}/favorite— Toggle project favorite
get/projects/{id}/progress— Get project progress detail
put/projects/{id}/progress— Update project progress
get/projects/{id}/schema— Get project schema data
put/projects/{id}/schema— Save project schema/circuit data
post/projects/{id}/simulate— Run project simulation
Simulations
10 endpointsget/simulations— List user's simulations
post/simulations— Create new simulation
get/simulations/stats— Get simulation statistics
get/simulations/{id}— Get simulation detail
put/simulations/{id}— Update simulation
delete/simulations/{id}— Delete simulation
post/simulations/{id}/result— Save simulation result
post/simulations/{id}/run— Run simulation
get/simulations/{id}/runs— Get simulation run history
post/simulations/{id}/stop— Stop simulation