openapi: 3.1.0 info: title: Arthur GenAI Engine Agent Discovery Chatbot API version: 2.1.688 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: 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 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 OpenAIMessageType: type: string enum: - text - image_url - input_audio title: OpenAIMessageType 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 ImageURL: properties: url: type: string title: Url description: URL of the image type: object required: - url title: ImageURL 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 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 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 HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError 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.' 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 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 MessageRole: type: string enum: - developer - system - user - assistant - tool title: MessageRole securitySchemes: API Key: type: http description: Bearer token authentication with an API key scheme: bearer