API reference

The VegaDūta REST API

Everything the console does is an API call - this is the same surface, documented for integrators. Base URL https://api.vegaduta.ai

Authentication & conventions

  • All authenticated endpoints take an OAuth2/OIDC Bearer token issued by the platform's Keycloak realm (auth.vegaduta.ai/realms/agentic-ai). Interactive sign-in uses PKCE; service integrations use the client-credentials flow on a confidential client.
  • Tenant isolation is enforced below the API: every tenant reads and writes its own database schema. No endpoint accepts a tenant id from the caller to cross tenants.
  • Rate limits are enforced per-IP on public endpoints and per-tenant on authenticated ones; 429 responses carry a Retry-After header.
Bearer JWTPublicWebhook signatureDevice token

Agents

Create and operate agents: personas, provider/model settings, sessions, versions, schedules, triggers and share links.

MethodPathAuthDescription
GET POST/api/agentsBearer JWTList and create agents.
GET PUT DELETE/api/agents/{id}Bearer JWTRead, update or retire one agent.
GET/api/agents/{id}/versionsBearer JWTImmutable version history; every save is a new version.
GET POST/api/agents/{id}/triggersBearer JWTEvent/webhook triggers that start this agent.
GET PUT/api/agents/{id}/scheduleBearer JWTCron-style schedule for autonomous runs.
POST/api/agents/{id}/shareBearer JWTMint a read-only public share link (/a/<id>).
GET/api/agents/{id}/guardrailsBearer JWTGuardrail rules bound to this agent.
GET POST/api/agents/{id}/quality/*Bearer JWTEval datasets, runs and the quality gate verdict.

Sessions & feedback

Chat sessions, assisted replies and the turn-level feedback stream that powers RL exports and the resolution meter.

MethodPathAuthDescription
GET POST/api/sessionBearer JWTOpen and list chat sessions.
POST/api/assistBearer JWTOne-shot assist completions outside a session.
POST/api/rlBearer JWTRecord a feedback signal (THUMBS_UP/DOWN, RATING, EDIT, RESOLVED, UNRESOLVED) for a turn.
GET/api/agents/{id}/sessions/{sessionId}/llm-usageBearer JWTToken/cost rollup for one session.

Workflows

Multi-step deterministic automations an agent can trigger; runs can pause for human input and resume.

MethodPathAuthDescription
GET POST/api/workflowsBearer JWTList and create workflows.
GET PUT/api/workflows/{id}Bearer JWTRead or update a workflow definition.
GET POST/api/workflows/input-requestsBearer JWTPending human-input questions and their answers.
POST/api/workflows/{id}/shareBearer JWTMint a read-only public share link (/w/<id>).

Channels (omnichannel)

Connect WhatsApp, Telegram, Slack, Teams, Discord, email, voice and social channels; route inbound conversations to agents with human handoff.

MethodPathAuthDescription
GET/api/channelsBearer JWTConfigured channels and their state.
GET/api/channels/statusBearer JWTPer-channel connectivity health.
GET PUT/api/channels/routingBearer JWTWhich agent answers which channel/session.
POST/api/channels/pairingBearer JWTPair an end-user session to an agent (pairing codes).
POST/api/channels/{channel}/credentialBearer JWTStore channel credentials (encrypted at rest).
POST/api/channels/whatsapp-qr/*Bearer JWTQR-session lifecycle for the self-hosted WhatsApp service.
GET POST/api/handoffBearer JWTOperator inbox: take over or release a live conversation (AGENT/AWAITING_HUMAN/HUMAN).

MCP & tool ecosystem

Model Context Protocol server registrations, the tool registry, and the agent-facing A2A surface. Dynamic STDIO registrations run sandboxed (see the security changelog).

MethodPathAuthDescription
GET POST DELETE/api/mcp/registrationsBearer JWTDynamic MCP server registrations (reviewed before use).
GET/api/mcp/registryBearer JWTTools exposed to this tenant's agents.
GET POST/api/mcpserver/grantsBearer JWTGrant an agent access to an MCP server.
GET/.well-known/agent-card.jsonPublicA2A agent card describing this deployment's agents.
POST/api/a2aBearer JWTAgent-to-agent JSON-RPC endpoint.
GET POST/api/tools/*Bearer JWTTool classifications, OpenAPI-imported tools, script tools, code tools.

Knowledge

Document collections, connectors and ingestion jobs behind retrieval-augmented answers.

MethodPathAuthDescription
GET POST/api/knowledge/collectionsBearer JWTCollections of ingested documents.
GET POST/api/knowledge/connectorsBearer JWTExternal sources (drives, buckets, sites) feeding collections.
GET/api/knowledge/jobsBearer JWTIngestion job state and history.

Billing & resolutions

Subscriptions, outcome-based resolution metering, and provider webhooks. Resolution events are the billable unit of outcome-priced plans.

MethodPathAuthDescription
GET/api/tenant/subscriptionBearer JWTCurrent plan, seats and billing state.
GET/api/tenant/resolutions/summaryBearer JWTOutcome counts + billable total for a period (PERM_MANAGE_BILLING).
GET/api/tenant/resolutionsBearer JWTThe underlying resolution events, newest first.
POST/api/tenant/resolutionsBearer JWTExplicitly record a resolution the sweep cannot see (idempotent on dedupeKey).
POST/api/tenant/resolutions/{id}/disputeBearer JWTContest a billable event; the row stays, billing flips off.
POST/api/billing/webhook/*Webhook signatureProvider (Razorpay/Stripe) delivery endpoints; deduped on a durable ledger.
POST/api/budget/top-upBearer JWTAdd prepaid budget for usage-billed features.

Public sharing

Read-only public snapshots behind /a/<id> and /w/<id>. A leaked share id buys a viewer, never an editor.

MethodPathAuthDescription
GET/api/share/agents/{shareId}PublicThe shared agent snapshot rendered at /a/<id>.
GET/api/share/workflows/{shareId}PublicThe shared workflow snapshot rendered at /w/<id>.
GET/api/templates/galleryPublicCommunity template gallery (submit/moderate stays authenticated).
GET/api/plugins/catalogPublicFirst-party plugin catalog behind /plugins.
GET/api/commerce/feed/*PublicStorefront-style product feed for commerce agents.

Devices & edge

Claim-and-poll device pairing and the edge gateway that runs turns close to the user.

MethodPathAuthDescription
POST/api/devices/claimPublicClaim a device pairing code (no session exists yet - same posture as /api/signup).
POST/api/devices/pollDevice tokenLong-poll for commands addressed to this device.
POST/api/devices/commands/{id}/resultDevice tokenReport a command result back.
POST/api/edge/turnsBearer JWTExecute a turn through the edge gateway.

Operations & administration

Tenant administration, platform-level operations, and the public liveness/status probes.

MethodPathAuthDescription
GET/api/public/statusPublicComponent-level platform status feeding /status (names + status codes only).
GET/api/system/status/livePublicBare liveness probe: {"status":"UP"}.
GET/api/system/statusBearer JWTFull internal dashboard status (pool, JVM, MCP inventory).
GET PUT/api/tenant/settingsBearer JWTTenant-scoped settings.
GET POST/api/tenant/ssoBearer JWTSSO/SCIM enterprise identity configuration.
*/api/platform/*Bearer JWTPlatform-operator surface (tenants, plan limits, abuse monitor, MCP review) - requires the platform-admin role.
POST/webhook/*Webhook signatureInbound channel webhooks (WhatsApp/Telegram/Slack/…), verified per provider.

Ship something on it

The Free plan needs no card - sign up, create an agent, and every endpoint above is live against your tenant. Live platform health is on the status page.