Ethora Agents API

AI Agents and their BotInstances. ℹ️ An Agent is an account-level AI persona (prompt, model, Memory, knowledge, flows), embodied in an App as a BotInstance the first time it is invited into one of that App's chats. Platform-owned agents such as the Support Agent template are read-only to tenants, who clone them.

GitHub OpenAPI

Operations 39

POST /v2/agents/{id}/reply One-shot synchronous ask - text in, the agent's reply out (b2b) #
GET /v2/agents/{idOrAddress}/export Export an Agent's configuration as a portable bundle (v2) #
POST /v2/agents/import Import an Agent bundle (v2) #
GET /v2/agents List AI Agents (v2) #
POST /v2/agents Create an AI Agent (v2) #
POST /v2/agents/flows/validate Check a flows script without saving it (v2) #
POST /v2/agents/flows/generate Write a flows script with AI (v2) #
GET /v2/agents/{idOrAddress}/flow-submissions Completed flow runs of an agent (v2) #
GET /v2/agents/{idOrAddress}/flow-submissions.csv Flow submissions as CSV (v2) #
POST /v2/agents/{idOrAddress}/flow-submissions/push Send stored submissions to a destination now (v2) #
GET /v2/agents/{idOrAddress}/flow-webhook Flow webhook settings (v2) #
PUT /v2/agents/{idOrAddress}/flow-webhook Set the flow webhook (v2) #
POST /v2/agents/{idOrAddress}/flow-webhook/test Send a sample event to the webhook (v2) #
POST /v2/agents/flows/simulate Try a flows script without an LLM (v2) #
GET /v2/agents/{idOrAddress} Get an AI Agent (v2) #
PUT /v2/agents/{idOrAddress} Update an AI Agent (v2) #
DELETE /v2/agents/{idOrAddress} Delete an AI Agent (v2) #
POST /v2/agents/{idOrAddress}/clone Clone an AI Agent (v2) #
POST /v2/agents/{idOrAddress}/visibility Set an AI Agent's visibility (v2) #
POST /v2/agents/{idOrAddress}/soul Replace or append to an AI Agent's Memory (v2) #
GET /v2/agents/{idOrAddress}/knowledge Knowledge health of an AI Agent (v2) #
POST /v2/agents/{idOrAddress}/knowledge/rebuild Rebuild an AI Agent's knowledge index (v2) #
POST /v2/agents/{idOrAddress}/try Test conversation with an AI Agent, without a chat room (v2) #
POST /v2/agents/{idOrAddress}/my-chat Open the caller's own 1-1 chat with an agent (v2) #
GET /v2/agents/{idOrAddress}/bot-instances List the BotInstances of an AI Agent (v2) #
GET /v2/agents/{idOrAddress}/bot-instances/{botInstanceId}/diag Diagnostics for one BotInstance of an AI Agent (v2) #
POST /v2/agents/{idOrAddress}/bot-instances/{botInstanceId}/test-message Make a BotInstance post a test message (v2) #
POST /v2/agents/{idOrAddress}/bot-instances/{botInstanceId}/leave-chat Remove a BotInstance from one chat (v2) #
POST /v2/agents/{idOrAddress}/invite-to-chat Add an AI Agent to a chat (v2) #
POST /v2/agents/{idOrAddress}/activate Make an AI Agent the App's website widget responder (v2, app-token) #
GET /v2/apps/{appId}/agents List AI Agents (v2, tenant actor) #
POST /v2/apps/{appId}/agents Create an AI Agent for an app (v2, tenant actor) #
DELETE /v2/apps/{appId}/agents/{idOrAddress} Delete an AI Agent that belongs to an app (v2, tenant actor) #
POST /v2/apps/{appId}/agents/{idOrAddress}/invite-to-chat Add an AI Agent to a chat (v2, tenant actor) #
GET /v2/bot-instances List BotInstances (v2) #
GET /v2/bot-instances/{id} Get a BotInstance (v2) #
POST /v2/bot-instances/{id}/status Switch a BotInstance on or off, or set how it answers in one room (v2) #
GET /v2/apps/{appId}/bot-instances List BotInstances (v2, tenant actor) #
GET /v2/agents/{idOrAddress}/ai-usage AI tokens an agent used this month (owner only) #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ethora-com:ethora-com-agents-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ethora-com-agents-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Platform Agents API
  description: 'Ethora Platform API.


    ## Getting Started

    - For new backend and tenant integrations, start with the `/v2/...` endpoints.

    - Use `/v2/apps/{appId}/...` when your backend/admin flow manages a specific target app explicitly.

    - Some legacy operations still exist only under `/v1/...`; when so, the operation description will say so.


    ## Integration Tracks

    - `Frontend / app runtime`: app-auth login/sign-up flows, then user-auth chats/files/sharelinks.

    - `Tenant admin / B2B backend`: explicit app management and app-scoped admin flows under `/v2/apps/{appId}/...`.


    ## Auth Token Legend

    - `App JWT`: app-scoped runtime token for sign-up/login/runtime app operations.

    - `User JWT`: end-user or admin-user session token.

    - `Refresh JWT`: refresh-only token for access token renewal.

    - `Client JWT`: legacy client-side token used only for chat/client credential exchange compatibility flows.

    - `B2B Server JWT`: tenant/backend integration token. Prefer `Authorization: Bearer `; `x-custom-token` is still accepted for backward compatibility.


    ## Which Token Where

    - `App JWT`: `/v1/users/login-with-email`, `/v2/users/sign-up-with-email`, similar app-runtime auth endpoints.

    - `User JWT`: user session endpoints like chats, files, sharelinks, profile/session management.

    - `B2B Server JWT`: tenant/backend integration endpoints, especially explicit `/v2/apps/{appId}/...` admin flows.

    - `Client JWT`: only where the endpoint explicitly says `Client JWT` and typically only for legacy compatibility.


    ## Auth Approach

    - `/v2/...` endpoints are the canonical API surface for new integrations.

    - Endpoints may support one or more token types depending on the actor and scope.

    - App-scoped admin/integration endpoints use `/v2/apps/{appId}/...` so the target app is always explicit.

    - When an endpoint supports both `User JWT` and `B2B Server JWT`, Swagger will show both under Security.

    - Public Swagger excludes internal-only, operational, and experimental surfaces.'
  contact:
    name: Dappros developers team
  version: 26.11.05
servers:
- url: https://api.chat.ethora.com
security:
- JwtAuth: []
tags:


# --- truncated at 32 KB (91 KB total) ---
# Full source: https://artifacts.apis.io/ethora-com/openapi/ethora-com-agents-api-openapi.yml