{ "openapi" : "3.1.0", "info" : { "title" : "Coral Server API", "version" : "1.0" }, "externalDocs" : { "url" : "/" }, "servers" : [ ], "tags" : [ ], "paths" : { "/api/v1/debug/thread/{applicationId}/{privacyKey}/{coralSessionId}/{debugAgentId}" : { "post" : { "tags" : [ "debug" ], "summary" : "Create thread", "description" : "Creates a new thread", "operationId" : "debugCreateThread", "parameters" : [ { "name" : "applicationId", "in" : "path", "description" : "The application ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "privacyKey", "in" : "path", "description" : "The privacy key", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "coralSessionId", "in" : "path", "description" : "The Coral session ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "debugAgentId", "in" : "path", "description" : "The debug agent ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } } ], "requestBody" : { "description" : "Thread creation request", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/CreateThreadInput" } } }, "required" : false }, "responses" : { "200" : { "description" : "Thread created successfully", "headers" : { } }, "404" : { "description" : "Session not found", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } }, "500" : { "description" : "Error creating thread", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } } }, "deprecated" : false } }, "/api/v1/debug/thread/sendMessage/{applicationId}/{privacyKey}/{coralSessionId}/{debugAgentId}" : { "post" : { "tags" : [ "debug" ], "summary" : "Send message", "description" : "Sends a message in debug mode", "operationId" : "debugSendMessage", "parameters" : [ { "name" : "applicationId", "in" : "path", "description" : "The application ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "privacyKey", "in" : "path", "description" : "The privacy key", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "coralSessionId", "in" : "path", "description" : "The Coral session ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "debugAgentId", "in" : "path", "description" : "The debug agent ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } } ], "requestBody" : { "description" : "The message to send", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/SendMessageInput" } } }, "required" : false }, "responses" : { "200" : { "description" : "Message sent successfully", "headers" : { } }, "404" : { "description" : "Session not found", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } }, "500" : { "description" : "Error sending message", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } } }, "deprecated" : false } }, "/api/v1/sessions" : { "get" : { "tags" : [ "sessions" ], "summary" : "Get sessions", "description" : "Fetches all active session IDs", "operationId" : "getSessions", "parameters" : [ ], "responses" : { "200" : { "description" : "Success", "headers" : { }, "content" : { "application/json" : { "schema" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "ArrayList" } } } } }, "deprecated" : false }, "post" : { "tags" : [ "sessions" ], "summary" : "Create session", "description" : "Creates a new session", "operationId" : "createSession", "parameters" : [ ], "requestBody" : { "description" : "Session creation request", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/SessionRequest" } } }, "required" : false }, "responses" : { "200" : { "description" : "Success", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/SessionIdentifier" } } } }, "403" : { "description" : "Invalid application ID or privacy key", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } }, "400" : { "description" : "The agent graph is invalid and could not be processed", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } } }, "deprecated" : false } }, "/api/v1/message/{applicationId}/{privacyKey}/{coralSessionId}" : { "post" : { "tags" : [ "message" ], "summary" : "Send message", "description" : "Sends a message", "operationId" : "sendMessage", "parameters" : [ { "name" : "applicationId", "in" : "path", "description" : "The application ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "privacyKey", "in" : "path", "description" : "The privacy key", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "coralSessionId", "in" : "path", "description" : "The Coral session ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } } ], "responses" : { "200" : { "description" : "Success", "headers" : { } }, "403" : { "description" : "Invalid application ID or privacy key", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } }, "404" : { "description" : "Invalid Coral session ID", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } }, "400" : { "description" : "Invalid session ID", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } }, "500" : { "description" : "MCP error", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } } }, "deprecated" : false } }, "/api/v1/message/devmode/{applicationId}/{privacyKey}/{coralSessionId}" : { "post" : { "tags" : [ "message" ], "summary" : "Send development message", "description" : "Sends a dev-mode message", "operationId" : "sendDevMessage", "parameters" : [ { "name" : "applicationId", "in" : "path", "description" : "The application ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "privacyKey", "in" : "path", "description" : "The privacy key", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "coralSessionId", "in" : "path", "description" : "The Coral session ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } } ], "responses" : { "200" : { "description" : "Success", "headers" : { } }, "404" : { "description" : "Invalid Coral session ID", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } }, "400" : { "description" : "Invalid session ID", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } }, "500" : { "description" : "MCP error", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } } }, "deprecated" : false } }, "/api/v1/telemetry/{sessionId}/{threadId}/{messageId}" : { "get" : { "tags" : [ "telemetry" ], "summary" : "Get telemetry", "description" : "Fetches telemetry information for a given message", "operationId" : "getTelemetry", "parameters" : [ { "name" : "sessionId", "in" : "path", "description" : "The session ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "threadId", "in" : "path", "description" : "The thread ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "messageId", "in" : "path", "description" : "The message ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } } ], "responses" : { "200" : { "description" : "Success", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/Telemetry" } } } }, "404" : { "description" : "Telemetry data not found for specified message", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } } }, "deprecated" : false } }, "/api/v1/telemetry/{sessionId}" : { "post" : { "tags" : [ "telemetry" ], "summary" : "Add telemetry", "description" : "Attaches telemetry information a list of messages", "operationId" : "addTelemetry", "parameters" : [ { "name" : "sessionId", "in" : "path", "description" : "The session ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } } ], "requestBody" : { "description" : "Telemetry data", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/TelemetryPost" } } }, "required" : false }, "responses" : { "200" : { "description" : "Success", "headers" : { } }, "404" : { "description" : "Specified messages were not found", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } } }, "deprecated" : false } }, "/api/v1/agents" : { "get" : { "tags" : [ "agents" ], "summary" : "Get available agents", "description" : "Fetches a list of all agents available to the Coral server", "operationId" : "getAvailableAgents", "parameters" : [ ], "responses" : { "200" : { "description" : "Success", "headers" : { }, "content" : { "application/json" : { "schema" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/PublicRegistryAgent" }, "title" : "ArrayList" } } } } }, "deprecated" : false } }, "/api/v1/agents/claim" : { "post" : { "tags" : [ "agents" ], "summary" : "Claim agents", "description" : "Creates a claim for agents that can later be instantiated via WebSocket", "operationId" : "claimAgents", "parameters" : [ ], "requestBody" : { "description" : "A list of agents to claim", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/PaidGraphAgentRequest" } } }, "required" : false }, "responses" : { "200" : { "description" : "Success", "headers" : { }, "content" : { "application/json" : { "schema" : { "type" : "string", "title" : "String" } } } }, "400" : { "description" : "GraphAgentRequest is invalid in a remote context", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } } }, "deprecated" : false } }, "/api/v1/agents/exported/{name}/{version}" : { "get" : { "tags" : [ "agents" ], "summary" : "Get exported agent info", "description" : "Returns export information for a specific agent", "operationId" : "getExportedAgent", "parameters" : [ { "name" : "name", "in" : "path", "description" : "The name of the exported agent", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } }, { "name" : "version", "in" : "path", "description" : "The version of the exported agent", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } } ], "responses" : { "200" : { "description" : "Success", "headers" : { }, "content" : { "application/json" : { "schema" : { "type" : "object", "additionalProperties" : { "$ref" : "#/components/schemas/PublicAgentExportSettings" }, "title" : "LinkedHashMap" } } } }, "404" : { "description" : "Agent was not found or is not exported", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } } }, "deprecated" : false } }, "/api/v1/internal/claim/{remoteSessionId}" : { "post" : { "tags" : [ "internal" ], "summary" : "Claim payment", "description" : "API endpoint for agents to claim payment for their work. This is used by exported agents", "operationId" : "claimPayment", "parameters" : [ { "name" : "remoteSessionId", "in" : "path", "description" : "The remote session ID", "required" : true, "deprecated" : false, "explode" : false, "schema" : { "type" : "string", "title" : "String" } } ], "requestBody" : { "description" : "A description of the work done and the payment required", "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/AgentPaymentClaimRequest" } } }, "required" : false }, "responses" : { "200" : { "description" : "Success", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/AgentRemainingBudget" } } } }, "404" : { "description" : "Remote session not found", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } }, "400" : { "description" : "No payment associated with the session", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } } }, "deprecated" : false } }, "/api/v1/wallet/public" : { "get" : { "tags" : [ "wallet" ], "summary" : "Get public wallet address", "description" : "Retrieves the wallet address that this server users. This might be separate from the configured keypair.", "operationId" : "getPublicWallet", "parameters" : [ ], "responses" : { "200" : { "description" : "Success", "headers" : { }, "content" : { "application/json" : { "schema" : { "type" : "string", "title" : "String" } } } }, "404" : { "description" : "No wallet configured on this server", "headers" : { }, "content" : { "application/json" : { "schema" : { "$ref" : "#/components/schemas/RouteException" } } } } }, "deprecated" : false } } }, "components" : { "schemas" : { "SocketEvent" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "agent_list" ], "title" : "String" }, "sessionAgents" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/SessionAgent" }, "title" : "ArrayList" } }, "required" : [ "sessionAgents", "type" ], "title" : "agent_list" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "debug_agent_registered" ], "title" : "String" }, "id" : { "type" : "string", "title" : "String" } }, "required" : [ "id", "type" ], "title" : "debug_agent_registered" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "session" ], "title" : "String" }, "event" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "agent_ready" ], "title" : "String" }, "agent" : { "type" : "string", "title" : "String" } }, "required" : [ "agent", "type" ], "title" : "agent_ready" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "agent_registered" ], "title" : "String" }, "agent" : { "$ref" : "#/components/schemas/SessionAgent" } }, "required" : [ "agent", "type" ], "title" : "agent_registered" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "agent_state_updated" ], "title" : "String" }, "agentId" : { "type" : "string", "title" : "String" }, "state" : { "$ref" : "#/components/schemas/SessionAgentState" } }, "required" : [ "agentId", "state", "type" ], "title" : "agent_state_updated" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "message_sent" ], "title" : "String" }, "threadId" : { "type" : "string", "title" : "String" }, "message" : { "$ref" : "#/components/schemas/ResolvedMessage" } }, "required" : [ "message", "threadId", "type" ], "title" : "message_sent" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "thread_created" ], "title" : "String" }, "id" : { "type" : "string", "title" : "String" }, "name" : { "type" : "string", "title" : "String" }, "creatorId" : { "type" : "string", "title" : "String" }, "participants" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "ArrayList" }, "summary" : { "type" : "string", "title" : "String" } }, "required" : [ "creatorId", "id", "name", "participants", "type" ], "title" : "thread_created" } ], "discriminator" : { "propertyName" : "type" }, "title" : "SessionEvent" } }, "required" : [ "event", "type" ], "title" : "session" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "thread_list" ], "title" : "String" }, "threads" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/ResolvedThread" }, "title" : "ArrayList" } }, "required" : [ "threads", "type" ], "title" : "thread_list" } ], "discriminator" : { "propertyName" : "type" }, "title" : "SocketEvent" }, "SessionAgent" : { "type" : "object", "properties" : { "id" : { "type" : "string", "title" : "String" }, "description" : { "type" : "string", "title" : "String" }, "state" : { "$ref" : "#/components/schemas/SessionAgentState" }, "mcpUrl" : { "type" : "string", "title" : "String" }, "extraTools" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/CustomTool" }, "title" : "LinkedHashSet", "uniqueItems" : true }, "coralPlugins" : { "type" : "array", "items" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "close_session_tool" ], "title" : "String" } }, "required" : [ "type" ], "title" : "close_session_tool" } ], "discriminator" : { "propertyName" : "type" }, "title" : "GraphAgentPlugin" }, "title" : "LinkedHashSet", "uniqueItems" : true } }, "required" : [ "coralPlugins", "description", "extraTools", "id", "state" ], "title" : "SessionAgent" }, "SessionAgentState" : { "type" : "string", "enum" : [ "disconnected", "connecting", "listening", "busy", "dead" ], "title" : "SessionAgentState" }, "CustomTool" : { "type" : "object", "properties" : { "transport" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "http" ], "title" : "String" }, "url" : { "type" : "string", "title" : "UriString" } }, "required" : [ "type", "url" ], "title" : "http" } ], "discriminator" : { "propertyName" : "type" }, "title" : "ToolTransport" }, "toolSchema" : { "$ref" : "#/components/schemas/Tool" } }, "required" : [ "toolSchema", "transport" ], "title" : "CustomTool" }, "Tool" : { "type" : "object", "properties" : { "name" : { "type" : "string", "title" : "String" }, "description" : { "type" : "string", "title" : "String" }, "inputSchema" : { "$ref" : "#/components/schemas/Input" }, "outputSchema" : { "$ref" : "#/components/schemas/Output" }, "annotations" : { "$ref" : "#/components/schemas/ToolAnnotations" } }, "required" : [ "inputSchema", "name" ], "title" : "Tool" }, "Input" : { "type" : "object", "properties" : { "properties" : { "type" : "object", "additionalProperties" : { "$ref" : "#/components/schemas/JsonElement" }, "title" : "JsonObject" }, "required" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "ArrayList" }, "type" : { "type" : "string", "title" : "String" } }, "required" : [ "properties", "type" ], "title" : "Input" }, "JsonElement" : { "type" : "object", "properties" : { }, "title" : "JsonElement" }, "Output" : { "type" : "object", "properties" : { "properties" : { "type" : "object", "additionalProperties" : { "$ref" : "#/components/schemas/JsonElement" }, "title" : "JsonObject" }, "required" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "ArrayList" }, "type" : { "type" : "string", "title" : "String" } }, "required" : [ "properties", "type" ], "title" : "Output" }, "ToolAnnotations" : { "type" : "object", "properties" : { "title" : { "type" : "string", "title" : "String" }, "readOnlyHint" : { "type" : "boolean", "title" : "Boolean" }, "destructiveHint" : { "type" : "boolean", "title" : "Boolean" }, "idempotentHint" : { "type" : "boolean", "title" : "Boolean" }, "openWorldHint" : { "type" : "boolean", "title" : "Boolean" } }, "title" : "ToolAnnotations" }, "ResolvedMessage" : { "type" : "object", "properties" : { "id" : { "type" : "string", "title" : "String" }, "threadName" : { "type" : "string", "title" : "String" }, "threadId" : { "type" : "string", "title" : "String" }, "senderId" : { "type" : "string", "title" : "String" }, "content" : { "type" : "string", "title" : "String" }, "timestamp" : { "type" : "integer", "format" : "int64", "title" : "Long" }, "mentions" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "ArrayList" } }, "required" : [ "content", "id", "mentions", "senderId", "threadId", "threadName", "timestamp" ], "title" : "ResolvedMessage" }, "ResolvedThread" : { "type" : "object", "properties" : { "id" : { "type" : "string", "title" : "String" }, "name" : { "type" : "string", "title" : "String" }, "creatorId" : { "type" : "string", "title" : "String" }, "participants" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "ArrayList" }, "messages" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/ResolvedMessage" }, "title" : "ArrayList" }, "isClosed" : { "type" : "boolean", "title" : "Boolean" }, "summary" : { "type" : "string", "title" : "String" } }, "required" : [ "creatorId", "id", "isClosed", "messages", "name", "participants" ], "title" : "ResolvedThread" }, "McpToolName" : { "type" : "string", "enum" : [ "coral_add_participant", "coral_close_thread", "coral_create_thread", "coral_list_agents", "coral_remove_participant", "coral_send_message", "coral_wait_for_mentions", "coral_close_session" ], "title" : "McpToolName" }, "McpResources" : { "type" : "string", "enum" : [ "Message.resource", "Instruction.resource", "Agent.resource" ], "title" : "McpResources" }, "McpToolResult" : { "anyOf" : [ { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "add_participant_success" ], "title" : "String" } }, "required" : [ "result" ], "title" : "add_participant_success" }, { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "agent_list_success_with_details" ], "title" : "String" }, "agents" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/SessionAgent" }, "title" : "ArrayList" } }, "required" : [ "agents", "result" ], "title" : "agent_list_success_with_details" }, { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "agent_list_success" ], "title" : "String" }, "agents" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "ArrayList" } }, "required" : [ "agents", "result" ], "title" : "agent_list_success" }, { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "close_session_success" ], "title" : "String" } }, "required" : [ "result" ], "title" : "close_session_success" }, { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "close_thread_success" ], "title" : "String" } }, "required" : [ "result" ], "title" : "close_thread_success" }, { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "create_thread_success" ], "title" : "String" }, "thread" : { "$ref" : "#/components/schemas/ResolvedThread" } }, "required" : [ "result", "thread" ], "title" : "create_thread_success" }, { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "error" ], "title" : "String" }, "message" : { "type" : "string", "title" : "String" } }, "required" : [ "message", "result" ], "title" : "error" }, { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "remove_participant_success" ], "title" : "String" } }, "required" : [ "result" ], "title" : "remove_participant_success" }, { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "send_message_success" ], "title" : "String" }, "message" : { "$ref" : "#/components/schemas/ResolvedMessage" } }, "required" : [ "message", "result" ], "title" : "send_message_success" }, { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "tool_input_error" ], "title" : "String" }, "message" : { "type" : "string", "title" : "String" } }, "required" : [ "message", "result" ], "title" : "tool_input_error" }, { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "wait_for_mentions_success" ], "title" : "String" }, "messages" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/ResolvedMessage" }, "title" : "ArrayList" } }, "required" : [ "messages", "result" ], "title" : "wait_for_mentions_success" }, { "type" : "object", "properties" : { "result" : { "type" : "string", "enum" : [ "error_timeout" ], "title" : "String" } }, "required" : [ "result" ], "title" : "error_timeout" } ], "discriminator" : { "propertyName" : "result" }, "title" : "McpToolResult" }, "CreateThreadInput" : { "type" : "object", "properties" : { "threadName" : { "type" : "string", "title" : "String" }, "participantIds" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "ArrayList" } }, "required" : [ "participantIds", "threadName" ], "title" : "CreateThreadInput" }, "RouteException" : { "type" : "object", "properties" : { "message" : { "type" : "string", "title" : "String" }, "stackTrace" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "ArrayList" } }, "required" : [ "stackTrace" ], "title" : "RouteException" }, "SendMessageInput" : { "type" : "object", "properties" : { "threadId" : { "type" : "string", "title" : "String" }, "content" : { "type" : "string", "title" : "String" }, "mentions" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "ArrayList" } }, "required" : [ "content", "mentions", "threadId" ], "title" : "SendMessageInput" }, "AgentGraphRequest" : { "type" : "object", "properties" : { "agents" : { "type" : "array", "description" : "Every agent required for this agent graph", "items" : { "$ref" : "#/components/schemas/GraphAgentRequest" }, "title" : "ArrayList" }, "groups" : { "type" : "array", "description" : "A set, containing sets that define the agent groups by name", "items" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "LinkedHashSet", "uniqueItems" : true }, "title" : "LinkedHashSet>", "uniqueItems" : true }, "customTools" : { "type" : "object", "additionalProperties" : { "$ref" : "#/components/schemas/CustomTool" }, "description" : "A map of custom tools to provide to the agents in this graph", "title" : "LinkedHashMap" } }, "required" : [ "agents", "customTools", "groups" ], "title" : "AgentGraphRequest" }, "GraphAgentRequest" : { "type" : "object", "description" : "A request for an agent. GraphAgentRequest -> GraphAgent", "properties" : { "id" : { "$ref" : "#/components/schemas/AgentRegistryIdentifier", "description" : "The ID of this agent in the registry" }, "name" : { "type" : "string", "description" : "A given name for this agent in the session/group", "title" : "String" }, "description" : { "type" : "string", "description" : "An optional override for the description of this agent", "title" : "String" }, "options" : { "type" : "object", "additionalProperties" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "number" ], "title" : "String" }, "value" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "type", "value" ], "title" : "number" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "string" ], "title" : "String" }, "value" : { "type" : "string", "title" : "String" } }, "required" : [ "type", "value" ], "title" : "string" } ], "discriminator" : { "propertyName" : "type" }, "title" : "AgentOptionValue" }, "description" : "The arguments to pass to the agent", "title" : "LinkedHashMap" }, "systemPrompt" : { "type" : "string", "description" : "The system prompt/developer text/preamble passed to the agent", "title" : "String" }, "blocking" : { "type" : "boolean", "description" : "All blocking agents in a group must be instantiated before the group can communicate. Non-blocking agents' contributions to groups are optional", "title" : "Boolean" }, "customToolAccess" : { "type" : "array", "description" : "A list of custom tools that this agent can access. The custom tools must be defined in the parent AgentGraphRequest object", "items" : { "type" : "string", "title" : "String" }, "title" : "LinkedHashSet", "uniqueItems" : true }, "coralPlugins" : { "type" : "array", "description" : "Optional Coral features that this agent should have access to", "items" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "close_session_tool" ], "title" : "String" } }, "required" : [ "type" ], "title" : "close_session_tool" } ], "discriminator" : { "propertyName" : "type" }, "title" : "GraphAgentPlugin" }, "title" : "LinkedHashSet", "uniqueItems" : true }, "provider" : { "anyOf" : [ { "type" : "object", "description" : "The agent will be provided by this server", "properties" : { "type" : { "type" : "string", "enum" : [ "local" ], "title" : "String" }, "runtime" : { "$ref" : "#/components/schemas/RuntimeId" } }, "required" : [ "runtime", "type" ], "title" : "local" }, { "type" : "object", "description" : "A remote agent provided by a specific server", "properties" : { "type" : { "type" : "string", "enum" : [ "remote" ], "title" : "String" }, "server" : { "$ref" : "#/components/schemas/GraphAgentServer", "description" : "The server that is providing this remote agent" }, "runtime" : { "$ref" : "#/components/schemas/RuntimeId", "description" : "The runtime to be used on the remote server. Likely Docker or Phala" }, "wallet" : { "type" : "string", "description" : "The wallet address of the server that is providing this remote agent", "title" : "String" }, "maxCost" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "coral" ], "title" : "String" }, "amount" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "amount", "type" ], "title" : "coral" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "micro_coral" ], "title" : "String" }, "amount" : { "type" : "integer", "format" : "int64", "title" : "Long" } }, "required" : [ "amount", "type" ], "title" : "micro_coral" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "usd" ], "title" : "String" }, "amount" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "amount", "type" ], "title" : "usd" } ], "description" : "The max cost of this agent", "discriminator" : { "propertyName" : "type" }, "title" : "AgentClaimAmount" }, "paymentSessionId" : { "type" : "string", "description" : "The payment session ID for this remote agent. This will be shared with all other remote agents in the graph", "title" : "String" } }, "required" : [ "maxCost", "paymentSessionId", "runtime", "server", "type", "wallet" ], "title" : "remote" }, { "type" : "object", "description" : "A request for a remote agent and a list of places to try and source a server from", "properties" : { "type" : { "type" : "string", "enum" : [ "remote_request" ], "title" : "String" }, "runtime" : { "$ref" : "#/components/schemas/RuntimeId", "description" : "The runtime that should be used for this remote agent. Servers can export only specific runtimes so the runtime choice may narrow servers that can adequately provide the agent" }, "maxCost" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "coral" ], "title" : "String" }, "amount" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "amount", "type" ], "title" : "coral" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "micro_coral" ], "title" : "String" }, "amount" : { "type" : "integer", "format" : "int64", "title" : "Long" } }, "required" : [ "amount", "type" ], "title" : "micro_coral" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "usd" ], "title" : "String" }, "amount" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "amount", "type" ], "title" : "usd" } ], "description" : "The maximum we are willing to pay for this remote agent, note that if this is not high enough there may be no remotes willing to provide the agent", "discriminator" : { "propertyName" : "type" }, "title" : "AgentClaimAmount" }, "serverSource" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "org.coralprotocol.coralserver.agent.graph.server.GraphAgentServerSource.Indexer" ], "title" : "String" }, "indexer" : { "type" : "string", "title" : "String" } }, "required" : [ "indexer", "type" ], "title" : "Indexer" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "servers" ], "title" : "String" }, "servers" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/GraphAgentServer" }, "title" : "ArrayList" } }, "required" : [ "servers", "type" ], "title" : "servers" } ], "description" : "A description of which servers should be queried for this remote agent request", "discriminator" : { "propertyName" : "type" }, "title" : "GraphAgentServerSource" }, "serverScoring" : { "anyOf" : [ { "type" : "object", "description" : "Custom server scoring. Weights can be added on a flat or multiplier basis per attribute", "properties" : { "type" : { "type" : "string", "enum" : [ "custom" ], "title" : "String" }, "scorers" : { "type" : "array", "items" : { "anyOf" : [ { "type" : "object", "description" : "The effect will be applied for every attribute of the specified type with a boolean false value", "properties" : { "op" : { "type" : "string", "enum" : [ "is_false" ], "title" : "String" }, "type" : { "$ref" : "#/components/schemas/GraphAgentServerAttributeType" }, "effect" : { "$ref" : "#/components/schemas/flat", "description" : "A flat negative or positive weight" } }, "required" : [ "effect", "op", "type" ], "title" : "is_false" }, { "type" : "object", "description" : "The effect will be applied if the no attribute of the specified type is present", "properties" : { "op" : { "type" : "string", "enum" : [ "is_not_present" ], "title" : "String" }, "type" : { "$ref" : "#/components/schemas/GraphAgentServerAttributeType" }, "effect" : { "$ref" : "#/components/schemas/flat", "description" : "A flat negative or positive weight" } }, "required" : [ "effect", "op", "type" ], "title" : "is_not_present" }, { "type" : "object", "description" : "The effect will be applied for every attribute of the specified type", "properties" : { "op" : { "type" : "string", "enum" : [ "is_present" ], "title" : "String" }, "type" : { "$ref" : "#/components/schemas/GraphAgentServerAttributeType" }, "effect" : { "$ref" : "#/components/schemas/GraphAgentServerScorerEffect" } }, "required" : [ "effect", "op", "type" ], "title" : "is_present" }, { "type" : "object", "description" : "The effect will be applied for every attribute of the specified type with a boolean true value", "properties" : { "op" : { "type" : "string", "enum" : [ "is_true" ], "title" : "String" }, "type" : { "$ref" : "#/components/schemas/GraphAgentServerAttributeType" }, "effect" : { "$ref" : "#/components/schemas/flat", "description" : "A flat negative or positive weight" } }, "required" : [ "effect", "op", "type" ], "title" : "is_true" }, { "type" : "object", "description" : "The effect will be applied for every attribute of the specified type with a matching string value", "properties" : { "op" : { "type" : "string", "enum" : [ "string_equal" ], "title" : "String" }, "type" : { "$ref" : "#/components/schemas/GraphAgentServerAttributeType" }, "string" : { "type" : "string", "title" : "String" }, "effect" : { "$ref" : "#/components/schemas/flat", "description" : "A flat negative or positive weight" } }, "required" : [ "effect", "op", "string", "type" ], "title" : "string_equal" }, { "type" : "object", "description" : "The effect will be applied for every attribute of the specified type with a non-matching string value", "properties" : { "op" : { "type" : "string", "enum" : [ "string_not_equal" ], "title" : "String" }, "type" : { "$ref" : "#/components/schemas/GraphAgentServerAttributeType" }, "string" : { "type" : "string", "title" : "String" }, "effect" : { "$ref" : "#/components/schemas/flat", "description" : "A flat negative or positive weight" } }, "required" : [ "effect", "op", "string", "type" ], "title" : "string_not_equal" } ], "discriminator" : { "propertyName" : "op" }, "title" : "GraphAgentServerCustomScorer" }, "title" : "ArrayList" } }, "required" : [ "scorers", "type" ], "title" : "custom" }, { "type" : "object", "description" : "Default server scoring. No weights assigned to any server attribute", "properties" : { "type" : { "type" : "string", "enum" : [ "default" ], "title" : "String" } }, "required" : [ "type" ], "title" : "default" } ], "description" : "Customisation for the scoring of servers", "discriminator" : { "propertyName" : "type" }, "title" : "GraphAgentServerScoring" } }, "required" : [ "maxCost", "runtime", "serverSource", "type" ], "title" : "remote_request" } ], "description" : "The server that should provide this agent and the runtime to use", "discriminator" : { "propertyName" : "type" }, "title" : "GraphAgentProvider" } }, "required" : [ "coralPlugins", "customToolAccess", "id", "name", "options", "provider" ], "title" : "GraphAgentRequest" }, "AgentRegistryIdentifier" : { "type" : "object", "properties" : { "name" : { "type" : "string", "description" : "The exact name of the agent in the registry", "title" : "String" }, "version" : { "type" : "string", "description" : "The exact version of the agent in the registry", "title" : "String" } }, "required" : [ "name", "version" ], "title" : "AgentRegistryIdentifier" }, "RuntimeId" : { "type" : "string", "enum" : [ "executable", "docker", "function" ], "title" : "RuntimeId" }, "GraphAgentServer" : { "type" : "object", "properties" : { "address" : { "type" : "string", "title" : "String" }, "port" : { "type" : "integer", "maximum" : 65535, "minimum" : 0, "title" : "UShort" }, "secure" : { "type" : "boolean", "title" : "Boolean" }, "attributes" : { "type" : "array", "items" : { "anyOf" : [ { "type" : "object", "properties" : { "format" : { "type" : "string", "enum" : [ "boolean" ], "title" : "String" }, "type" : { "$ref" : "#/components/schemas/GraphAgentServerAttributeType" }, "value" : { "type" : "boolean", "title" : "Boolean" } }, "required" : [ "format", "type", "value" ], "title" : "boolean" }, { "type" : "object", "properties" : { "format" : { "type" : "string", "enum" : [ "number" ], "title" : "String" }, "type" : { "$ref" : "#/components/schemas/GraphAgentServerAttributeType" }, "value" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "format", "type", "value" ], "title" : "number" }, { "type" : "object", "properties" : { "format" : { "type" : "string", "enum" : [ "string" ], "title" : "String" }, "type" : { "$ref" : "#/components/schemas/GraphAgentServerAttributeType" }, "value" : { "type" : "string", "title" : "String" } }, "required" : [ "format", "type", "value" ], "title" : "string" } ], "discriminator" : { "propertyName" : "format" }, "title" : "GraphAgentServerAttribute" }, "title" : "ArrayList" } }, "required" : [ "address", "attributes", "port", "secure" ], "title" : "GraphAgentServer" }, "GraphAgentServerAttributeType" : { "type" : "string", "enum" : [ "geographic_location", "attested_by" ], "title" : "GraphAgentServerAttributeType" }, "flat" : { "type" : "object", "description" : "A flat negative or positive weight", "properties" : { "weight" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "weight" ], "title" : "flat" }, "GraphAgentServerScorerEffect" : { "anyOf" : [ { "type" : "object", "description" : "A flat negative or positive weight", "properties" : { "weight" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "weight" ], "title" : "flat" }, { "type" : "object", "description" : "A multiplier weight, this effect will only multiply against attributes with a number type", "properties" : { "weight" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "weight" ], "title" : "multiplier" } ], "title" : "GraphAgentServerScorerEffect" }, "SessionRequest" : { "type" : "object", "properties" : { "applicationId" : { "type" : "string", "description" : "A unique identifier for the application that requested this session", "title" : "String" }, "sessionId" : { "type" : "string", "description" : "Optionally set the session's ID. If not set, a random UUID will be used", "title" : "String" }, "privacyKey" : { "type" : "string", "description" : "For future use", "title" : "String" }, "agentGraphRequest" : { "$ref" : "#/components/schemas/AgentGraphRequest", "description" : "A request for a graph of agents" } }, "required" : [ "agentGraphRequest", "applicationId", "privacyKey" ], "title" : "SessionRequest" }, "SessionIdentifier" : { "type" : "object", "properties" : { "sessionId" : { "type" : "string", "description" : "The unique identifier for the session", "title" : "String" }, "applicationId" : { "type" : "string", "description" : "The unique identifier for the application", "title" : "String" }, "privacyKey" : { "type" : "string", "description" : "For future use", "title" : "String" } }, "required" : [ "applicationId", "privacyKey", "sessionId" ], "title" : "SessionIdentifier" }, "Document" : { "type" : "object", "properties" : { "id" : { "type" : "string", "title" : "String" }, "text" : { "type" : "string", "title" : "String" } }, "required" : [ "id", "text" ], "title" : "Document" }, "ToolFunction" : { "type" : "object", "properties" : { "name" : { "type" : "string", "title" : "String" }, "arguments" : { "type" : "string", "title" : "String" } }, "required" : [ "arguments", "name" ], "title" : "ToolFunction" }, "ContentFormat" : { "type" : "string", "enum" : [ "base64", "string" ], "title" : "ContentFormat" }, "AudioMediaType" : { "type" : "string", "enum" : [ "wav", "mp3", "aiff", "aac", "ogg", "flac" ], "title" : "AudioMediaType" }, "DocumentMediaType" : { "type" : "string", "enum" : [ "pdf", "txt", "rtf", "html", "css", "markdown", "csv", "xml", "javascript", "python" ], "title" : "DocumentMediaType" }, "ImageMediaType" : { "type" : "string", "enum" : [ "jpeg", "png", "gif", "webp", "heic", "heif", "svg" ], "title" : "ImageMediaType" }, "ImageDetail" : { "type" : "string", "enum" : [ "low", "high", "auto" ], "title" : "ImageDetail" }, "VideoMediaType" : { "type" : "string", "enum" : [ "avi", "mp4", "mpeg" ], "title" : "VideoMediaType" }, "AudioAssistant" : { "type" : "object", "properties" : { "id" : { "type" : "string", "title" : "String" } }, "required" : [ "id" ], "title" : "AudioAssistant" }, "ToolCall" : { "type" : "object", "properties" : { "id" : { "type" : "string", "title" : "String" }, "type" : { "$ref" : "#/components/schemas/ToolType" }, "function" : { "$ref" : "#/components/schemas/Function" } }, "required" : [ "function", "id", "type" ], "title" : "ToolCall" }, "ToolType" : { "type" : "string", "enum" : [ "function" ], "title" : "ToolType" }, "Function" : { "type" : "object", "properties" : { "name" : { "type" : "string", "title" : "String" }, "arguments" : { "type" : "string", "title" : "String" } }, "required" : [ "arguments", "name" ], "title" : "Function" }, "OpenAISystemContent" : { "type" : "object", "properties" : { "type" : { "$ref" : "#/components/schemas/SystemContentType" }, "text" : { "type" : "string", "title" : "String" } }, "required" : [ "text", "type" ], "title" : "OpenAISystemContent" }, "SystemContentType" : { "type" : "string", "enum" : [ "text" ], "title" : "SystemContentType" }, "OpenAIToolResultContent" : { "type" : "object", "properties" : { "type" : { "$ref" : "#/components/schemas/ToolResultContentType" }, "text" : { "type" : "string", "title" : "String" } }, "required" : [ "text", "type" ], "title" : "OpenAIToolResultContent" }, "ToolResultContentType" : { "type" : "string", "enum" : [ "text" ], "title" : "ToolResultContentType" }, "InputAudio" : { "type" : "object", "properties" : { "data" : { "type" : "string", "title" : "String" }, "format" : { "$ref" : "#/components/schemas/AudioMediaType" } }, "required" : [ "data", "format" ], "title" : "InputAudio" }, "ImageUrl" : { "type" : "object", "properties" : { "url" : { "type" : "string", "title" : "String" }, "detail" : { "$ref" : "#/components/schemas/ImageDetail" } }, "required" : [ "detail", "url" ], "title" : "ImageUrl" }, "Telemetry" : { "type" : "object", "properties" : { "modelDescription" : { "type" : "string", "title" : "String" }, "preamble" : { "type" : "string", "title" : "String" }, "resources" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/Document" }, "title" : "ArrayList" }, "tools" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/Document" }, "title" : "ArrayList" }, "temperature" : { "type" : "number", "format" : "double", "title" : "Double" }, "maxTokens" : { "type" : "integer", "format" : "int64", "title" : "Long" }, "additionalParams" : { "type" : "object", "additionalProperties" : { "$ref" : "#/components/schemas/JsonElement" }, "title" : "JsonObject" }, "messages" : { "anyOf" : [ { "type" : "object", "properties" : { "format" : { "type" : "string", "enum" : [ "Generic" ], "title" : "String" }, "data" : { "type" : "array", "items" : { "anyOf" : [ { "type" : "object", "properties" : { "role" : { "type" : "string", "enum" : [ "assistant" ], "title" : "String" }, "id" : { "type" : "string", "title" : "String" }, "content" : { "type" : "array", "items" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "assistant_reasoning" ], "title" : "String" }, "reasoning" : { "type" : "array", "items" : { "type" : "string", "title" : "String" }, "title" : "ArrayList" } }, "required" : [ "reasoning", "type" ], "title" : "assistant_reasoning" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "assistant_text" ], "title" : "String" }, "text" : { "type" : "string", "title" : "String" } }, "required" : [ "text", "type" ], "title" : "assistant_text" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "assistant_tool_call" ], "title" : "String" }, "id" : { "type" : "string", "title" : "String" }, "callId" : { "type" : "string", "title" : "String" }, "function" : { "$ref" : "#/components/schemas/ToolFunction" } }, "required" : [ "function", "id", "type" ], "title" : "assistant_tool_call" } ], "discriminator" : { "propertyName" : "type" }, "title" : "GenericAssistantContent" }, "title" : "ArrayList" } }, "required" : [ "content", "role" ], "title" : "assistant" }, { "type" : "object", "properties" : { "role" : { "type" : "string", "enum" : [ "user" ], "title" : "String" }, "content" : { "type" : "array", "items" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "audio" ], "title" : "String" }, "data" : { "type" : "string", "title" : "String" }, "format" : { "$ref" : "#/components/schemas/ContentFormat" }, "mediaType" : { "$ref" : "#/components/schemas/AudioMediaType" } }, "required" : [ "data", "type" ], "title" : "audio" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "document" ], "title" : "String" }, "data" : { "type" : "string", "title" : "String" }, "format" : { "$ref" : "#/components/schemas/ContentFormat" }, "mediaType" : { "$ref" : "#/components/schemas/DocumentMediaType" } }, "required" : [ "data", "type" ], "title" : "document" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "image" ], "title" : "String" }, "data" : { "type" : "string", "title" : "String" }, "format" : { "$ref" : "#/components/schemas/ContentFormat" }, "mediaType" : { "$ref" : "#/components/schemas/ImageMediaType" }, "detail" : { "$ref" : "#/components/schemas/ImageDetail" } }, "required" : [ "data", "type" ], "title" : "image" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "text" ], "title" : "String" }, "text" : { "type" : "string", "title" : "String" } }, "required" : [ "text", "type" ], "title" : "text" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "tool_result" ], "title" : "String" }, "id" : { "type" : "string", "title" : "String" }, "callId" : { "type" : "string", "title" : "String" }, "content" : { "type" : "array", "items" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "tool_image" ], "title" : "String" }, "data" : { "type" : "string", "title" : "String" }, "format" : { "$ref" : "#/components/schemas/ContentFormat" }, "mediaType" : { "$ref" : "#/components/schemas/ImageMediaType" }, "detail" : { "$ref" : "#/components/schemas/ImageDetail" } }, "required" : [ "data", "type" ], "title" : "tool_image" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "tool_text" ], "title" : "String" }, "text" : { "type" : "string", "title" : "String" } }, "required" : [ "text", "type" ], "title" : "tool_text" } ], "discriminator" : { "propertyName" : "type" }, "title" : "GenericToolResultContent" }, "title" : "ArrayList" } }, "required" : [ "content", "id", "type" ], "title" : "tool_result" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "video" ], "title" : "String" }, "data" : { "type" : "string", "title" : "String" }, "format" : { "$ref" : "#/components/schemas/ContentFormat" }, "mediaType" : { "$ref" : "#/components/schemas/VideoMediaType" } }, "required" : [ "data", "type" ], "title" : "video" } ], "discriminator" : { "propertyName" : "type" }, "title" : "GenericUserContent" }, "title" : "ArrayList" } }, "required" : [ "content", "role" ], "title" : "user" } ], "discriminator" : { "propertyName" : "role" }, "title" : "GenericMessage" }, "title" : "ArrayList" } }, "required" : [ "data", "format" ], "title" : "Generic" }, { "type" : "object", "properties" : { "format" : { "type" : "string", "enum" : [ "OpenAI" ], "title" : "String" }, "data" : { "type" : "array", "items" : { "anyOf" : [ { "type" : "object", "properties" : { "role" : { "type" : "string", "enum" : [ "assistant" ], "title" : "String" }, "content" : { "type" : "array", "items" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "refusal" ], "title" : "String" }, "refusal" : { "type" : "string", "title" : "String" } }, "required" : [ "refusal", "type" ], "title" : "refusal" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "text" ], "title" : "String" }, "text" : { "type" : "string", "title" : "String" } }, "required" : [ "text", "type" ], "title" : "text" } ], "discriminator" : { "propertyName" : "type" }, "title" : "OpenAIAssistantContent" }, "title" : "ArrayList" }, "refusal" : { "type" : "string", "title" : "String" }, "audio" : { "$ref" : "#/components/schemas/AudioAssistant" }, "name" : { "type" : "string", "title" : "String" }, "toolCalls" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/ToolCall" }, "title" : "ArrayList" } }, "required" : [ "content", "role", "toolCalls" ], "title" : "assistant" }, { "type" : "object", "properties" : { "role" : { "type" : "string", "enum" : [ "developer" ], "title" : "String" }, "content" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/OpenAISystemContent" }, "title" : "ArrayList" }, "name" : { "type" : "string", "title" : "String" } }, "required" : [ "content", "role" ], "title" : "developer" }, { "type" : "object", "properties" : { "role" : { "type" : "string", "enum" : [ "tool" ], "title" : "String" }, "toolCallId" : { "type" : "string", "title" : "String" }, "content" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/OpenAIToolResultContent" }, "title" : "ArrayList" } }, "required" : [ "content", "role", "toolCallId" ], "title" : "tool" }, { "type" : "object", "properties" : { "role" : { "type" : "string", "enum" : [ "user" ], "title" : "String" }, "content" : { "type" : "array", "items" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "audio" ], "title" : "String" }, "inputAudio" : { "$ref" : "#/components/schemas/InputAudio" } }, "required" : [ "inputAudio", "type" ], "title" : "audio" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "image_url" ], "title" : "String" }, "imageUrl" : { "$ref" : "#/components/schemas/ImageUrl" } }, "required" : [ "imageUrl", "type" ], "title" : "image_url" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "text" ], "title" : "String" }, "text" : { "type" : "string", "title" : "String" } }, "required" : [ "text", "type" ], "title" : "text" } ], "discriminator" : { "propertyName" : "type" }, "title" : "OpenAIUserContent" }, "title" : "ArrayList" }, "name" : { "type" : "string", "title" : "String" } }, "required" : [ "content", "role" ], "title" : "user" } ], "discriminator" : { "propertyName" : "role" }, "title" : "OpenAIMessage" }, "title" : "ArrayList" } }, "required" : [ "data", "format" ], "title" : "OpenAI" } ], "discriminator" : { "propertyName" : "format" }, "title" : "TelemetryMessages" } }, "required" : [ "messages", "modelDescription", "resources", "tools" ], "title" : "Telemetry" }, "TelemetryTarget" : { "type" : "object", "properties" : { "threadId" : { "type" : "string", "title" : "String" }, "messageId" : { "type" : "string", "title" : "String" } }, "required" : [ "messageId", "threadId" ], "title" : "TelemetryTarget" }, "TelemetryPost" : { "type" : "object", "properties" : { "targets" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/TelemetryTarget" }, "title" : "ArrayList" }, "data" : { "$ref" : "#/components/schemas/Telemetry" } }, "required" : [ "data", "targets" ], "title" : "TelemetryPost" }, "PublicRegistryAgent" : { "type" : "object", "properties" : { "id" : { "$ref" : "#/components/schemas/AgentRegistryIdentifier" }, "runtimes" : { "type" : "array", "items" : { "$ref" : "#/components/schemas/RuntimeId" }, "title" : "ArrayList" }, "options" : { "type" : "object", "additionalProperties" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "number" ], "title" : "String" }, "description" : { "type" : "string", "title" : "String" }, "default" : { "type" : "number", "format" : "double", "title" : "Double" }, "required" : { "type" : "boolean", "title" : "Boolean" } }, "required" : [ "required", "type" ], "title" : "number" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "secret" ], "title" : "String" }, "description" : { "type" : "string", "title" : "String" }, "required" : { "type" : "boolean", "title" : "Boolean" } }, "required" : [ "required", "type" ], "title" : "secret" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "string" ], "title" : "String" }, "description" : { "type" : "string", "title" : "String" }, "default" : { "type" : "string", "title" : "String" }, "required" : { "type" : "boolean", "title" : "Boolean" } }, "required" : [ "required", "type" ], "title" : "string" } ], "discriminator" : { "propertyName" : "type" }, "title" : "AgentOption" }, "title" : "LinkedHashMap" }, "exportSettings" : { "type" : "object", "additionalProperties" : { "$ref" : "#/components/schemas/PublicAgentExportSettings" }, "title" : "LinkedHashMap" } }, "required" : [ "exportSettings", "id", "options", "runtimes" ], "title" : "PublicRegistryAgent" }, "PublicAgentExportSettings" : { "type" : "object", "properties" : { "quantity" : { "type" : "integer", "maximum" : 4294967295, "minimum" : 0, "title" : "UInt" }, "pricing" : { "$ref" : "#/components/schemas/RegistryAgentExportPricing" } }, "required" : [ "pricing", "quantity" ], "title" : "PublicAgentExportSettings" }, "RegistryAgentExportPricing" : { "type" : "object", "properties" : { "min_price" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "coral" ], "title" : "String" }, "amount" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "amount", "type" ], "title" : "coral" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "micro_coral" ], "title" : "String" }, "amount" : { "type" : "integer", "format" : "int64", "title" : "Long" } }, "required" : [ "amount", "type" ], "title" : "micro_coral" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "usd" ], "title" : "String" }, "amount" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "amount", "type" ], "title" : "usd" } ], "discriminator" : { "propertyName" : "type" }, "title" : "AgentClaimAmount" }, "max_price" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "coral" ], "title" : "String" }, "amount" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "amount", "type" ], "title" : "coral" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "micro_coral" ], "title" : "String" }, "amount" : { "type" : "integer", "format" : "int64", "title" : "Long" } }, "required" : [ "amount", "type" ], "title" : "micro_coral" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "usd" ], "title" : "String" }, "amount" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "amount", "type" ], "title" : "usd" } ], "discriminator" : { "propertyName" : "type" }, "title" : "AgentClaimAmount" } }, "required" : [ "max_price", "min_price" ], "title" : "RegistryAgentExportPricing" }, "PaidGraphAgentRequest" : { "type" : "object", "description" : "A paid request for an agent. GraphAgentRequest -> GraphAgent", "properties" : { "graphAgentRequest" : { "$ref" : "#/components/schemas/GraphAgentRequest", "description" : "A request for an agent. GraphAgentRequest -> GraphAgent" }, "paidSessionId" : { "type" : "integer", "format" : "int64", "title" : "Long" } }, "required" : [ "graphAgentRequest", "paidSessionId" ], "title" : "PaidGraphAgentRequest" }, "AgentPaymentClaimRequest" : { "type" : "object", "properties" : { "amount" : { "anyOf" : [ { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "coral" ], "title" : "String" }, "amount" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "amount", "type" ], "title" : "coral" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "micro_coral" ], "title" : "String" }, "amount" : { "type" : "integer", "format" : "int64", "title" : "Long" } }, "required" : [ "amount", "type" ], "title" : "micro_coral" }, { "type" : "object", "properties" : { "type" : { "type" : "string", "enum" : [ "usd" ], "title" : "String" }, "amount" : { "type" : "number", "format" : "double", "title" : "Double" } }, "required" : [ "amount", "type" ], "title" : "usd" } ], "description" : "The amount to claim. This will be converted to Coral when received", "discriminator" : { "propertyName" : "type" }, "title" : "AgentClaimAmount" } }, "required" : [ "amount" ], "title" : "AgentPaymentClaimRequest" }, "AgentRemainingBudget" : { "type" : "object", "description" : "\n This object is returned by the agent claim endpoint and represents the remaining budget for the agent. The agent \n should use this respond to decide whether whether it can continue providing services with the remaining budget.\n \n This object attaches a USD price for a Coral to it so that agents do not have to make multiple calls to the pricing \n endpoint to determine the price of a Coral. This field is an 'estimate', it can be based off cached data and may not \n be accurate, so this should only be used if the agent represented it's rates in USD.\n \n If better accuracy is required agent-side, the budget should only use micro-corals.\n", "properties" : { "remainingBudget" : { "type" : "integer", "format" : "int64", "description" : "The remaining budget for the agent, represented in micro-corals", "title" : "Long" }, "coralUsdPrice" : { "type" : "number", "format" : "double", "description" : "Current USD price for one whole Coral", "title" : "Double" } }, "required" : [ "coralUsdPrice", "remainingBudget" ], "title" : "AgentRemainingBudget" } }, "examples" : { } }, "webhooks" : { } }