Docs/API Reference/API Surface Overview

API Surface Overview

Base URL
http://localhost:8080 locally; https://api.<your-domain> behind the Compose domain overlay or a Helm ingress. Identity provider: http://localhost:8180 or https://auth.<your-domain>.
Style
JSON over HTTPS REST, Spring MVC controllers in core/*; streaming endpoints use text/event-stream.
Auth
Keycloak-issued bearer JWT by default; a small, explicit set of paths use other credentials. See Authentication & Authorization.
Scale
207 @RestController classes under core/**/src/main/java (counted by source scan, 2026-09-26). Not a generated OpenAPI spec: none exists in the repository.
How to read this page
Base paths and controller class names below were extracted from the @RequestMapping annotations in source. Per-endpoint verbs, request and response bodies are documented only on the pages where the controller was read in full (Streaming, Webhooks, Developer API). For every other area consult the controller named in the table.

Conventions

Route map by area

"Ann." is the number of @Get/Post/Put/Patch/DeleteMapping annotations in the named controller(s), per source scan.

Agents and runtime

Base pathControllerAnn.Notes
/api/agentsAgentController42CRUD, config patches, memories, tool-calls; POST /{agentId}/chat is SSE.
/api/agents/{agentId}/aguiAgUiRunController3AG-UI run, rejoin, tools. See Streaming.
/api/agents/{agentId}/{schedule,triggers,versions,experiments,quality,share,improvements,guardrails}AgentScheduleController, AgentEventTriggerController, AgentVersionController, AgentExperimentController, QualityController (+ dataset/gate/simulation controllers), AgentShareOwnerController, AgentImprovementController, AgentGuardrailController—Per-agent sub-resources.
/api/a2a, /api/agents/{agentId}/a2a, /.well-known/agent-card.jsonA2aJsonRpcController, A2aAgentCardController2 + 3A2A JSON-RPC and cards. See Developer API.
/api/workflowsWorkflowController30CRUD, /run, runs list/get/cancel/pause/resume, schedule, node webhook, diagram.
/api/workflows/{id}/{share}, /api/workflows/input-requests, …/versionsWorkflowShareOwnerController, WorkflowInputRequestController, WorkflowVersionController3 / 3 / 5Sharing, human-input requests, versions.
/api/approvalsApprovalController5Approval inbox (Postman: list, get, approve, reject).
/api/briefsBriefController, BriefLifecycleController, BriefProofController8 / 8 / 4Brief-to-agent planning; POST /plan is SSE.
/api/tools/{code,openapi,scripts,classifications}, /api/mcp/registry, /api/mcp/registrationsCustomCodeToolController, OpenApiToolSourceController, UserToolScriptController, McpRegistryController, McpRegistrationTestController8 / 10 / 6 / 8 / 2Tool sources and MCP client registry.

Knowledge, providers and quality

Base pathControllerAnn.
/api/knowledge, /knowledge/collections, /knowledge/connectors, /knowledge/jobs, /knowledge/ocr-providerKnowledgeController, KnowledgeCollectionController, KnowledgeConnectorController, KnowledgeIngestionJobController, OcrProviderConfigController8 / 8 / 5 / 1 / 3
/api/providers, /api/capabilities, /api/model-pricing, /api/completionsProviderController, CapabilityController, ModelPricingController, FimCompletionController7 / 6 / 2 / 1
/api/rl, /api/guardrails/rules, /api/moderation/review, /api/audit-logRlController, GuardrailRuleController, ModerationReviewController, AuditLogController7 / 5 / 5 / 2
/api/code-intelCodeIntelController24

Channels and omnichannel

Base pathController(s)
/api/channels/{twilio,telegram,slack,discord,teams,email,meta-whatsapp,meta-social,x}/credential*CredentialController per channel (BYOK credential writes; admin-gated)
/api/channels/{whatsapp,telegram,slack,discord,teams,email,social,x} send routes, /api/channels/voice, /pairing, /contacts, /routing, /status, /healthWhatsAppSendController, TelegramSendController, SlackSendController, VoiceChannelController, ChannelPairingController, ChannelContactController, ChannelRoutingController, ChannelStatusController, ChannelHealthController and siblings
/api/handoff, /api/leads, /api/email/messagesOperatorInboxController, LeadController, EmailMessageController
/webhook/** (inbound)See Webhooks & Callbacks

Tenant, billing and administration

Base pathController(s)
/api/signup, /api/me, /api/account, /api/session, /api/auth/social-providersTenantSignupController, MeController, AccountController, SessionConfigController, SocialAuthConfigController
/api/tenant/{settings,sso,subscription,upgrade,invoices,billing-profile,resolutions,data-export,data-deletion,data-usage,feature-flags,referral,trial,branding}TenantSettingsController, TenantSsoController, TenantSubscriptionController, TenantUpgradeController, InvoiceController, ResolutionController, TenantDataController, TenantDataUsageController and siblings
/api/payments, /api/budget/top-up, /api/commerce/feed, /api/tenant/commerce/productsPaymentController, BudgetTopUpController, ProductFeedController, ProductCatalogController
/api/admin/{users,templates,llm-usage,spend-reports,issues}, /scim/v2UserAdminController, AdminTemplateController, LlmCallLogController, SpendReportController, PlatformIssueController, ScimProvisioningController
/api/platform/** (platform-admin only)PlatformController (48 ann.), AbuseMonitorController, ModerationController, PlanLimitsController, PlatformToolCredentialController, TenantDeletionController, NewsletterController, DemoSandboxController
/api/secrets, /api/webhooks, /api/mcpserver/grants, /api/dev/v1SecretVaultController, WebhookSubscriptionController, McpServerAccessController, DeveloperApiController

Public, anonymous and device surfaces

Base pathCredentialController(s)
/api/demo/**X-Demo-Token header (sandbox)DemoSessionController, DemoChatController, DemoStudioController, DemoChannelController, DemoMagicController, media demo controllers
/api/share/agents/**, /api/share/workflows/**Unguessable share idAgentShareController, WorkflowShareController (+ voice/vision siblings)
/api/devices/**, /api/edge/**Keycloak JWT or X-Device-Token, per routeDeviceGatewayController, DeviceDataIngestionController, DeviceController, EdgeToolExecutionController, EdgeAgentsConfigController
/api/public/status, /api/system/status/live, /api/public/landing-event, /api/templates/gallery, /api/plugins/catalogNonePublicStatusController, SystemStatusController, LandingEventController, TemplateGalleryController, PluginCatalogController

Deployment shape

Specific controllers are gated by Spring profiles: security (JWT resource server, billing, admin), mcpserver (/mcp, /api/dev/v1), and the fail-closed default !insecure security chain. Profile behaviour and the split into app/worker/jobs entry points is covered in System Architecture.

Where to go next

Evidence & references