ArthurAI Chatbot API
The Chatbot API from ArthurAI — 2 operation(s) for chatbot.
The Chatbot API from ArthurAI — 2 operation(s) for chatbot.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/arthurai-chatbot-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: Arthur GenAI Engine Agent Discovery Chatbot API
version: 2.1.688
servers:
- url: https://platform.arthur.ai/api
description: Base URL declared by the provider in apis.yml (roadmap#122).
tags:
- name: Chatbot
paths:
/api/v1/tasks/{task_id}/chatbot/stream:
post:
tags:
- Chatbot
summary: Stream a chatbot response
description: Send a message to the Arthur AI chatbot and receive a streaming response. The chatbot can call Arthur Engine API endpoints on your behalf.
operationId: stream_chatbot_api_v1_tasks__task_id__chatbot_stream_post
security:
- API Key: []
parameters:
- name: task_id
in: path
required: true
schema:
type: string
format: uuid
title: Task Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ChatbotRequest'
responses:
'200':
description: Successful Response
content:
application/json:
schema: {}
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/chatbot/config:
get:
tags:
- Chatbot
summary: Get chatbot model configuration
description: Returns the model provider, model name, blacklisted endpoints, and available endpoints.
operationId: get_chatbot_config_api_v1_chatbot_config_get
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ChatbotConfigResponse'
security:
- API Key: []
put:
tags:
- Chatbot
summary: Update chatbot model configuration
description: Saves a new version of the chatbot prompt with the specified model provider and model name, and tags it as production.
operationId: update_chatbot_config_api_v1_chatbot_config_put
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ChatbotConfigUpdateRequest'
required: true
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ChatbotConfigResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
security:
- API Key: []
components:
schemas:
ImageURL:
properties:
url:
type: string
title: Url
description: URL of the image
type: object
required:
- url
title: ImageURL
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
ModelProvider:
type: string
enum:
- anthropic
- openai
- gemini
- bedrock
- vertex_ai
- hosted_vllm
- azure
title: ModelProvider
InputAudio:
properties:
data:
type: string
title: Data
description: Base64 encoded audio data
format:
type: string
title: Format
description: audio format (e.g. 'mp3', 'wav', 'flac', etc.)
type: object
required:
- data
- format
title: InputAudio
ChatbotConfigResponse:
properties:
model_provider:
$ref: '#/components/schemas/ModelProvider'
model_name:
type: string
title: Model Name
blacklist_endpoints:
items:
type: string
type: array
title: Blacklist Endpoints
default: []
available_endpoints:
items:
type: string
type: array
title: Available Endpoints
default: []
type: object
required:
- model_provider
- model_name
title: ChatbotConfigResponse
OpenAIMessageItem:
properties:
type:
$ref: '#/components/schemas/OpenAIMessageType'
description: Type of the message (either 'text', 'image_url', or 'input_audio')
text:
anyOf:
- type: string
- type: 'null'
title: Text
description: Text content of the message if type is 'text'
image_url:
anyOf:
- $ref: '#/components/schemas/ImageURL'
- type: 'null'
description: Image URL content of the message if type is 'image_url'
input_audio:
anyOf:
- $ref: '#/components/schemas/InputAudio'
- type: 'null'
description: Input audio content of the message if type is 'input_audio'
type: object
required:
- type
title: OpenAIMessageItem
ToolCallFunction:
properties:
name:
type: string
title: Name
description: Name of the function to call
arguments:
type: string
title: Arguments
description: JSON string of function arguments
type: object
required:
- name
- arguments
title: ToolCallFunction
OpenAIMessage-Input:
properties:
role:
$ref: '#/components/schemas/MessageRole'
description: Role of the message
name:
anyOf:
- type: string
- type: 'null'
title: Name
description: An optional name for the participant. Provides the model information to differentiate between participants of the same role.
content:
anyOf:
- type: string
- items:
$ref: '#/components/schemas/OpenAIMessageItem'
type: array
- type: 'null'
title: Content
description: Content of the message
tool_calls:
anyOf:
- items:
$ref: '#/components/schemas/ToolCall'
type: array
- type: 'null'
title: Tool Calls
description: Tool calls made by assistant
tool_call_id:
anyOf:
- type: string
- type: 'null'
title: Tool Call Id
description: ID of the tool call this message is responding to
type: object
required:
- role
title: OpenAIMessage
description: 'The message schema class for the prompts playground.
This class adheres to OpenAI''s message schema.'
ChatbotRequest:
properties:
history:
items:
$ref: '#/components/schemas/OpenAIMessage-Input'
type: array
title: History
session_id:
anyOf:
- type: string
- type: 'null'
title: Session Id
type: object
required:
- history
title: ChatbotRequest
OpenAIMessageType:
type: string
enum:
- text
- image_url
- input_audio
title: OpenAIMessageType
ToolCall:
properties:
type:
type: string
title: Type
description: The type of tool call. Currently the only type supported is 'function'.
default: function
id:
type: string
title: Id
description: Unique identifier for the tool call
function:
$ref: '#/components/schemas/ToolCallFunction'
description: Function details
type: object
required:
- id
- function
title: ToolCall
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
MessageRole:
type: string
enum:
- developer
- system
- user
- assistant
- tool
title: MessageRole
ChatbotConfigUpdateRequest:
properties:
model_provider:
anyOf:
- $ref: '#/components/schemas/ModelProvider'
- type: 'null'
model_name:
anyOf:
- type: string
- type: 'null'
title: Model Name
blacklist_endpoints:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Blacklist Endpoints
type: object
title: ChatbotConfigUpdateRequest
securitySchemes:
API_Key:
type: http
description: Bearer token authentication with an API key
scheme: bearer