{ "openapi": "3.1.0", "info": { "title": "Klavis AI (https://www.klavis.ai)", "description": "Klavis AI - Open Source MCP Integrations for AI Applications", "version": "0.1.0" }, "servers": [ { "url": "https://api.klavis.ai", "description": "US Production server" }, { "url": "https://api.eu.klavis.ai", "description": "EU Production server" } ], "paths": { "/mcp-server/call-tool": { "post": { "tags": [ "mcp-server" ], "summary": "Call Tool", "description": "Calls a tool on a specific remote MCP server, used for function calling. Eliminates the need for manual MCP code implementation.\nUnder the hood, Klavis will instantiates an MCP client and establishes a connection with the remote MCP server to call the tool.", "operationId": "callServerTool", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallToolRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CallToolResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/mcp-server/list-tools": { "post": { "tags": [ "mcp-server" ], "summary": "List Tools", "description": "Lists all tools available for a specific remote MCP server in various AI model formats.\n\nThis eliminates the need for manual MCP code implementation and format conversion.\nUnder the hood, Klavis instantiates an MCP client and establishes a connection \nwith the remote MCP server to retrieve available tools.", "operationId": "listServerTools", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListToolsRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListToolsResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/mcp-server/strata/create": { "post": { "tags": [ "mcp-server" ], "summary": "Create", "description": "Create a Strata MCP server.\n\nParameters:\n- servers: Can be 'ALL' to add all available Klavis integration, a list of specific server names, or null to add no servers\n- externalServers: Optional list of external MCP servers to validate and add", "operationId": "create_strata_server_mcp_server_strata_create_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StrataCreateRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StrataCreateResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/mcp-server/strata/add": { "post": { "tags": [ "mcp-server" ], "summary": "Add", "description": "Add servers to an existing Strata MCP server.\n\nNote: After adding servers, you need to reconnect the MCP server so that list_tool can be updated with the new servers.\n\nParameters:\n- servers: Can be 'ALL' to add all available servers, a list of specific server names, or null to add no servers\n- externalServers: Optional list of external MCP servers to validate and add", "operationId": "add_servers_to_strata_mcp_server_strata_add_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StrataAddServersRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StrataAddServersResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/mcp-server/strata/{strataId}/servers": { "delete": { "tags": [ "mcp-server" ], "summary": "Delete", "description": "Delete servers from an existing Strata MCP server.\n\nNote: After deleting servers, you need to reconnect the MCP server so that list_tool can be updated to reflect the removed servers.\n\nParameters:\n- strataId: The strata server ID (path parameter)\n- servers: Can be 'ALL' to delete all available Klavis integration, a list of specific server names, or null to delete no servers\n- externalServers: Query parameter - comma-separated list of external server names to delete\n\nReturns separate lists for deleted Klavis servers and deleted external servers.", "operationId": "delete_servers_from_strata_mcp_server_strata__strataId__servers_delete", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "strataId", "in": "path", "required": true, "schema": { "type": "string", "title": "Strataid" } }, { "name": "servers", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "array", "items": { "anyOf": [ { "$ref": "#/components/schemas/McpServerName" }, { "const": "ALL", "type": "string" } ] } }, { "type": "null" } ], "description": "List of Klavis integration to delete (e.g., 'jira', 'linear'), 'ALL' to delete all Klavis integration, or null to delete no servers.", "title": "Servers" }, "description": "List of Klavis integration to delete (e.g., 'jira', 'linear'), 'ALL' to delete all Klavis integration, or null to delete no servers." }, { "name": "externalServers", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Comma-separated list of external server names to delete", "title": "Externalservers" }, "description": "Comma-separated list of external server names to delete" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StrataDeleteServersResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/mcp-server/strata/{strataId}": { "get": { "tags": [ "mcp-server" ], "summary": "Get", "description": "Get information about an existing Strata MCP server instance.\n\nReturns the strata URL, connected klavis servers, connected external servers (with URLs), \nand authentication URLs for klavis servers.", "operationId": "get_strata_server_mcp_server_strata__strataId__get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "strataId", "in": "path", "required": true, "schema": { "type": "string", "title": "Strataid" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StrataGetResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/mcp-server/strata/{strataId}/raw-actions": { "get": { "tags": [ "mcp-server" ], "summary": "List Raw Actions", "description": "Fetch raw actions (all underlying actions) for a specific integration within a Strata MCP instance.", "operationId": "list_strata_raw_actions_mcp_server_strata__strataId__raw_actions_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "strataId", "in": "path", "required": true, "schema": { "type": "string", "description": "The strata server ID", "title": "Strataid" }, "description": "The strata server ID" }, { "name": "server", "in": "query", "required": true, "schema": { "$ref": "#/components/schemas/McpServerName", "minLength": 1, "description": "The name of the server to fetch raw actions for" }, "description": "The name of the server to fetch raw actions for" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StrataRawActionsResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/mcp-server/strata/{strataId}/auth/{serverName}": { "get": { "tags": [ "mcp-server" ], "summary": "Get Strata Auth", "description": "Retrieves authentication data for a specific integration within a Strata MCP server.\n\nReturns the authentication data if available, along with authentication status.", "operationId": "getStrataAuth", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "strataId", "in": "path", "required": true, "schema": { "type": "string", "description": "The strata server ID", "title": "Strataid" }, "description": "The strata server ID" }, { "name": "serverName", "in": "path", "required": true, "schema": { "$ref": "#/components/schemas/McpServerName", "description": "The name of the Klavis MCP server to get authentication for (e.g., 'GitHub', 'Jira')" }, "description": "The name of the Klavis MCP server to get authentication for (e.g., 'GitHub', 'Jira')" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StrataGetAuthResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "delete": { "tags": [ "mcp-server" ], "summary": "Delete Strata Auth", "description": "Deletes authentication data for a specific integration within a Strata MCP server.\n\nThis will clear the stored authentication credentials, effectively unauthenticating the server.", "operationId": "deleteStrataAuth", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "strataId", "in": "path", "required": true, "schema": { "type": "string", "description": "The strata server ID", "title": "Strataid" }, "description": "The strata server ID" }, { "name": "serverName", "in": "path", "required": true, "schema": { "$ref": "#/components/schemas/McpServerName", "description": "The name of the Klavis MCP server to delete authentication for (e.g., 'github', 'jira')" }, "description": "The name of the Klavis MCP server to delete authentication for (e.g., 'github', 'jira')" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StatusResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/mcp-server/strata/set-auth": { "post": { "tags": [ "mcp-server" ], "summary": "Set Strata Auth", "description": "Sets authentication data for a specific integration within a Strata MCP server.\n\nAccepts either API key authentication or general authentication data.", "operationId": "set_strata_auth_mcp_server_strata_set_auth_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StrataSetAuthRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StatusResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/mcp-server/instance/create": { "post": { "tags": [ "mcp-server" ], "summary": "Create", "description": "Creates a URL for a specified MCP server,\nvalidating the request with an API key and user details.\nReturns the existing server URL if it already exists for the user.\nIf OAuth is configured for the server, also returns the base OAuth authorization URL.\nNote that some servers have hundreds of tools and therefore only expose the Strata tools.", "operationId": "createServerInstance", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateServerRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateServerResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/mcp-server/self-hosted/instance/create": { "post": { "tags": [ "mcp-server" ], "summary": "Create", "description": "Creates an instance id for a self-hosted MCP server,\nvalidating the request with an API key and user details.\nThe main purpose of this endpoint is to create an instance id for a self-hosted MCP server.\nThe instance id is used to identify and store the auth metadata in the database.\nReturns the existing instance id if it already exists for the user.", "operationId": "createSelfHostedServerInstance", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSelfHostedServerRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSelfHostedServerResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/mcp-server/instance/{instanceId}": { "get": { "tags": [ "mcp-server" ], "summary": "Get", "description": "Checks the details of a specific server connection instance using its unique ID and API key,\nreturning server details like authentication status and associated server/platform info.", "operationId": "getServerInstance", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "instanceId", "in": "path", "required": true, "schema": { "type": "string", "format": "uuid", "description": "The ID of the connection integration instance whose status is being checked. This is returned by the Create API.", "title": "Instanceid" }, "description": "The ID of the connection integration instance whose status is being checked. This is returned by the Create API." } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetInstanceResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "patch": { "tags": [ "mcp-server" ], "summary": "Update", "description": "Updates the settings of a specific server connection instance.\nCurrently supports updating the read-only status of the connection.", "operationId": "updateServerInstance", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "instanceId", "in": "path", "required": true, "schema": { "type": "string", "format": "uuid", "description": "The ID of the connection integration instance to update.", "title": "Instanceid" }, "description": "The ID of the connection integration instance to update." } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateServerInstanceRequest" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateServerInstanceResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "delete": { "tags": [ "mcp-server" ], "summary": "Delete", "description": "Completely removes a server connection instance using its unique ID,\ndeleting all associated data from the system.", "operationId": "deleteServerInstance", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "instanceId", "in": "path", "required": true, "schema": { "type": "string", "format": "uuid", "description": "The ID of the connection instance to delete.", "title": "Instanceid" }, "description": "The ID of the connection instance to delete." } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StatusResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/mcp-server/instance/{instanceId}/auth": { "delete": { "tags": [ "mcp-server" ], "summary": "Delete Instance Auth", "description": "Deletes authentication data for a specific server connection instance.", "operationId": "deleteInstanceAuth", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "instanceId", "in": "path", "required": true, "schema": { "type": "string", "format": "uuid", "description": "The ID of the connection instance to delete auth for.", "title": "Instanceid" }, "description": "The ID of the connection instance to delete auth for." } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StatusResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "get": { "tags": [ "mcp-server" ], "summary": "Get Instance Auth", "description": "Retrieves the auth data for a specific integration instance that the API key owner controls.\nIncludes access token, refresh token, and other authentication data.\n\nThis endpoint includes proper ownership verification to ensure users can only access\nauthentication data for integration instances they own. It also handles token refresh if needed.", "operationId": "getInstanceAuthData", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "instanceId", "in": "path", "required": true, "schema": { "type": "string", "format": "uuid", "description": "The ID of the connection integration instance to get auth data for.", "title": "Instanceid" }, "description": "The ID of the connection integration instance to get auth data for." } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAuthDataResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/mcp-server/tools/{serverName}": { "get": { "tags": [ "mcp-server" ], "summary": "Get Tools", "description": "Get tools information for any MCP server.", "operationId": "getServerTools", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "serverName", "in": "path", "required": true, "schema": { "$ref": "#/components/schemas/McpServerName", "description": "The name of the target MCP server. Case-insensitive (e.g., 'google calendar', 'GOOGLE_CALENDAR', 'Google Calendar' are all valid)." }, "description": "The name of the target MCP server. Case-insensitive (e.g., 'google calendar', 'GOOGLE_CALENDAR', 'Google Calendar' are all valid)." }, { "name": "format", "in": "query", "required": false, "schema": { "$ref": "#/components/schemas/ToolFormat", "description": "The format to return tools in. Default is MCP Native format for maximum compatibility.", "default": "mcp_native" }, "description": "The format to return tools in. Default is MCP Native format for maximum compatibility." }, { "name": "legacy", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Whether to use the legacy server. Default is False.", "default": false, "title": "Legacy" }, "description": "Whether to use the legacy server. Default is False." } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListToolsResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/mcp-server/servers": { "get": { "tags": [ "mcp-server" ], "summary": "Get All Servers", "description": "Get all MCP servers with their basic information including id, name, description, and tools.", "operationId": "getAllMcpServers", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetMcpServersResponse" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/mcp-server/instance/set-auth": { "post": { "tags": [ "mcp-server" ], "summary": "Set Instance Auth", "description": "Sets authentication data for a specific integration instance.\nAccepts either API key authentication or general authentication data.\nThis updates the auth_metadata for the specified integration instance.", "operationId": "setInstanceAuth", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SetAuthRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StatusResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/mcp-server/instance/{instanceId}/raw-actions": { "get": { "tags": [ "mcp-server" ], "summary": "List Raw Actions", "description": "Fetch raw actions (all underlying actions) for a specific integration instance.\n\nThis endpoint takes an instance ID, and then fetches the raw actions with categories.", "operationId": "listRawActions", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "instanceId", "in": "path", "required": true, "schema": { "type": "string", "description": "The instance ID for the server connection", "title": "Instanceid" }, "description": "The instance ID for the server connection" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RawActionsResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/white-labeling/create": { "post": { "tags": [ "white-labeling" ], "summary": "Create", "description": "Saves OAuth white labeling information, or updates existing information if the `client_id` matches.", "operationId": "createWhiteLabeling", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateWhiteLabelingRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WhiteLabelingResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/white-labeling/get/{client_id}": { "get": { "tags": [ "white-labeling" ], "summary": "Get", "description": "Retrieves white labeling information for a specific OAuth client ID.", "operationId": "getWhiteLabelingByClientId", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "client_id", "in": "path", "required": true, "schema": { "type": "string", "title": "Client Id" } } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WhiteLabelingResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/user/{userId}/integrations": { "get": { "tags": [ "user" ], "summary": "Get User Integrations", "description": "Get all available integrations (MCP server names) by user ID.\nReturns a list of integration names and their authentication status.", "operationId": "getUserIntegrations", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "userId", "in": "path", "required": true, "schema": { "type": "string", "minLength": 1, "description": "The external user ID", "title": "Userid" }, "description": "The external user ID" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetUserIntegrationsResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/user/{userId}": { "get": { "tags": [ "user" ], "summary": "Get User", "description": "Get user information by user_id.", "operationId": "getUserByUserId", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "userId", "in": "path", "required": true, "schema": { "type": "string", "minLength": 1, "description": "The identifier for the user to fetch.", "title": "Userid" }, "description": "The identifier for the user to fetch." } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetUserResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "delete": { "tags": [ "user" ], "summary": "Delete User", "description": "Delete a user and all associated data by user_id.\nUsers cannot delete their own accounts.\nThis operation will permanently remove all user data.", "operationId": "deleteUserByUserId", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "userId", "in": "path", "required": true, "schema": { "type": "string", "minLength": 1, "description": "The identifier for the user to delete.", "title": "Userid" }, "description": "The identifier for the user to delete." } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteUserResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/user/": { "get": { "tags": [ "user" ], "summary": "Get All Users", "description": "Retrieve all users that have been created under your account, with support for pagination.", "operationId": "getAllUsers", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "page_size", "in": "query", "required": false, "schema": { "type": "integer", "maximum": 1000, "minimum": 1, "description": "Number of results per page (max 1000)", "default": 50, "title": "Page Size" }, "description": "Number of results per page (max 1000)" }, { "name": "page_number", "in": "query", "required": false, "schema": { "type": "integer", "minimum": 1, "description": "Page number to retrieve (starting from 1)", "default": 1, "title": "Page Number" }, "description": "Page number to retrieve (starting from 1)" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetAllUsersResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/user/set-auth": { "post": { "tags": [ "user" ], "summary": "Set User Auth", "description": "Sets authentication data for a specific integration for a user.\n\nAccepts either API key authentication or general authentication data.\nThis updates the auth_metadata for the specified user's integration instance.", "operationId": "setUserAuth", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SetUserAuthRequest" } } }, "required": true }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StatusResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/user/{userId}/auth/{serverName}": { "get": { "tags": [ "user" ], "summary": "Get User Auth", "description": "Retrieves authentication data for a specific integration for a user.\n\nReturns the authentication data if available, along with authentication status.\nIncludes token refresh handling if needed.", "operationId": "getUserAuth", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "userId", "in": "path", "required": true, "schema": { "type": "string", "minLength": 1, "description": "The identifier for the user", "title": "Userid" }, "description": "The identifier for the user" }, { "name": "serverName", "in": "path", "required": true, "schema": { "$ref": "#/components/schemas/McpServerName", "description": "The name of the MCP server (e.g., 'GitHub', 'Jira')" }, "description": "The name of the MCP server (e.g., 'GitHub', 'Jira')" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/GetUserAuthResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "delete": { "tags": [ "user" ], "summary": "Delete User Auth", "description": "Deletes authentication data for a specific integration for a user.\n\nThis will clear the stored authentication credentials, effectively unauthenticating the integration.", "operationId": "deleteUserAuth", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "userId", "in": "path", "required": true, "schema": { "type": "string", "minLength": 1, "description": "The unique identifier for the user", "title": "Userid" }, "description": "The unique identifier for the user" }, { "name": "serverName", "in": "path", "required": true, "schema": { "$ref": "#/components/schemas/McpServerName", "description": "The name of the MCP server to delete authentication for (e.g., 'github', 'jira')" }, "description": "The name of the MCP server to delete authentication for (e.g., 'github', 'jira')" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/StatusResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/slack/authorize": { "get": { "tags": [ "slack-oauth" ], "summary": "Authorize Slack", "description": "Start Slack OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- user_scope: Optional user-specific scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeSlack", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "user_scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional user-specific OAuth scopes to request (comma-separated string)", "title": "User Scope" }, "description": "Optional user-specific OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/github/authorize": { "get": { "tags": [ "github-oauth" ], "summary": "Authorize Github", "description": "Start GitHub OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeGithub", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/gitlab/authorize": { "get": { "tags": [ "gitlab-oauth" ], "summary": "Authorize Gitlab", "description": "Start GitLab OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeGitlab", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/supabase/authorize": { "get": { "tags": [ "supabase-oauth" ], "summary": "Authorize Supabase", "description": "Start Supabase OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeSupabase", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/notion/authorize": { "get": { "tags": [ "notion-oauth" ], "summary": "Authorize Notion", "description": "Start Notion OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeNotion", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/jira/authorize": { "get": { "tags": [ "jira-oauth" ], "summary": "Authorize Jira", "description": "Start Jira OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeJira", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/confluence/authorize": { "get": { "tags": [ "confluence-oauth" ], "summary": "Authorize Confluence", "description": "Start Confluence OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeConfluence", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/wordpress/authorize": { "get": { "tags": [ "wordpress-oauth" ], "summary": "Authorize Wordpress", "description": "Start WordPress OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeWordpress", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/gmail/authorize": { "get": { "tags": [ "gmail-oauth" ], "summary": "Authorize Gmail", "description": "Start Gmail OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeGmail", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/gdrive/authorize": { "get": { "tags": [ "gdrive-oauth" ], "summary": "Authorize Gdrive", "description": "Start Google Drive OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeGDrive", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/gcalendar/authorize": { "get": { "tags": [ "gcalendar-oauth" ], "summary": "Authorize Gcalendar", "description": "Start Google Calendar OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeGCalendar", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/gsheets/authorize": { "get": { "tags": [ "gsheets-oauth" ], "summary": "Authorize Gsheets", "description": "Start Google Sheets OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeGSheets", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/gdocs/authorize": { "get": { "tags": [ "gdocs-oauth" ], "summary": "Authorize Gdocs", "description": "Start Google Docs OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeGDocs", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/google-cloud/authorize": { "get": { "tags": [ "google-cloud-oauth" ], "summary": "Authorize Google Cloud", "description": "Start Google Cloud OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeGoogleCloud", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/google-forms/authorize": { "get": { "tags": [ "google-forms-oauth" ], "summary": "Authorize Google Forms", "description": "Start Google Forms OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeGoogleForms", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/google-workspace-atlas/authorize": { "get": { "tags": [ "google-workspace-atlas-oauth" ], "summary": "Authorize", "operationId": "authorizeGoogleWorkspaceAtlas", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/attio/authorize": { "get": { "tags": [ "attio-oauth" ], "summary": "Authorize Attio", "description": "Start Attio OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeAttio", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/salesforce/authorize": { "get": { "tags": [ "salesforce-oauth" ], "summary": "Authorize Salesforce", "description": "Start Salesforce OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes\n- instance_url: Optional Salesforce instance URL for sandbox or custom domains", "operationId": "authorizeSalesforce", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" }, { "name": "instance_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Salesforce instance URL (e.g., https://mycompany.salesforce.com). If not provided, will use default login.salesforce.com", "title": "Instance Url" }, "description": "Salesforce instance URL (e.g., https://mycompany.salesforce.com). If not provided, will use default login.salesforce.com" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/asana/authorize": { "get": { "tags": [ "asana-oauth" ], "summary": "Authorize Asana", "description": "Start Asana OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeAsana", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/linear/authorize": { "get": { "tags": [ "linear-oauth" ], "summary": "Authorize Linear", "description": "Start Linear OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeLinear", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/close/authorize": { "get": { "tags": [ "close-oauth" ], "summary": "Authorize Close", "description": "Start Close OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeClose", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/clickup/authorize": { "get": { "tags": [ "clickup-oauth" ], "summary": "Authorize Clickup", "description": "Start ClickUp OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeClickUp", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/airtable/authorize": { "get": { "tags": [ "airtable-oauth" ], "summary": "Authorize Airtable", "description": "Start Airtable OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeAirtable", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/hubspot/authorize": { "get": { "tags": [ "hubspot-oauth" ], "summary": "Authorize Hubspot", "description": "Start HubSpot OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeHubspot", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/linkedin/authorize": { "get": { "tags": [ "linkedin-oauth" ], "summary": "Authorize Linkedin", "description": "Start LinkedIn OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeLinkedIn", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/canva/authorize": { "get": { "tags": [ "canva-oauth" ], "summary": "Authorize Canva", "description": "Start Canva OAuth flow with PKCE\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated, e.g., \"design:meta:read profile:read\")\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeCanva", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/xero/authorize": { "get": { "tags": [ "xero-oauth" ], "summary": "Authorize Xero", "description": "Start Xero OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeXero", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/dropbox/authorize": { "get": { "tags": [ "dropbox-oauth" ], "summary": "Authorize Dropbox", "description": "Start Dropbox OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeDropbox", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/box/authorize": { "get": { "tags": [ "box-oauth" ], "summary": "Authorize Box", "description": "Start Box OAuth 2.0 flow", "operationId": "authorizeBox", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/quickbooks/authorize": { "get": { "tags": [ "quickbooks-oauth" ], "summary": "Authorize Quickbooks", "description": "Start QuickBooks OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- environment: QuickBooks environment to authorize ('sandbox' default)\n- scope: Optional scopes to request (space-separated). Default is 'com.intuit.quickbooks.accounting'\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeQuickBooks", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "environment", "in": "query", "required": false, "schema": { "enum": [ "sandbox", "production" ], "type": "string", "description": "QuickBooks environment to authorize ('sandbox' or 'production')", "default": "sandbox", "title": "Environment" }, "description": "QuickBooks environment to authorize ('sandbox' or 'production')" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/zendesk/authorize": { "get": { "tags": [ "zendesk-oauth" ], "summary": "Authorize Zendesk", "description": "Start Zendesk OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes\n- subdomain: Zendesk subdomain for the account being connected", "operationId": "authorizeZendesk", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "subdomain", "in": "query", "required": true, "schema": { "type": "string", "description": "Zendesk subdomain for the account being connected (e.g., 'mycompany' for mycompany.zendesk.com)", "title": "Subdomain" }, "description": "Zendesk subdomain for the account being connected (e.g., 'mycompany' for mycompany.zendesk.com)" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/stripe/authorize": { "get": { "tags": [ "stripe-connect-oauth" ], "summary": "Authorize Stripe Connect", "description": "Start Stripe Connect OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeStripeConnect", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/calcom/authorize": { "get": { "tags": [ "calcom-oauth" ], "summary": "Authorize Calcom", "description": "Start Cal.com OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeCalcom", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/vercel/authorize": { "get": { "tags": [ "vercel-oauth" ], "summary": "Authorize Vercel", "description": "Start Vercel OAuth flow using integration pattern\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- client_slug: Vercel integration slug (required for integration-based OAuth)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeVercel", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "client_slug", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Vercel integration slug (required for integration-based OAuth)", "title": "Client Slug" }, "description": "Vercel integration slug (required for integration-based OAuth)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/pipedrive/authorize": { "get": { "tags": [ "pipedrive-oauth" ], "summary": "Authorize Pipedrive", "description": "Start Pipedrive OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizePipedrive", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/figma/authorize": { "get": { "tags": [ "figma-oauth" ], "summary": "Authorize Figma", "description": "Start Figma OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeFigma", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request", "title": "Scope" }, "description": "Optional OAuth scopes to request" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/klaviyo/authorize": { "get": { "tags": [ "klaviyo-oauth" ], "summary": "Authorize Klaviyo", "operationId": "authorizeKlaviyo", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/pagerduty/authorize": { "get": { "tags": [ "pagerduty-oauth" ], "summary": "Authorize Pagerduty", "description": "Start PagerDuty OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizePagerDuty", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/docusign/authorize": { "get": { "tags": [ "docusign-oauth" ], "summary": "Authorize Docusign", "description": "Start DocuSign OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeDocuSign", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/dialpad/authorize": { "get": { "tags": [ "dialpad-oauth" ], "summary": "Authorize Dialpad", "description": "Start Dialpad OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes\n- code_challenge: PKCE code challenge for enhanced security\n- code_challenge_method: PKCE code challenge method", "operationId": "authorizeDialpad", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" }, { "name": "code_challenge", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "PKCE code challenge for enhanced security", "title": "Code Challenge" }, "description": "PKCE code challenge for enhanced security" }, { "name": "code_challenge_method", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "PKCE code challenge method (default: S256)", "default": "S256", "title": "Code Challenge Method" }, "description": "PKCE code challenge method (default: S256)" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/onedrive/authorize": { "get": { "tags": [ "onedrive-oauth" ], "summary": "Authorize OneDrive", "operationId": "authorizeOneDrive", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/onedrive/refresh_token": { "post": { "tags": [ "onedrive-oauth" ], "summary": "Refresh Token", "operationId": "refresh_token_oauth_onedrive_refresh_token_post", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Instance ID for which to refresh the token", "title": "Instance Id" }, "description": "Instance ID for which to refresh the token" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureADOAuthSuccessResponse" } } } }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureADOAuthErrorResponse" } } }, "description": "Bad Request" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/outlook/authorize": { "get": { "tags": [ "outlook-oauth" ], "summary": "Authorize Outlook", "operationId": "authorizeOutlook", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/outlook/refresh_token": { "post": { "tags": [ "outlook-oauth" ], "summary": "Refresh Token", "operationId": "refresh_token_oauth_outlook_refresh_token_post", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Instance ID for which to refresh the token", "title": "Instance Id" }, "description": "Instance ID for which to refresh the token" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureADOAuthSuccessResponse" } } } }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureADOAuthErrorResponse" } } }, "description": "Bad Request" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/mscalendar/authorize": { "get": { "tags": [ "mscalendar-oauth" ], "summary": "Authorize MsCalendar", "operationId": "authorizeMsCalendar", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/mscalendar/refresh_token": { "post": { "tags": [ "mscalendar-oauth" ], "summary": "Refresh Token", "operationId": "refresh_token_oauth_mscalendar_refresh_token_post", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Instance ID for which to refresh the token", "title": "Instance Id" }, "description": "Instance ID for which to refresh the token" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureADOAuthSuccessResponse" } } } }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureADOAuthErrorResponse" } } }, "description": "Bad Request" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/teams/authorize": { "get": { "tags": [ "teams-oauth" ], "summary": "Authorize Teams", "operationId": "authorizeTeams", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/teams/refresh_token": { "post": { "tags": [ "teams-oauth" ], "summary": "Refresh Token", "operationId": "refresh_token_oauth_teams_refresh_token_post", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Instance ID for which to refresh the token", "title": "Instance Id" }, "description": "Instance ID for which to refresh the token" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureADOAuthSuccessResponse" } } } }, "400": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AzureADOAuthErrorResponse" } } }, "description": "Bad Request" }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/fathom/authorize": { "get": { "tags": [ "fathom-oauth" ], "summary": "Authorize Fathom", "description": "Start Fathom OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeFathom", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request", "title": "Scope" }, "description": "Optional OAuth scopes to request" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/monday/authorize": { "get": { "tags": [ "monday-oauth" ], "summary": "Authorize Monday", "description": "Start Monday OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (space-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeMonday", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/zoom/authorize": { "get": { "tags": [ "zoom-oauth" ], "summary": "Authorize Zoom", "operationId": "authorizeZoom", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/zoho-mail/authorize": { "get": { "tags": [ "zoho-mail-oauth" ], "summary": "Authorize Zoho Mail", "description": "Start Zoho Mail OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeZohoMail", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/sharesight/authorize": { "get": { "tags": [ "sharesight-oauth" ], "summary": "Authorize Sharesight", "operationId": "authorizeSharesight", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (space-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (space-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/instagram/authorize": { "get": { "tags": [ "instagram-oauth" ], "summary": "Authorize Instagram", "operationId": "authorizeInstagram", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/youtube/authorize": { "get": { "tags": [ "youtube-oauth" ], "summary": "Authorize Youtube", "description": "Start YouTube OAuth flow\n\nParameters:\n- instance_id: Identifier for the instance requesting authorization\n- client_id: Optional client ID for white labeling\n- scope: Optional scopes to request (comma-separated)\n- redirect_url: Optional URL to redirect to after authorization completes", "operationId": "authorizeYouTube", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the client instance requesting authorization", "title": "Instance Id" }, "description": "Unique identifier for the client instance requesting authorization" }, { "name": "client_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Client ID for white labeling, if not provided will use default credentials", "title": "Client Id" }, "description": "Client ID for white labeling, if not provided will use default credentials" }, { "name": "scope", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional OAuth scopes to request (comma-separated string)", "title": "Scope" }, "description": "Optional OAuth scopes to request (comma-separated string)" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization completes", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization completes" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/intercom/authorize": { "get": { "tags": [ "intercom-oauth" ], "summary": "Authorize Intercom", "description": "Start OAuth flow and redirect to authorization page.", "operationId": "authorizeintercom_oauth", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the MCP connection", "title": "Instance Id" }, "description": "Unique identifier for the MCP connection" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization" }, { "name": "force_refresh", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Force re-authorization even if valid tokens exist", "default": true, "title": "Force Refresh" }, "description": "Force re-authorization even if valid tokens exist" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/paypal/authorize": { "get": { "tags": [ "paypal-oauth" ], "summary": "Authorize PayPal", "description": "Start OAuth flow and redirect to authorization page.", "operationId": "authorizepaypal_oauth", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the MCP connection", "title": "Instance Id" }, "description": "Unique identifier for the MCP connection" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization" }, { "name": "force_refresh", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Force re-authorization even if valid tokens exist", "default": true, "title": "Force Refresh" }, "description": "Force re-authorization even if valid tokens exist" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/sentry/authorize": { "get": { "tags": [ "sentry-oauth" ], "summary": "Authorize Sentry", "description": "Start OAuth flow and redirect to authorization page.", "operationId": "authorizesentry_oauth", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the MCP connection", "title": "Instance Id" }, "description": "Unique identifier for the MCP connection" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization" }, { "name": "force_refresh", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Force re-authorization even if valid tokens exist", "default": true, "title": "Force Refresh" }, "description": "Force re-authorization even if valid tokens exist" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/netlify/authorize": { "get": { "tags": [ "netlify-oauth" ], "summary": "Authorize Netlify", "description": "Start OAuth flow and redirect to authorization page.", "operationId": "authorizenetlify_oauth", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the MCP connection", "title": "Instance Id" }, "description": "Unique identifier for the MCP connection" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization" }, { "name": "force_refresh", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Force re-authorization even if valid tokens exist", "default": true, "title": "Force Refresh" }, "description": "Force re-authorization even if valid tokens exist" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/huggingface/authorize": { "get": { "tags": [ "huggingface-oauth" ], "summary": "Authorize Hugging Face", "description": "Start OAuth flow and redirect to authorization page.", "operationId": "authorizehuggingface_oauth", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the MCP connection", "title": "Instance Id" }, "description": "Unique identifier for the MCP connection" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization" }, { "name": "force_refresh", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Force re-authorization even if valid tokens exist", "default": true, "title": "Force Refresh" }, "description": "Force re-authorization even if valid tokens exist" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/square/authorize": { "get": { "tags": [ "square-oauth" ], "summary": "Authorize Square", "description": "Start OAuth flow and redirect to authorization page.", "operationId": "authorizesquare_oauth", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the MCP connection", "title": "Instance Id" }, "description": "Unique identifier for the MCP connection" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization" }, { "name": "force_refresh", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Force re-authorization even if valid tokens exist", "default": true, "title": "Force Refresh" }, "description": "Force re-authorization even if valid tokens exist" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/clockwise/authorize": { "get": { "tags": [ "clockwise-oauth" ], "summary": "Authorize Clockwise", "description": "Start OAuth flow and redirect to authorization page.", "operationId": "authorizeclockwise_oauth", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the MCP connection", "title": "Instance Id" }, "description": "Unique identifier for the MCP connection" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization" }, { "name": "force_refresh", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Force re-authorization even if valid tokens exist", "default": true, "title": "Force Refresh" }, "description": "Force re-authorization even if valid tokens exist" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/jotform/authorize": { "get": { "tags": [ "jotform-oauth" ], "summary": "Authorize Jotform", "description": "Start OAuth flow and redirect to authorization page.", "operationId": "authorizejotform_oauth", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the MCP connection", "title": "Instance Id" }, "description": "Unique identifier for the MCP connection" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization" }, { "name": "force_refresh", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Force re-authorization even if valid tokens exist", "default": true, "title": "Force Refresh" }, "description": "Force re-authorization even if valid tokens exist" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/honeycomb/authorize": { "get": { "tags": [ "honeycomb-oauth" ], "summary": "Authorize Honeycomb", "description": "Start OAuth flow and redirect to authorization page.", "operationId": "authorizehoneycomb_oauth", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the MCP connection", "title": "Instance Id" }, "description": "Unique identifier for the MCP connection" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization" }, { "name": "force_refresh", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Force re-authorization even if valid tokens exist", "default": true, "title": "Force Refresh" }, "description": "Force re-authorization even if valid tokens exist" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/amplitude/authorize": { "get": { "tags": [ "amplitude-oauth" ], "summary": "Authorize Amplitude", "description": "Start OAuth flow and redirect to authorization page.", "operationId": "authorizeamplitude_oauth", "parameters": [ { "name": "instance_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the MCP connection", "title": "Instance Id" }, "description": "Unique identifier for the MCP connection" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization" }, { "name": "force_refresh", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Force re-authorization even if valid tokens exist", "default": true, "title": "Force Refresh" }, "description": "Force re-authorization even if valid tokens exist" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/notion-mcp/authorize": { "get": { "tags": [ "notion-mcp-oauth" ], "summary": "Authorize Notion MCP", "operationId": "authorizenotion_mcp_oauth", "parameters": [ { "name": "sandbox_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the sandbox connection", "title": "Sandbox Id" }, "description": "Unique identifier for the sandbox connection" }, { "name": "redirect_url", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional URL to redirect to after authorization", "title": "Redirect Url" }, "description": "Optional URL to redirect to after authorization" }, { "name": "force_refresh", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Force re-authorization even if valid tokens exist", "default": true, "title": "Force Refresh" }, "description": "Force re-authorization even if valid tokens exist" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/oauth/notion-mcp/refresh_token": { "post": { "tags": [ "notion-mcp-oauth" ], "summary": "Refresh Notion MCP Token", "operationId": "refresh_notion_mcp_oauth_token", "parameters": [ { "name": "sandbox_id", "in": "query", "required": true, "schema": { "type": "string", "description": "Unique identifier for the sandbox connection", "title": "Sandbox Id" }, "description": "Unique identifier for the sandbox connection" }, { "name": "proxy", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "HTTP proxy URL for token refresh", "title": "Proxy" }, "description": "HTTP proxy URL for token refresh" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/prepare": { "post": { "tags": [ "sandbox" ], "summary": "Prepare sandbox infrastructure for high demand", "description": "Scale up sandbox capacity for the specified benchmark in anticipation of heavy usage. The capacity boost is temporary and reverts automatically after approximately 1 hour. Can be called multiple times for different benchmarks; each benchmark's capacity is managed independently.", "operationId": "prepare_sandbox_capacity_sandbox_prepare_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "benchmark", "in": "query", "required": false, "schema": { "anyOf": [ { "$ref": "#/components/schemas/BenchmarkEnum" }, { "type": "null" } ], "description": "The benchmark to prepare capacity for. Defaults to general capacity if not specified.", "title": "Benchmark" }, "description": "The benchmark to prepare capacity for. Defaults to general capacity if not specified." } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox": { "get": { "tags": [ "sandbox" ], "summary": "List all sandboxes", "description": "Get all sandboxes associated with the API key's account. Optionally filter by tag.", "operationId": "list_sandboxes_sandbox_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "tag", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional sandbox tag string to filter by", "title": "Tag" }, "description": "Optional sandbox tag string to filter by" }, { "name": "server_name", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Optional MCP server name to filter by (case-insensitive)", "title": "Server Name" }, "description": "Optional MCP server name to filter by (case-insensitive)" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListSandboxesResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/{server_name}": { "post": { "tags": [ "sandbox" ], "summary": "Acquire a sandbox", "description": "Acquire an idle sandbox instance for a specific MCP server. The sandbox will be marked as 'occupied'. Optionally choose a benchmark (e.g., 'MCP_Atlas', 'Toolathlon') to configure the sandbox. IMPORTANT: The benchmark parameter may affect BOTH (1) the initial data environment (e.g., preloaded data for supported servers like Airtable, Notion, Slack, MongoDB) AND (2) the MCP server implementation itself — some servers are routed to a benchmark-specific MCP server URL (e.g., GitHub, Notion, Google Sheets). You may also specify a test_account_email to acquire a specific test account.", "operationId": "create_sandbox_sandbox__server_name__post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "server_name", "in": "path", "required": true, "schema": { "$ref": "#/components/schemas/SandboxMCPServer", "description": "The MCP server name" }, "description": "The MCP server name" } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AcquireSandboxRequest" } } } }, "responses": { "201": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/{server_name}/{sandbox_id}": { "get": { "tags": [ "sandbox" ], "summary": "Get sandbox details", "description": "Retrieve detailed information about a specific sandbox instance.", "operationId": "get_sandbox_sandbox__server_name___sandbox_id__get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "server_name", "in": "path", "required": true, "schema": { "$ref": "#/components/schemas/SandboxMCPServer", "description": "The MCP server name" }, "description": "The MCP server name" }, { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SandboxInfo" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "delete": { "tags": [ "sandbox" ], "summary": "Release sandbox", "description": "Release an occupied sandbox back to idle state and marks the sandbox as available for reuse.", "operationId": "delete_sandbox_sandbox__server_name___sandbox_id__delete", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "server_name", "in": "path", "required": true, "schema": { "$ref": "#/components/schemas/SandboxMCPServer", "description": "The MCP server name" }, "description": "The MCP server name" }, { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "is_ttl", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Flag indicating if this is a TTL release task", "default": false, "title": "Is Ttl" }, "description": "Flag indicating if this is a TTL release task" }, { "name": "instance_id", "in": "query", "required": false, "schema": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Instance ID for TTL validation; if provided and mismatched, the release is skipped", "title": "Instance Id" }, "description": "Instance ID for TTL validation; if provided and mismatched, the release is skipped" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ReleaseSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/{server_name}/{sandbox_id}/reset": { "post": { "tags": [ "sandbox" ], "summary": "Reset sandbox to initial state", "description": "Reset the sandbox to its initial empty state, clearing all data while maintaining the sandbox instance.", "operationId": "reset_sandbox_sandbox__server_name___sandbox_id__reset_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "server_name", "in": "path", "required": true, "schema": { "$ref": "#/components/schemas/SandboxMCPServer", "description": "The MCP server name" }, "description": "The MCP server name" }, { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ResetSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/jira/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize jira sandbox with data", "description": "Initialize the sandbox with jira-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_jira__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/JiraData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "projects": [ { "key": "SAND", "name": "Sandbox Project Alpha", "description": "Main sandbox project for testing and development", "project_type": "software", "issues": [ { "summary": "Set up project infrastructure", "description": "Initialize project repository, CI/CD pipeline, and development environment", "issue_type": "Task", "priority": "High", "sprint_name": "Sprint 1 - Foundation", "comments": [ { "body": "Repository created and initial structure set up" }, { "body": "CI/CD pipeline configured with GitHub Actions" } ] }, { "summary": "Implement user authentication", "description": "Create authentication system with JWT tokens", "issue_type": "Story", "priority": "Highest", "sprint_name": "Sprint 1 - Foundation", "comments": [ { "body": "Should we use OAuth2 or custom JWT implementation?" }, { "body": "Let's go with OAuth2 for better security and flexibility" }, { "body": "OAuth2 implementation completed and tested" } ] }, { "summary": "Design database schema", "description": "Create entity-relationship diagrams and database migrations", "issue_type": "Task", "priority": "High", "sprint_name": "Sprint 1 - Foundation", "comments": [ { "body": "ER diagram draft completed, ready for review" } ] }, { "summary": "Build REST API endpoints", "description": "Implement CRUD operations for core entities", "issue_type": "Story", "priority": "High", "sprint_name": "Sprint 2 - Core Features", "comments": [ { "body": "API specification documented using OpenAPI 3.0" }, { "body": "Endpoints for user management completed" } ] }, { "summary": "Implement data validation", "description": "Add input validation and error handling", "issue_type": "Task", "priority": "Medium", "sprint_name": "Sprint 2 - Core Features", "comments": [] }, { "summary": "Create frontend components", "description": "Build reusable React components for the UI", "issue_type": "Story", "priority": "Medium", "sprint_name": "Sprint 2 - Core Features", "comments": [ { "body": "Using shadcn/ui for component library" } ] }, { "summary": "Write unit tests", "description": "Achieve 80% code coverage with unit tests", "issue_type": "Task", "priority": "High", "sprint_name": "Sprint 3 - Testing & Polish", "comments": [ { "body": "Using pytest for backend tests" }, { "body": "Jest configured for frontend testing" } ] }, { "summary": "Fix login bug on mobile", "description": "Users cannot log in on iOS devices", "issue_type": "Bug", "priority": "Highest", "sprint_name": "Sprint 3 - Testing & Polish", "comments": [ { "body": "Bug confirmed on iPhone 14 and 15" }, { "body": "Issue was related to viewport height calculation" }, { "body": "Fix deployed and verified" } ] }, { "summary": "Research new technology stack", "description": "Evaluate alternatives for current tech stack", "issue_type": "Task", "priority": "Low", "comments": [ { "body": "Considering FastAPI vs Flask for backend" } ] }, { "summary": "Update documentation", "description": "Keep API documentation up to date", "issue_type": "Task", "priority": "Medium", "comments": [] }, { "summary": "Performance optimization backlog", "description": "List of performance improvements to consider", "issue_type": "Epic", "priority": "Low", "comments": [ { "body": "Database query optimization should be prioritized" }, { "body": "Consider implementing Redis caching" } ] } ] }, { "key": "TEST", "name": "Testing Project Beta", "description": "Secondary project for QA and integration testing", "project_type": "software", "issues": [ { "summary": "Conduct integration testing", "description": "Test integration between frontend and backend", "issue_type": "Task", "priority": "High", "sprint_name": "QA Sprint 1", "comments": [ { "body": "All critical paths tested successfully" } ] }, { "summary": "Perform security audit", "description": "Run security scans and penetration testing", "issue_type": "Task", "priority": "Highest", "sprint_name": "QA Sprint 1", "comments": [ { "body": "Using OWASP ZAP for security testing" }, { "body": "Two medium severity issues found" } ] }, { "summary": "Set up test data generators", "description": "Create utilities to generate test data", "issue_type": "Task", "priority": "Medium", "comments": [ { "body": "Using Faker library for test data generation" } ] }, { "summary": "Document test scenarios", "description": "Create comprehensive test case documentation", "issue_type": "Task", "priority": "Medium", "comments": [] } ] }, { "key": "DOCS", "name": "Documentation Project", "description": "Project for managing documentation and knowledge base", "project_type": "business", "issues": [ { "summary": "Write getting started guide", "description": "Create beginner-friendly onboarding documentation", "issue_type": "Task", "priority": "High", "comments": [ { "body": "Draft completed and ready for review" } ] }, { "summary": "Create API reference documentation", "description": "Auto-generate API docs from OpenAPI spec", "issue_type": "Task", "priority": "High", "comments": [] }, { "summary": "Record tutorial videos", "description": "Create video tutorials for common workflows", "issue_type": "Task", "priority": "Low", "comments": [ { "body": "Script written for first video" }, { "body": "Need to set up recording equipment" } ] } ] } ], "boards": [ { "name": "Alpha Development Board", "type": "scrum", "project_key": "SAND" }, { "name": "Alpha Kanban Board", "type": "kanban", "project_key": "SAND" }, { "name": "Beta Testing Board", "type": "scrum", "project_key": "TEST" } ], "sprints": [ { "name": "Sprint 1 - Foundation", "start_date": "2024-01-01T00:00:00.000Z", "end_date": "2024-01-14T23:59:59.999Z", "origin_board_name": "Alpha Development Board" }, { "name": "Sprint 2 - Core Features", "start_date": "2024-01-15T00:00:00.000Z", "end_date": "2024-01-28T23:59:59.999Z", "origin_board_name": "Alpha Development Board" }, { "name": "Sprint 3 - Testing & Polish", "start_date": "2024-01-29T00:00:00.000Z", "end_date": "2024-02-11T23:59:59.999Z", "origin_board_name": "Alpha Development Board" }, { "name": "QA Sprint 1", "start_date": "2024-02-01T00:00:00.000Z", "end_date": "2024-02-14T23:59:59.999Z", "origin_board_name": "Beta Testing Board" } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/jira/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export jira sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_jira__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_JiraData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/google_calendar/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize google_calendar sandbox with data", "description": "Initialize the sandbox with google_calendar-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_google_calendar__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/GoogleCalendarData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "events": [ { "title": "Team Standup", "description": "Daily team standup meeting to discuss progress and blockers", "startTime": "2025-12-01T09:00:00-08:00", "endTime": "2025-12-01T09:30:00-08:00", "timezone": "America/Los_Angeles", "attendees": [ { "email": "team@example.com" } ] }, { "title": "Client Meeting - Q4 Review", "description": "Quarterly business review with key client stakeholders", "location": "Conference Room A", "startTime": "2025-12-02T14:00:00-08:00", "endTime": "2025-12-02T15:30:00-08:00", "timezone": "America/Los_Angeles", "attendees": [ { "email": "client@example.com" }, { "email": "sales@example.com" } ], "visibility": "private" }, { "title": "Project Planning Session", "description": "Q1 2026 project planning and resource allocation", "location": "Main Office - Building 2", "startTime": "2025-12-03T10:00:00-08:00", "endTime": "2025-12-03T12:00:00-08:00", "timezone": "America/Los_Angeles", "attendees": [ { "email": "team@example.com" }, { "email": "manager@example.com" }, { "email": "product@example.com", "isOptional": true } ] }, { "title": "One-on-One with Manager", "description": "Monthly check-in and career development discussion", "startTime": "2025-12-05T15:00:00-08:00", "endTime": "2025-12-05T15:30:00-08:00", "timezone": "America/Los_Angeles", "attendees": [ { "email": "manager@example.com" } ], "visibility": "private" }, { "title": "Team Lunch", "description": "Team building lunch and informal catch-up", "location": "Restaurant Downtown", "startTime": "2025-12-07T12:00:00-08:00", "endTime": "2025-12-07T13:30:00-08:00", "timezone": "America/Los_Angeles", "attendees": [ { "email": "team@example.com" } ] }, { "title": "All-Day Company Offsite", "description": "Annual company offsite for strategic planning", "location": "Retreat Center", "startDate": "2025-12-10", "endDate": "2025-12-11", "attendees": [ { "email": "everyone@example.com" } ] }, { "title": "Product Demo Webinar", "description": "Public webinar showcasing new product features", "startTime": "2025-12-12T11:00:00-08:00", "endTime": "2025-12-12T12:00:00-08:00", "timezone": "America/Los_Angeles", "attendees": [ { "email": "marketing@example.com" }, { "email": "product@example.com" } ], "visibility": "public" }, { "title": "Sprint Retrospective", "description": "Reflect on the sprint and identify improvements", "startTime": "2025-12-13T16:00:00-08:00", "endTime": "2025-12-13T17:00:00-08:00", "timezone": "America/Los_Angeles", "attendees": [ { "email": "team@example.com" }, { "email": "scrum-master@example.com" } ] }, { "title": "Budget Review - Finance", "description": "Q4 budget review and variance analysis", "location": "Finance Conference Room", "startTime": "2025-12-15T13:00:00-08:00", "endTime": "2025-12-15T14:30:00-08:00", "timezone": "America/Los_Angeles", "attendees": [ { "email": "finance@example.com" }, { "email": "manager@example.com" } ], "visibility": "confidential" }, { "title": "Holiday Party Planning", "description": "Planning meeting for the annual holiday celebration", "startTime": "2025-12-18T14:00:00-08:00", "endTime": "2025-12-18T15:00:00-08:00", "timezone": "America/Los_Angeles", "attendees": [ { "email": "events@example.com" }, { "email": "hr@example.com" } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/google_calendar/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export google_calendar sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_google_calendar__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_GoogleCalendarData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/gmail/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize gmail sandbox with data", "description": "Initialize the sandbox with gmail-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_gmail__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/GmailData" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "messages": [ { "subject": "Weekly Team Update", "to": "johndoe@klavis.ai", "cc": "johndoe@klavis.ai", "body": "Hi Team,\n\nHere's our weekly update:\n\n1. Project A is on track\n2. Sprint planning next week\n3. New hire starting Monday\n\nBest regards", "labels": [ "INBOX", "IMPORTANT" ] }, { "subject": "Project Status Report", "to": "johndoe@klavis.ai", "body": "Dear Client,\n\nI'm writing to update you on the project status. All milestones are being met on schedule.\n\nKey accomplishments this week:\n- Completed Phase 1\n- Initiated Phase 2\n- Stakeholder review meeting scheduled\n\nLooking forward to our next meeting.\n\nBest regards", "labels": [ "INBOX" ] }, { "subject": "Follow-up on Support Ticket #12345", "to": "johndoe@klavis.ai", "body": "Hello Support Team,\n\nI wanted to follow up on ticket #12345. Has there been any progress on this issue?\n\nThank you for your assistance.\n\nBest regards", "labels": [ "INBOX" ] }, { "subject": "Meeting Notes - Q4 Planning", "to": "johndoe@klavis.ai", "cc": "johndoe@klavis.ai", "body": "Hi everyone,\n\nAttached are the notes from our Q4 planning session:\n\n- Budget allocation approved\n- New initiatives prioritized\n- Timeline established\n\nPlease review and provide feedback by EOW.\n\nThanks", "labels": [ "INBOX", "CATEGORY_UPDATES" ] }, { "subject": "Quarterly Review Reminder", "to": "johndoe@klavis.ai", "body": "Team,\n\nFriendly reminder that quarterly reviews are due next Friday.\n\nPlease complete your self-assessment and submit to your manager.\n\nThank you!", "labels": [ "INBOX" ] } ], "drafts": [ { "subject": "Re: Partnership Proposal", "to": "partner@example.com", "body": "Hi there,\n\nThank you for reaching out regarding the partnership opportunity. I'm very interested in learning more.\n\nCould we schedule a call next week to discuss further?\n\nBest regards" }, { "subject": "Vacation Request - December", "to": "hr@example.com", "cc": "manager@example.com", "body": "Dear HR,\n\nI would like to request vacation time from December 20-30, 2024.\n\nPlease let me know if you need any additional information.\n\nThank you" }, { "subject": "Product Feedback", "to": "product@example.com", "body": "Hi Product Team,\n\nI wanted to share some feedback on the recent update:\n\n1. The new dashboard is much more intuitive\n2. Performance has improved significantly\n3. One suggestion: add keyboard shortcuts\n\nOverall, great work!\n\nBest" } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/gmail/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export gmail sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_gmail__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_GmailData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/google_docs/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize google_docs sandbox with data", "description": "Initialize the sandbox with google_docs-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_google_docs__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/GoogleDocsData" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "documents": [ { "title": "Team Meeting Agenda", "content": "# Team Meeting Agenda\n\n## Date: January 15, 2025\n\n### Topics:\n1. Q1 Goals Review\n2. Project Updates\n3. Resource Allocation\n4. Action Items\n\n### Attendees:\n- John Doe (Project Manager)\n- Jane Smith (Tech Lead)\n- Bob Johnson (Designer)\n- Alice Williams (QA Lead)\n\n### Notes:\nDiscuss upcoming product launch and timeline adjustments." }, { "title": "Product Roadmap 2025", "content": "# Product Roadmap 2025\n\n## Q1 (January - March)\n- Feature A development and testing\n- Beta program launch\n- User feedback collection\n\n## Q2 (April - June)\n- Feature B public launch\n- Mobile app development begins\n- Integration with third-party services\n\n## Q3 (July - September)\n- Performance optimization sprint\n- Mobile app beta release\n- Advanced analytics implementation\n\n## Q4 (October - December)\n- Year-end feature freeze\n- Comprehensive security audit\n- Planning for 2026 initiatives" }, { "title": "Project Proposal - Customer Portal", "content": "# Project Proposal: Customer Portal\n\n## Executive Summary\nThis proposal outlines the development of a new customer self-service portal designed to improve user experience and reduce support ticket volume.\n\n## Business Objectives\n1. Enhance customer self-service capabilities\n2. Reduce support workload by 30%\n3. Improve customer satisfaction scores by 25%\n4. Enable 24/7 account management access\n\n## Technical Requirements\n- Responsive web design\n- Mobile-first approach\n- Integration with existing CRM\n- Real-time data synchronization\n\n## Project Timeline\n- Planning Phase: 2 weeks\n- Design Phase: 3 weeks\n- Development Phase: 8 weeks\n- Testing Phase: 2 weeks\n- Deployment: Week 16\n\n## Budget Estimate\nTotal Project Cost: $150,000\n- Development: $100,000\n- Design: $25,000\n- Testing & QA: $15,000\n- Deployment & Training: $10,000" }, { "title": "Employee Handbook 2025", "content": "# Employee Handbook\n\n## Welcome\nWelcome to our company! This handbook provides essential information about company policies, benefits, and expectations.\n\n## Core Values\n1. Innovation\n2. Integrity\n3. Collaboration\n4. Customer Focus\n\n## Working Hours\nStandard working hours are 9:00 AM - 5:00 PM, Monday through Friday. Flexible arrangements available.\n\n## Benefits\n- Health insurance\n- 401(k) matching\n- Paid time off\n- Professional development budget\n\n## Code of Conduct\nAll employees are expected to maintain professional behavior and respect for colleagues." }, { "title": "Marketing Campaign Strategy", "content": "# Q2 Marketing Campaign Strategy\n\n## Campaign Overview\nLaunch integrated marketing campaign for new product line targeting small business owners.\n\n## Target Audience\n- Small business owners (1-50 employees)\n- Age range: 30-55\n- Tech-savvy professionals\n\n## Channels\n1. Social Media (LinkedIn, Twitter)\n2. Email Marketing\n3. Content Marketing (Blog, Webinars)\n4. Paid Search (Google Ads)\n\n## Budget Allocation\n- Social Media: $30,000\n- Email: $10,000\n- Content: $20,000\n- Paid Search: $40,000\n\n## Success Metrics\n- Lead generation: 500+ qualified leads\n- Conversion rate: 15%\n- ROI: 3x investment" }, { "title": "Technical Architecture Document", "content": "# System Architecture Documentation\n\n## Overview\nThis document describes the technical architecture of our core platform.\n\n## System Components\n\n### Frontend Layer\n- React-based SPA\n- Material-UI component library\n- Redux state management\n\n### Backend Layer\n- Node.js microservices\n- RESTful API architecture\n- PostgreSQL database\n- Redis caching layer\n\n### Infrastructure\n- AWS cloud hosting\n- Docker containerization\n- Kubernetes orchestration\n- CI/CD with GitHub Actions\n\n## Security Considerations\n- OAuth 2.0 authentication\n- End-to-end encryption\n- Regular security audits\n- GDPR compliance\n\n## Scalability\nSystem designed to handle 100,000 concurrent users with auto-scaling capabilities." } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/google_docs/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export google_docs sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_google_docs__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_GoogleDocsData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/google_drive/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize google_drive sandbox with data", "description": "Initialize the sandbox with google_drive-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_google_drive__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/GoogleDriveData" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "files": [ { "name": "Project Documents", "mimeType": "application/vnd.google-apps.folder", "description": "Main folder for project documentation" }, { "name": "Reports", "mimeType": "application/vnd.google-apps.folder", "description": "Quarterly and annual reports" }, { "name": "Project Plan", "mimeType": "application/vnd.google-apps.document", "content": "# Project Plan\n\nThis is a comprehensive project plan document outlining goals, milestones, and deliverables.", "description": "Main project planning document" }, { "name": "Meeting Notes", "mimeType": "application/vnd.google-apps.document", "content": "# Meeting Notes\n\n## 2025-01-15 - Kickoff Meeting\n- Discussed project scope\n- Assigned team roles\n- Set initial deadlines\n\n## 2025-02-01 - Progress Review\n- Reviewed Q1 deliverables\n- Adjusted timeline\n- Budget discussion", "description": "Team meeting notes and action items" }, { "name": "Q1 Budget Report", "mimeType": "application/vnd.google-apps.document", "content": "# Q1 Budget Report\n\n## Summary\nTotal Budget: $250,000\nSpent: $180,000\nRemaining: $70,000\n\n## Breakdown\n- Personnel: $120,000\n- Infrastructure: $40,000\n- Marketing: $20,000", "description": "First quarter budget analysis" }, { "name": "Team Roster", "mimeType": "application/vnd.google-apps.spreadsheet", "description": "Complete team member directory" }, { "name": "Sales Dashboard 2025", "mimeType": "application/vnd.google-apps.spreadsheet", "description": "Real-time sales tracking and analytics" }, { "name": "Product Presentation", "mimeType": "application/vnd.google-apps.presentation", "description": "Quarterly product showcase slides" }, { "name": "README", "mimeType": "application/vnd.google-apps.document", "content": "# Welcome to the Project Workspace\n\nThis Drive contains all project-related documents, spreadsheets, and presentations.\n\n## Folder Structure\n- Project Documents: Planning and documentation\n- Reports: Quarterly reports and analytics\n\n## Getting Started\n1. Review the Project Plan\n2. Check Meeting Notes for latest updates\n3. Access shared resources in respective folders" }, { "name": "Company Logo.png", "mimeType": "image/png", "description": "Official company logo file" } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/google_drive/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export google_drive sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_google_drive__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_GoogleDriveData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/google_forms/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize google_forms sandbox with data", "description": "Initialize the sandbox with google_forms-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_google_forms__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/GoogleFormsData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "forms": [ { "title": "Customer Satisfaction Survey", "description": "Please take a moment to share your feedback about our services. Your responses help us improve!", "is_quiz": false, "items": [ { "item_type": "question", "question": { "title": "Overall Experience", "description": "Please rate your overall experience with our service", "required": true, "question_type": "scale", "scale_low": 1, "scale_high": 5, "scale_low_label": "Very Dissatisfied", "scale_high_label": "Very Satisfied" } }, { "item_type": "question", "question": { "title": "How did you hear about us?", "required": true, "question_type": "multiple_choice", "options": [ { "value": "Search Engine" }, { "value": "Social Media" }, { "value": "Friend or Family" }, { "value": "Advertisement" }, { "value": "Other" } ] } }, { "item_type": "question", "question": { "title": "Which features do you use most?", "description": "Select all that apply", "required": false, "question_type": "checkbox", "options": [ { "value": "Dashboard" }, { "value": "Reports" }, { "value": "Analytics" }, { "value": "Integrations" }, { "value": "Mobile App" } ] } }, { "item_type": "question", "question": { "title": "Additional Comments", "description": "Please share any additional feedback or suggestions", "required": false, "question_type": "paragraph" } } ] }, { "title": "Event Registration Form", "description": "Register for our upcoming annual conference. Limited seats available!", "is_quiz": false, "items": [ { "item_type": "section_header", "section_header": { "title": "Personal Information" } }, { "item_type": "question", "question": { "title": "Full Name", "required": true, "question_type": "short_text" } }, { "item_type": "question", "question": { "title": "Email Address", "required": true, "question_type": "short_text" } }, { "item_type": "question", "question": { "title": "Company/Organization", "required": false, "question_type": "short_text" } }, { "item_type": "section_header", "section_header": { "title": "Event Details" } }, { "item_type": "question", "question": { "title": "Which sessions are you interested in?", "description": "Select all sessions you plan to attend", "required": true, "question_type": "checkbox", "options": [ { "value": "Opening Keynote" }, { "value": "Technical Workshop A" }, { "value": "Technical Workshop B" }, { "value": "Panel Discussion" }, { "value": "Networking Lunch" }, { "value": "Closing Ceremony" } ] } }, { "item_type": "question", "question": { "title": "Dietary Restrictions", "required": false, "question_type": "dropdown", "options": [ { "value": "None" }, { "value": "Vegetarian" }, { "value": "Vegan" }, { "value": "Gluten-Free" }, { "value": "Other (specify in comments)" } ] } }, { "item_type": "question", "question": { "title": "Preferred Conference Date", "required": true, "question_type": "date", "include_year": true } } ] }, { "title": "Employee Performance Review", "description": "Quarterly performance evaluation form for team members", "is_quiz": false, "items": [ { "item_type": "section_header", "section_header": { "title": "Employee Information" } }, { "item_type": "question", "question": { "title": "Employee Name", "required": true, "question_type": "short_text" } }, { "item_type": "question", "question": { "title": "Department", "required": true, "question_type": "dropdown", "options": [ { "value": "Engineering" }, { "value": "Product" }, { "value": "Design" }, { "value": "Marketing" }, { "value": "Sales" }, { "value": "Human Resources" }, { "value": "Finance" }, { "value": "Operations" } ] } }, { "item_type": "question", "question": { "title": "Review Period", "required": true, "question_type": "multiple_choice", "options": [ { "value": "Q1 2025" }, { "value": "Q2 2025" }, { "value": "Q3 2025" }, { "value": "Q4 2025" } ] } }, { "item_type": "section_header", "section_header": { "title": "Performance Metrics" } }, { "item_type": "question", "question": { "title": "Quality of Work", "description": "Rate the quality and accuracy of work produced", "required": true, "question_type": "scale", "scale_low": 1, "scale_high": 5, "scale_low_label": "Needs Improvement", "scale_high_label": "Exceptional" } }, { "item_type": "question", "question": { "title": "Productivity", "description": "Rate the quantity of work and ability to meet deadlines", "required": true, "question_type": "scale", "scale_low": 1, "scale_high": 5, "scale_low_label": "Needs Improvement", "scale_high_label": "Exceptional" } }, { "item_type": "question", "question": { "title": "Communication", "description": "Rate effectiveness in verbal and written communication", "required": true, "question_type": "scale", "scale_low": 1, "scale_high": 5, "scale_low_label": "Needs Improvement", "scale_high_label": "Exceptional" } }, { "item_type": "question", "question": { "title": "Teamwork", "description": "Rate collaboration and contribution to team success", "required": true, "question_type": "scale", "scale_low": 1, "scale_high": 5, "scale_low_label": "Needs Improvement", "scale_high_label": "Exceptional" } }, { "item_type": "question", "question": { "title": "Key Achievements", "description": "List major accomplishments during this review period", "required": true, "question_type": "paragraph" } }, { "item_type": "question", "question": { "title": "Areas for Improvement", "description": "Identify areas where the employee could grow", "required": false, "question_type": "paragraph" } }, { "item_type": "question", "question": { "title": "Goals for Next Quarter", "description": "Set objectives for the upcoming review period", "required": true, "question_type": "paragraph" } } ] }, { "title": "Product Feedback Form", "description": "Help us improve our product by sharing your experience", "is_quiz": false, "items": [ { "item_type": "question", "question": { "title": "Product Version", "required": true, "question_type": "dropdown", "options": [ { "value": "v1.0" }, { "value": "v2.0" }, { "value": "v3.0 (Latest)" }, { "value": "Beta" } ] } }, { "item_type": "question", "question": { "title": "How long have you been using our product?", "required": true, "question_type": "multiple_choice", "options": [ { "value": "Less than 1 month" }, { "value": "1-6 months" }, { "value": "6-12 months" }, { "value": "More than 1 year" } ] } }, { "item_type": "question", "question": { "title": "How likely are you to recommend our product?", "description": "Net Promoter Score", "required": true, "question_type": "scale", "scale_low": 1, "scale_high": 10, "scale_low_label": "Not at all likely", "scale_high_label": "Extremely likely" } }, { "item_type": "question", "question": { "title": "What do you like most about our product?", "required": false, "question_type": "paragraph" } }, { "item_type": "question", "question": { "title": "What features would you like to see added?", "required": false, "question_type": "paragraph" } }, { "item_type": "question", "question": { "title": "Would you be interested in participating in user research?", "required": false, "question_type": "multiple_choice", "options": [ { "value": "Yes, contact me" }, { "value": "No, thank you" } ] } } ] }, { "title": "Job Application Form", "description": "Apply for open positions at our company", "is_quiz": false, "items": [ { "item_type": "section_header", "section_header": { "title": "Contact Information" } }, { "item_type": "question", "question": { "title": "Full Name", "required": true, "question_type": "short_text" } }, { "item_type": "question", "question": { "title": "Email", "required": true, "question_type": "short_text" } }, { "item_type": "question", "question": { "title": "Phone Number", "required": true, "question_type": "short_text" } }, { "item_type": "question", "question": { "title": "Position Applied For", "required": true, "question_type": "dropdown", "options": [ { "value": "Software Engineer" }, { "value": "Product Manager" }, { "value": "UX Designer" }, { "value": "Data Scientist" }, { "value": "Marketing Specialist" }, { "value": "Sales Representative" }, { "value": "Customer Support" } ] } }, { "item_type": "question", "question": { "title": "Experience Level", "required": true, "question_type": "multiple_choice", "options": [ { "value": "Entry Level (0-2 years)" }, { "value": "Mid Level (2-5 years)" }, { "value": "Senior Level (5-10 years)" }, { "value": "Executive (10+ years)" } ] } }, { "item_type": "question", "question": { "title": "Earliest Start Date", "required": true, "question_type": "date", "include_year": true } }, { "item_type": "question", "question": { "title": "Cover Letter", "description": "Tell us why you're interested in this position and what makes you a great fit", "required": true, "question_type": "paragraph" } }, { "item_type": "question", "question": { "title": "How did you find this job posting?", "required": false, "question_type": "checkbox", "options": [ { "value": "Company Website" }, { "value": "LinkedIn" }, { "value": "Indeed" }, { "value": "Glassdoor" }, { "value": "Employee Referral" }, { "value": "Other" } ] } } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/google_forms/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export google_forms sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_google_forms__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_GoogleFormsData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/google_sheets/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize google_sheets sandbox with data", "description": "Initialize the sandbox with google_sheets-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_google_sheets__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/GoogleSheetsData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "spreadsheets": [ { "title": "Sales Data 2025", "sheets": [ { "title": "Q1 Sales", "index": 0, "rowCount": 100, "columnCount": 10, "cells": [ { "row": 0, "col": 0, "value": "Date" }, { "row": 0, "col": 1, "value": "Product" }, { "row": 0, "col": 2, "value": "Quantity" }, { "row": 0, "col": 3, "value": "Revenue" }, { "row": 0, "col": 4, "value": "Region" }, { "row": 1, "col": 0, "value": "2025-01-15" }, { "row": 1, "col": 1, "value": "Widget A" }, { "row": 1, "col": 2, "value": 100 }, { "row": 1, "col": 3, "value": 5000 }, { "row": 1, "col": 4, "value": "North America" }, { "row": 2, "col": 0, "value": "2025-02-20" }, { "row": 2, "col": 1, "value": "Widget B" }, { "row": 2, "col": 2, "value": 150 }, { "row": 2, "col": 3, "value": 7500 }, { "row": 2, "col": 4, "value": "Europe" }, { "row": 3, "col": 0, "value": "2025-03-10" }, { "row": 3, "col": 1, "value": "Widget A" }, { "row": 3, "col": 2, "value": 200 }, { "row": 3, "col": 3, "value": 10000 }, { "row": 3, "col": 4, "value": "Asia Pacific" } ] } ] }, { "title": "Customer Database", "sheets": [ { "title": "Customers", "index": 0, "rowCount": 100, "columnCount": 8, "cells": [ { "row": 0, "col": 0, "value": "ID" }, { "row": 0, "col": 1, "value": "Company Name" }, { "row": 0, "col": 2, "value": "Contact Email" }, { "row": 0, "col": 3, "value": "Status" }, { "row": 0, "col": 4, "value": "Account Value" }, { "row": 1, "col": 0, "value": 1 }, { "row": 1, "col": 1, "value": "Acme Corporation" }, { "row": 1, "col": 2, "value": "contact@acme.com" }, { "row": 1, "col": 3, "value": "Active" }, { "row": 1, "col": 4, "value": 50000 }, { "row": 2, "col": 0, "value": 2 }, { "row": 2, "col": 1, "value": "TechStart Inc" }, { "row": 2, "col": 2, "value": "info@techstart.com" }, { "row": 2, "col": 3, "value": "Active" }, { "row": 2, "col": 4, "value": 75000 }, { "row": 3, "col": 0, "value": 3 }, { "row": 3, "col": 1, "value": "Global Industries" }, { "row": 3, "col": 2, "value": "sales@global.com" }, { "row": 3, "col": 3, "value": "Pending" }, { "row": 3, "col": 4, "value": 120000 } ] } ] }, { "title": "Project Tracker", "sheets": [ { "title": "Projects", "index": 0, "rowCount": 50, "columnCount": 6, "cells": [ { "row": 0, "col": 0, "value": "Project Name" }, { "row": 0, "col": 1, "value": "Status" }, { "row": 0, "col": 2, "value": "Owner" }, { "row": 0, "col": 3, "value": "Deadline" }, { "row": 0, "col": 4, "value": "Progress" }, { "row": 1, "col": 0, "value": "Website Redesign" }, { "row": 1, "col": 1, "value": "In Progress" }, { "row": 1, "col": 2, "value": "John Doe" }, { "row": 1, "col": 3, "value": "2025-04-30" }, { "row": 1, "col": 4, "value": 0.65 }, { "row": 2, "col": 0, "value": "Mobile App Development" }, { "row": 2, "col": 1, "value": "Planning" }, { "row": 2, "col": 2, "value": "Jane Smith" }, { "row": 2, "col": 3, "value": "2025-06-15" }, { "row": 2, "col": 4, "value": 0.15 }, { "row": 3, "col": 0, "value": "API Integration" }, { "row": 3, "col": 1, "value": "Completed" }, { "row": 3, "col": 2, "value": "Bob Johnson" }, { "row": 3, "col": 3, "value": "2025-01-31" }, { "row": 3, "col": 4, "value": 1 } ] }, { "title": "Budget", "index": 1, "rowCount": 50, "columnCount": 5, "cells": [ { "row": 0, "col": 0, "value": "Category" }, { "row": 0, "col": 1, "value": "Allocated" }, { "row": 0, "col": 2, "value": "Spent" }, { "row": 0, "col": 3, "value": "Remaining" }, { "row": 1, "col": 0, "value": "Development" }, { "row": 1, "col": 1, "value": 100000 }, { "row": 1, "col": 2, "value": 65000 }, { "row": 1, "col": 3, "formula": "=B2-C2" }, { "row": 2, "col": 0, "value": "Design" }, { "row": 2, "col": 1, "value": 30000 }, { "row": 2, "col": 2, "value": 22000 }, { "row": 2, "col": 3, "formula": "=B3-C3" }, { "row": 3, "col": 0, "value": "Marketing" }, { "row": 3, "col": 1, "value": 50000 }, { "row": 3, "col": 2, "value": 38000 }, { "row": 3, "col": 3, "formula": "=B4-C4" } ] } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/google_sheets/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export google_sheets sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_google_sheets__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_GoogleSheetsData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/salesforce/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize salesforce sandbox with data", "description": "Initialize the sandbox with salesforce-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_salesforce__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SalesforceData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "accounts": [ { "name": "Acme Corporation", "industry": "Technology", "type": "Customer", "phone": "+1-555-0100", "website": "https://www.acmecorp.com", "revenue": 5000000, "employees": 250, "address": { "street": "123 Tech Street", "city": "San Francisco", "state": "California", "postal_code": "94105", "country": "United States" }, "description": "Leading technology solutions provider", "rating": "Hot" }, { "name": "Global Enterprises Inc", "industry": "Finance", "type": "Prospect", "phone": "+1-555-0200", "website": "https://www.globalenterprises.com", "revenue": 15000000, "employees": 500, "address": { "street": "456 Finance Ave", "city": "New York", "state": "New York", "postal_code": "10001", "country": "United States" }, "description": "International financial services company", "rating": "Warm" }, { "name": "Tech Solutions Ltd", "industry": "Technology", "type": "Partner", "phone": "+1-555-0300", "website": "https://www.techsolutions.com", "revenue": 3000000, "employees": 150, "address": { "street": "789 Innovation Blvd", "city": "Austin", "state": "Texas", "postal_code": "78701", "country": "United States" }, "description": "Custom software development partner", "rating": "Hot" } ], "contacts": [ { "first_name": "John", "last_name": "Doe", "email": "john.doe@acmecorp.com", "phone": "+1-555-0101", "mobile": "+1-555-0102", "title": "VP of Technology", "department": "IT", "address": { "street": "123 Tech Street", "city": "San Francisco", "state": "California", "postal_code": "94105", "country": "United States" }, "description": "Key decision maker for technology purchases", "source": "Web" }, { "first_name": "Jane", "last_name": "Smith", "email": "jane.smith@globalenterprises.com", "phone": "+1-555-0201", "mobile": "+1-555-0202", "title": "Chief Financial Officer", "department": "Finance", "address": { "street": "456 Finance Ave", "city": "New York", "state": "New York", "postal_code": "10001", "country": "United States" }, "description": "Budget approver and executive sponsor", "source": "Phone Inquiry" }, { "first_name": "Bob", "last_name": "Johnson", "email": "bob.johnson@techsolutions.com", "phone": "+1-555-0301", "mobile": "+1-555-0302", "title": "Director of Operations", "department": "Operations", "address": { "street": "789 Innovation Blvd", "city": "Austin", "state": "Texas", "postal_code": "78701", "country": "United States" }, "description": "Partnership coordinator and technical lead", "source": "Partner Referral" }, { "first_name": "Alice", "last_name": "Williams", "email": "alice.williams@acmecorp.com", "phone": "+1-555-0103", "title": "Product Manager", "department": "Product", "source": "Web" }, { "first_name": "Charlie", "last_name": "Brown", "email": "charlie.brown@globalenterprises.com", "phone": "+1-555-0203", "title": "IT Manager", "department": "IT", "source": "Trade Show" } ], "leads": [ { "first_name": "David", "last_name": "Martinez", "company": "Startup Innovations Inc", "email": "david.martinez@startupinnovations.com", "phone": "+1-555-0400", "mobile": "+1-555-0401", "title": "Founder & CEO", "status": "Open - Not Contacted", "source": "Web", "industry": "Technology", "rating": "Hot", "address": { "street": "321 Startup Lane", "city": "Seattle", "state": "Washington", "postal_code": "98101", "country": "United States" }, "website": "https://www.startupinnovations.com", "employees": 25, "revenue": 500000, "description": "Fast-growing startup looking for enterprise solutions" }, { "first_name": "Emma", "last_name": "Garcia", "company": "Healthcare Systems LLC", "email": "emma.garcia@healthcaresystems.com", "phone": "+1-555-0500", "title": "Director of IT", "status": "Working - Contacted", "source": "Phone Inquiry", "industry": "Healthcare", "rating": "Warm", "address": { "city": "Boston", "state": "Massachusetts", "country": "United States" }, "employees": 300, "description": "Exploring new healthcare IT solutions" }, { "first_name": "Frank", "last_name": "Wilson", "company": "Manufacturing Corp", "email": "frank.wilson@manufacturingcorp.com", "phone": "+1-555-0600", "title": "Operations Manager", "status": "Open - Not Contacted", "source": "Partner Referral", "industry": "Manufacturing", "rating": "Warm", "address": { "city": "Detroit", "state": "Michigan", "country": "United States" }, "description": "Interested in automation solutions" } ], "opportunities": [ { "name": "Acme Corp - Q4 Enterprise Deal", "stage": "Qualification", "close_date": "2025-12-31", "amount": 250000, "probability": 75, "type": "New Business", "source": "Web", "next_step": "Schedule executive demo", "description": "Large enterprise deal for full platform implementation" }, { "name": "Global Enterprises - Annual Subscription", "stage": "Proposal/Price Quote", "close_date": "2026-02-28", "amount": 500000, "probability": 50, "type": "New Business", "source": "Phone Inquiry", "next_step": "Present pricing proposal to CFO", "description": "Multi-year subscription for financial services platform" }, { "name": "Tech Solutions - Partnership Expansion", "stage": "Negotiation/Review", "close_date": "2025-12-07", "amount": 150000, "probability": 80, "type": "Existing Business", "source": "Partner Referral", "next_step": "Finalize contract terms", "description": "Expanding existing partnership agreement" }, { "name": "Acme Corp - Additional Licenses", "stage": "Prospecting", "close_date": "2026-02-28", "amount": 75000, "probability": 60, "type": "Existing Business", "source": "Web", "next_step": "Identify additional use cases", "description": "Upsell opportunity for additional user licenses" } ], "cases": [ { "subject": "Login Issues - Urgent", "status": "New", "priority": "High", "origin": "Phone", "type": "Problem", "description": "Customer reporting intermittent login failures affecting multiple users", "customer_email": "support@acmecorp.com", "customer_name": "John Doe", "customer_phone": "+1-555-0101" }, { "subject": "Feature Request - Custom Reporting", "status": "Working", "priority": "Medium", "origin": "Email", "type": "Feature Request", "reason": "Enhancement", "description": "Customer requesting custom reporting capabilities for executive dashboard" }, { "subject": "API Integration Question", "status": "New", "priority": "Low", "origin": "Web", "type": "Question", "description": "Developer needs clarification on API authentication flow", "customer_email": "developer@techsolutions.com" }, { "subject": "Performance Degradation", "status": "Escalated", "priority": "High", "origin": "Phone", "type": "Problem", "description": "System response times have increased significantly during peak hours" }, { "subject": "Training Request", "status": "New", "priority": "Medium", "origin": "Email", "type": "Question", "description": "New admin team needs comprehensive platform training" } ], "campaigns": [ { "name": "Q4 2024 Product Launch", "type": "Email", "status": "In Progress", "start_date": "2024-10-01", "end_date": "2024-12-31", "expected_revenue": 1000000, "budget": 50000, "actual_cost": 25000, "description": "Major product launch campaign targeting enterprise customers", "active": true }, { "name": "Partner Webinar Series", "type": "Webinar", "status": "Planned", "start_date": "2025-01-15", "end_date": "2025-03-31", "expected_revenue": 250000, "budget": 15000, "description": "Educational webinar series for partner network", "active": false }, { "name": "Industry Conference 2024", "type": "Conference", "status": "Completed", "start_date": "2024-09-15", "end_date": "2024-09-17", "expected_revenue": 500000, "budget": 75000, "actual_cost": 80000, "description": "Annual industry conference with booth and speaking sessions", "active": false } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/salesforce/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export salesforce sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_salesforce__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_SalesforceData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/onedrive/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize onedrive sandbox with data", "description": "Initialize the sandbox with onedrive-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_onedrive__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/OneDriveData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "root": [ { "name": "root", "folders": [ { "name": "Documents", "files": [ { "name": "readme.txt", "content": "Welcome to the Documents folder. This contains important project documentation." }, { "name": "notes.txt", "content": "Meeting notes from January 2024.\n- Discussed Q1 goals\n- Reviewed project timeline" } ], "folders": [ { "name": "Projects", "files": [ { "name": "project_summary.txt", "content": "Project Alpha Summary\nStatus: In Progress\nDeadline: March 2024" } ], "folders": [ { "name": "ProjectAlpha", "files": [ { "name": "requirements.txt", "content": "Project Alpha Requirements:\n1. User authentication\n2. Dashboard implementation\n3. API integration" }, { "name": "tasks.txt", "content": "TODO:\n- Complete backend API\n- Design frontend mockups\n- Write unit tests" } ], "folders": [] } ] } ] }, { "name": "Work", "files": [ { "name": "schedule.txt", "content": "Work Schedule - Week of Jan 15\nMonday: Team meeting 10am\nWednesday: Client presentation 2pm\nFriday: Sprint review 3pm" } ], "folders": [ { "name": "Reports", "files": [ { "name": "weekly_report.txt", "content": "Weekly Report - Week 3\nCompleted: 8 tasks\nIn Progress: 3 tasks\nBlocked: 1 task" } ], "folders": [ { "name": "Q1_2024", "files": [ { "name": "january.txt", "content": "January Report:\nRevenue: $50,000\nNew Clients: 5\nProjects Completed: 3" }, { "name": "february.txt", "content": "February Report:\nRevenue: $55,000\nNew Clients: 7\nProjects Completed: 4" } ], "folders": [] } ] } ] } ], "files": [ { "name": "welcome.txt", "content": "Welcome to your OneDrive!\nThis is your personal cloud storage space." } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/onedrive/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export onedrive sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_onedrive__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_OneDriveData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/microsoft_teams/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize microsoft_teams sandbox with data", "description": "Initialize the sandbox with microsoft_teams-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_microsoft_teams__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/MsTeamsData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "team_channels": [ { "name": "Engineering", "channel_description": "Channel for engineering team discussions", "channel_messages": [ { "content": "Welcome to the Engineering channel! This is where we discuss technical topics and share updates." }, { "content": "Reminder: Code review sessions every Tuesday at 10 AM" }, { "content": "New deployment pipeline is ready for testing. Please check the documentation in our wiki." } ] }, { "name": "Marketing", "channel_description": "Channel for marketing campaigns and strategies", "channel_messages": [ { "content": "Q4 campaign planning meeting scheduled for next week" }, { "content": "Great job on the recent product launch! The social media engagement exceeded our targets by 40%" } ] }, { "name": "Project Alpha", "channel_description": "Dedicated channel for Project Alpha collaboration", "channel_messages": [ { "content": "Project kickoff meeting notes: https://docs.example.com/project-alpha/kickoff" }, { "content": "Phase 1 milestone completed! Moving to Phase 2 next sprint." }, { "content": "Updated timeline shared in the files tab. Please review and provide feedback by EOW." } ] } ], "team_chats": [] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/microsoft_teams/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export microsoft_teams sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_microsoft_teams__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_MsTeamsData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/outlook_mail/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize outlook_mail sandbox with data", "description": "Initialize the sandbox with outlook_mail-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_outlook_mail__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/OutlookMailData" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "messages": [ { "title": "Welcome to the Team!", "content": { "contentType": "HTML", "content": "
Hi there!
Welcome to our team. We're excited to have you on board. Please feel free to reach out if you have any questions.
Best regards,
HR Team
Current Status: On Track
Next milestone: December 15th
" }, "to_addresses": [ "projectteam@company.com", "stakeholders@company.com" ], "cc_addresses": [] }, { "title": "Action Required: Security Policy Update", "content": { "contentType": "Text", "content": "IMPORTANT: Please review and acknowledge the updated security policy by end of week.\n\nKey changes:\n- Password complexity requirements\n- 2FA mandatory for all accounts\n- VPN usage guidelines\n\nClick the link in your security portal to acknowledge.\n\nIT Security Team" }, "to_addresses": [ "allstaff@company.com" ], "cc_addresses": [ "compliance@company.com", "legal@company.com" ] }, { "title": "Team Lunch - Friday 12:30 PM", "content": { "contentType": "HTML", "content": "Hey team!
Let's grab lunch together this Friday at 12:30 PM. I've made a reservation at the Italian place downtown.
Please RSVP by Wednesday so I can confirm the headcount.
Looking forward to it!
Sarah
As a valued premium member, enjoy these exclusive benefits this month...
Here are the highlights from December...
Let's get you started with some helpful resources...
This is the first test post created through Klavis AI's WordPress sandbox.
We're testing the full CRUD functionality with WordPress.com REST API v1.1.
Key features being tested:
The Model Context Protocol (MCP) is a revolutionary approach to AI integrations.
MCP enables AI agents to reliably interact with 100+ tools at scale.", "status": "publish", "summary": "Learn about the Model Context Protocol and how it revolutionizes AI integrations", "categories": [ "Technology", "Education" ], "tags": [ "mcp", "ai", "protocol", "integration" ], "format": "standard" }, { "title": "Draft Post: Future Features Roadmap", "content": "
This is a draft post about upcoming features in the WordPress sandbox...
Stay tuned for updates!
", "status": "draft", "summary": "Planning future WordPress integration features and enhancements", "categories": [ "Product Updates", "Roadmap" ], "tags": [ "roadmap", "features", "planning" ], "format": "standard" }, { "title": "Quick Note: Integration Best Practices", "content": "A quick aside about best practices when integrating with WordPress.com API:
This post showcases screenshots of the integration process.
[Gallery would go here with multiple images showing the OAuth flow, sandbox dashboard, and API responses]
", "status": "publish", "summary": "Visual guide to WordPress integration", "categories": [ "Documentation", "Visual" ], "tags": [ "gallery", "screenshots", "visual" ], "format": "gallery" }, { "title": "Link: WordPress REST API Documentation", "content": "Check out the official WordPress.com REST API documentation for more details:
https://developer.wordpress.com/docs/api/
", "status": "publish", "categories": [ "Resources" ], "tags": [ "link", "documentation", "reference" ], "format": "link" }, { "title": "Inspirational Quote", "content": "\"The best way to predict the future is to implement it.\" - Klavis AI Team
This quote inspires our approach to building robust integrations.
", "status": "publish", "categories": [ "Inspiration" ], "tags": [ "quote", "inspiration" ], "format": "quote" }, { "title": "Private Internal Note", "content": "This is a private post for internal team use only.
Internal metrics:
This post tests extensive categorization and tagging capabilities.
WordPress allows multiple categories and tags per post, which we're testing here.
", "status": "publish", "summary": "Testing multi-category and multi-tag support", "categories": [ "Testing", "Quality Assurance", "Automation", "CI/CD" ], "tags": [ "test", "qa", "automation", "categories", "tags", "metadata" ], "format": "standard" }, { "title": "Draft: Pending Review Article", "content": "This article is pending editorial review before publication.
It covers advanced topics in WordPress automation and sandbox testing.
", "status": "pending", "summary": "Advanced WordPress automation topics - pending review", "categories": [ "Advanced" ], "tags": [ "pending", "review", "advanced" ], "format": "standard" } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/wordpress/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export wordpress sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_wordpress__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_WordPressData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/asana/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize asana sandbox with data", "description": "Initialize the sandbox with asana-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_asana__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/AsanaData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "projects": [ { "name": "Website Redesign Project", "description": "Complete redesign of company website with modern UI/UX", "tasks": [ { "name": "Design homepage mockups", "description": "Create initial design mockups for the new homepage layout", "due_date": "2025-12-15", "completed": false, "stories": [ { "text": "Let's prioritize the mobile-first design approach for this mockup" } ] }, { "name": "Fix navigation menu bug", "description": "Navigation menu not working properly on mobile devices", "due_date": "2025-12-03", "completed": false, "stories": [ { "text": "This bug is blocking the mobile release, marking as urgent" } ] } ] }, { "name": "Mobile App Development", "description": "iOS and Android app development for customer portal", "tasks": [ { "name": "Set up development environment", "description": "Configure local development environment for mobile app", "due_date": "2025-12-05", "completed": false, "stories": [ { "text": "We should ensure the development environment uses the latest stable versions" } ] }, { "name": "Write API documentation", "description": "Document all REST API endpoints for the mobile app", "due_date": "2025-12-20", "completed": false, "stories": [ { "text": "Include code examples for each API endpoint to help developers" } ] }, { "name": "Implement user authentication", "description": "Add OAuth2 authentication flow to mobile app", "due_date": "2025-12-22", "completed": false } ] }, { "name": "Marketing Campaign Q4", "description": "Q4 marketing initiatives and campaign planning", "tasks": [ { "name": "Create social media content calendar", "description": "Plan and schedule social media posts for Q4 campaign", "due_date": "2025-12-10", "completed": false, "stories": [ { "text": "Don't forget to coordinate with the content team for approval" } ] }, { "name": "Review competitor analysis", "description": "Analyze competitor offerings and positioning", "due_date": "2025-12-08", "completed": false, "stories": [ { "text": "This is critical for our competitive positioning" } ] }, { "name": "Update brand guidelines", "description": "Refresh brand guidelines to reflect new visual identity", "due_date": "2025-12-12", "completed": false, "stories": [ { "text": "The new guidelines should include updated logo usage rules" } ] } ] }, { "name": "Product Launch 2025", "description": "New product launch preparation and coordination", "tasks": [ { "name": "Conduct user testing sessions", "description": "Schedule and conduct user testing for new features", "due_date": "2025-12-18", "completed": false, "stories": [ { "text": "We need at least 10 participants for meaningful user testing results" } ] }, { "name": "Prepare product demo presentation", "description": "Create compelling demo presentation for stakeholders", "due_date": "2025-12-25", "completed": false } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/asana/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export asana sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_asana__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_AsanaData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/mem0/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize mem0 sandbox with data", "description": "Initialize the sandbox with mem0-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_mem0__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/Mem0Data-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "memory_list": [ { "message_list": [ { "role": "user", "content": "I prefer dark mode for all applications" } ], "user_id": "user_001", "agent_id": "agent_assistant", "app_id": "settings_app", "run_id": "run_12345", "auto_infer": true, "background_processing": true, "category_definitions": [ { "ui_preferences": "Tracks user interface settings and visual preferences including themes, colors, and display options" } ], "metadata": { "category": "preferences", "tags": [ "ui", "settings" ] }, "version": "v2" }, { "message_list": [ { "role": "user", "content": "My favorite programming language is Python" }, { "role": "assistant", "content": "I've noted that Python is your favorite programming language." } ], "user_id": "user_001", "agent_id": "agent_assistant", "app_id": "dev_app", "run_id": "run_12346", "auto_infer": true, "background_processing": true, "category_definitions": [ { "technical_skills": "Tracks programming languages, frameworks, tools and technical expertise levels" } ], "metadata": { "category": "preferences", "tags": [ "programming", "development" ] }, "version": "v2" }, { "message_list": [ { "role": "user", "content": "I have a meeting every Monday at 9 AM" } ], "user_id": "user_001", "agent_id": "agent_calendar", "app_id": "calendar_app", "run_id": "run_12347", "auto_infer": true, "background_processing": false, "category_definitions": [ { "schedule_management": "Tracks recurring events, meetings, appointments and time commitments" } ], "processing_instructions": "Store all calendar events with timezone information", "metadata": { "category": "schedule", "tags": [ "calendar", "recurring" ] }, "version": "v2" }, { "message_list": [ { "role": "user", "content": "I'm working on a machine learning project using TensorFlow" } ], "user_id": "user_001", "agent_id": "agent_assistant", "app_id": "project_app", "run_id": "run_12348", "auto_infer": true, "background_processing": true, "include_preferences": "project details, technologies, status", "category_definitions": [ { "project_tracking": "Tracks active and past projects including technologies used, status, and objectives" } ], "metadata": { "category": "projects", "tags": [ "ml", "tensorflow", "current" ] }, "version": "v2" }, { "message_list": [ { "role": "user", "content": "My email is user@example.com" } ], "user_id": "user_001", "agent_id": "agent_assistant", "app_id": "contact_app", "run_id": "run_12349", "auto_infer": false, "background_processing": true, "read_only": true, "exclude_preferences": "temporary contact info", "category_definitions": [ { "contact_information": "Tracks permanent contact details including email, phone numbers, and social media handles" } ], "metadata": { "category": "contact", "tags": [ "email", "personal" ] }, "version": "v2" } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/mem0/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export mem0 sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_mem0__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_Mem0Data_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/supabase/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize supabase sandbox with data", "description": "Initialize the sandbox with supabase-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_supabase__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SupabaseData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "projects": [ { "name": "test-project", "tables": [ { "name": "users", "columns": { "email": "TEXT", "name": "TEXT", "age": "INTEGER", "is_active": "BOOLEAN", "balance": "REAL", "avatar_url": "TEXT", "roles": "JSONB", "metadata": "JSONB", "created_at": "TEXT" }, "rows": [ { "id": 1, "email": "john@example.com", "name": "John Doe", "age": 30, "is_active": true, "balance": 1250.5, "roles": [ "admin", "user" ], "metadata": { "last_login": "2024-01-15T10:00:00Z", "login_count": 42 }, "created_at": "2024-01-01T10:00:00Z" }, { "id": 2, "email": "jane@example.com", "name": "Jane Smith", "age": 28, "is_active": true, "balance": 3500.75, "avatar_url": "https://example.com/avatars/jane.jpg", "roles": [ "user" ], "metadata": { "last_login": "2024-01-16T11:30:00Z", "login_count": 156 }, "created_at": "2024-01-02T11:30:00Z" }, { "id": 3, "email": "bob@example.com", "name": "Bob Johnson", "age": 45, "is_active": false, "balance": 0, "roles": [ "user", "moderator" ], "metadata": { "last_login": "2023-12-20T09:15:00Z", "login_count": 8 }, "created_at": "2024-01-03T09:15:00Z" } ] }, { "name": "posts", "columns": { "title": "TEXT", "content": "TEXT", "author_id": "INTEGER", "view_count": "INTEGER", "like_count": "INTEGER", "is_published": "BOOLEAN", "is_featured": "BOOLEAN", "tags": "JSONB", "rating": "REAL", "settings": "JSONB", "created_at": "TEXT", "updated_at": "TEXT" }, "rows": [ { "id": 101, "title": "First Post", "content": "This is my first post!", "author_id": 1, "view_count": 245, "like_count": 18, "is_published": true, "is_featured": false, "tags": [ "introduction", "welcome" ], "rating": 4.5, "settings": { "allow_comments": true, "notify_author": true }, "created_at": "2024-01-01T12:00:00Z" }, { "id": 102, "title": "Hello World", "content": "Welcome to my blog", "author_id": 2, "view_count": 1032, "like_count": 67, "is_published": true, "is_featured": true, "tags": [ "blog", "announcement", "community" ], "rating": 4.8, "settings": { "allow_comments": true, "notify_author": false }, "created_at": "2024-01-02T14:30:00Z", "updated_at": "2024-01-05T09:20:00Z" } ] } ] }, { "name": "analytics-project", "tables": [ { "name": "events", "columns": { "event_name": "TEXT", "user_id": "INTEGER", "user_agent": "TEXT", "duration_ms": "INTEGER", "is_bot": "BOOLEAN", "coordinates": "JSONB", "timestamp": "TEXT" }, "rows": [ { "id": 5001, "event_name": "page_view", "user_id": 1, "user_agent": "Mozilla/5.0", "duration_ms": 3450, "is_bot": false, "coordinates": { "latitude": 37.7749, "longitude": -122.4194 }, "timestamp": "2024-01-01T08:00:00Z" }, { "id": 5002, "event_name": "click", "user_id": 2, "user_agent": "Chrome/120.0", "is_bot": false, "coordinates": { "latitude": 40.7128, "longitude": -74.006 }, "timestamp": "2024-01-01T08:15:00Z" } ] }, { "name": "metrics", "columns": { "metric_name": "TEXT", "value": "INTEGER", "percentage": "REAL", "is_trending": "BOOLEAN", "change_rate": "REAL", "thresholds": "JSONB", "recorded_at": "TEXT" }, "rows": [ { "id": 1, "metric_name": "total_visits", "value": 1250, "is_trending": true, "change_rate": 15.5, "thresholds": { "warning": 1000, "critical": 500 }, "recorded_at": "2024-01-01T00:00:00Z" }, { "id": 2, "metric_name": "bounce_rate", "value": 35, "percentage": 0.35, "is_trending": false, "change_rate": -2.3, "thresholds": { "warning": 50, "critical": 70 }, "recorded_at": "2024-01-01T00:00:00Z" }, { "id": 3, "metric_name": "avg_session_duration", "value": 180, "is_trending": true, "change_rate": 8.7, "thresholds": { "warning": 120, "critical": 60 }, "recorded_at": "2024-01-01T00:00:00Z" } ] } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/supabase/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export supabase sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_supabase__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_SupabaseData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/github/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize github sandbox with data", "description": "Initialize the sandbox with github-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_github__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/GitHubData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "repos": [ { "name": "test-repo", "description": "A test repository for GitHub sandbox", "branches": [ { "name": "main", "folders": { "name": "root", "path": "", "files": [ { "name": "README.md", "path": "README.md", "content": "# Test Repository\n\nThis is a test repository for the GitHub sandbox.\n\n## Features\n- Test files\n- Test folders\n- Sample issues and PRs" } ], "folders": [ { "name": "src", "path": "src", "files": [ { "name": "main.py", "path": "src/main.py", "content": "def main():\n print('Hello, GitHub Sandbox!')\n\nif __name__ == '__main__':\n main()" } ], "folders": [] } ] } }, { "name": "feature-branch", "folders": { "name": "root", "path": "", "files": [ { "name": "README.md", "path": "README.md", "content": "# Test Repository\n\nThis is a test repository for the GitHub sandbox.\n\n## Features\n- Test files\n- Test folders\n- Sample issues and PRs\n- New feature in development" } ], "folders": [ { "name": "src", "path": "src", "files": [ { "name": "main.py", "path": "src/main.py", "content": "def main():\n print('Hello, GitHub Sandbox!')\n print('New feature added!')\n\nif __name__ == '__main__':\n main()" }, { "name": "feature.py", "path": "src/feature.py", "content": "def new_feature():\n return 'This is a new feature'\n" } ], "folders": [] } ] } } ], "issues": [ { "issue_title": "Sample issue for testing", "description": "This is a test issue created for GitHub sandbox testing.\n\n## Description\nWe should implement feature X.\n\n## Steps\n1. Plan the feature\n2. Implement the code\n3. Write tests", "status": "open", "labels": [ "bug", "enhancement" ] } ], "prs": [ { "pr_title": "Add new feature", "description": "This PR adds a new feature to the repository.\n\n## Changes\n- Added new functionality\n- Updated documentation\n- Added tests", "status": "open", "source_branch": "feature-branch", "target_branch": "main", "labels": [ "enhancement" ] } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/github/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export github sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_github__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_GitHubData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/linear/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize linear sandbox with data", "description": "Initialize the sandbox with linear-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_linear__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/LinearData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "projects": [ { "name": "Q1 2024 Product Roadmap", "description": "First quarter 2024 product development roadmap", "state": "started", "issues": [ { "title": "Implement user authentication", "description": "Add OAuth2 authentication flow with PKCE support", "priority": 1, "state_name": "In Progress", "comments": [ { "body": "We should use OAuth 2.0 with PKCE for better security" }, { "body": "I'll handle the backend implementation" } ] }, { "title": "Design database schema", "description": "Create initial database schema for users and projects", "priority": 2, "state_name": "Done", "comments": [ { "body": "Schema design completed and reviewed" } ] }, { "title": "Setup CI/CD pipeline", "description": "Configure automated testing and deployment pipeline", "priority": 3, "state_name": "Todo", "comments": [] }, { "title": "Fix login page responsiveness", "priority": 4, "state_name": "Backlog", "comments": [] }, { "title": "Research new UI framework", "description": "Evaluate modern UI frameworks for future migration", "priority": 0, "state_name": "Todo", "comments": [ { "body": "Looking at React, Vue, and Svelte" } ] } ] }, { "name": "Customer Dashboard Redesign", "state": "completed", "issues": [ { "title": "Create wireframes for dashboard", "description": "Design initial wireframes and mockups", "priority": 2, "state_name": "Done", "comments": [ { "body": "Wireframes approved by design team" }, { "body": "Moving to implementation phase" }, { "body": "All stakeholders signed off" } ] }, { "title": "Implement dashboard components", "description": "Build reusable dashboard components", "priority": 1, "state_name": "Done", "comments": [] }, { "title": "Add analytics widgets", "priority": 2, "state_name": "Done", "comments": [ { "body": "Integrated with analytics API" } ] } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/linear/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export linear sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_linear__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_LinearData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/notion/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize notion sandbox with data", "description": "Initialize the sandbox with notion-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_notion__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/NotionData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "databases": [ { "name": "Product Roadmap", "summary": "Track product features and releases", "display_icon": "🚀", "sources": [ { "label": "Features", "summary": "Feature tracking table", "fields": { "Name": { "type": "title" }, "Status": { "type": "select", "options": [ "Planning", "In Progress", "Done" ] }, "Priority": { "type": "select", "options": [ "High", "Medium", "Low" ] }, "Assignee": { "type": "people" } }, "pages": [ { "name": "User Authentication", "attributes": { "Status": "Done", "Priority": "High" }, "content_blocks": [ { "block_type": "paragraph", "content": "Implement secure user authentication with OAuth2 support" }, { "block_type": "heading_2", "content": "Requirements" }, { "block_type": "bulleted_list_item", "content": "Support email/password login" }, { "block_type": "bulleted_list_item", "content": "Implement JWT tokens" }, { "block_type": "bulleted_list_item", "content": "Add OAuth2 providers (Google, GitHub)" } ], "comments": [ { "content": "Should we support social login from day one?" }, { "content": "Yes, let's add Google and GitHub OAuth" } ] }, { "name": "Real-time Notifications", "attributes": { "Status": "In Progress", "Priority": "High" }, "content_blocks": [ { "block_type": "paragraph", "content": "Build real-time notification system using WebSockets" }, { "block_type": "to_do", "content": "Set up WebSocket server" }, { "block_type": "to_do", "content": "Create notification service" }, { "block_type": "to_do", "content": "Design notification UI components" } ], "comments": [] }, { "name": "Dark Mode Support", "attributes": { "Status": "Planning", "Priority": "Medium" }, "content_blocks": [ { "block_type": "paragraph", "content": "Add dark mode theme toggle" }, { "block_type": "callout", "content": "💡 Consider using CSS variables for easy theme switching" } ], "comments": [ { "content": "Users have been requesting this feature frequently" } ] } ] }, { "label": "Releases", "summary": "Release planning and tracking", "fields": { "Name": { "type": "title" }, "Release Date": { "type": "date" }, "Status": { "type": "select", "options": [ "Planned", "In Development", "Released" ] } }, "pages": [ { "name": "v1.0 - MVP Release", "attributes": { "Release Date": "2024-03-15", "Status": "In Development" }, "content_blocks": [ { "block_type": "heading_2", "content": "Release Goals" }, { "block_type": "paragraph", "content": "First production-ready version with core functionality" }, { "block_type": "numbered_list_item", "content": "User authentication and authorization" }, { "block_type": "numbered_list_item", "content": "Real-time notifications" }, { "block_type": "numbered_list_item", "content": "Core API endpoints" } ], "comments": [] }, { "name": "v1.1 - Enhanced UX", "attributes": { "Release Date": "2024-04-30", "Status": "Planned" }, "content_blocks": [ { "block_type": "paragraph", "content": "Focus on user experience improvements" } ], "comments": [] } ] } ] }, { "name": "Team Tasks", "summary": "Daily task management for the team", "display_icon": "✅", "sources": [ { "label": "Tasks", "summary": "Task tracking", "fields": { "Task": { "type": "title" }, "Status": { "type": "status" }, "Assignee": { "type": "people" }, "Due Date": { "type": "date" }, "Priority": { "type": "select", "options": [ "High", "Medium", "Low" ] } }, "pages": [ { "name": "Review pull request #123", "attributes": { "Status": "In Progress", "Priority": "High", "Due Date": "2024-02-10" }, "content_blocks": [ { "block_type": "paragraph", "content": "Review authentication implementation PR" }, { "block_type": "code", "content": "// Check for proper error handling and security best practices" } ], "comments": [ { "content": "Found a potential security issue in token validation" }, { "content": "Fixed in latest commit" } ] }, { "name": "Update deployment documentation", "attributes": { "Status": "Todo", "Priority": "Medium", "Due Date": "2024-02-15" }, "content_blocks": [ { "block_type": "paragraph", "content": "Add new deployment steps for Docker setup" } ], "comments": [] }, { "name": "Fix responsive layout on mobile", "attributes": { "Status": "Done", "Priority": "High", "Due Date": "2024-02-08" }, "content_blocks": [ { "block_type": "paragraph", "content": "Navigation menu was broken on screens < 768px" }, { "block_type": "heading_3", "content": "Solution" }, { "block_type": "paragraph", "content": "Implemented hamburger menu for mobile devices" } ], "comments": [ { "content": "Tested on iPhone and Android devices, looks good!" } ] } ] } ] } ], "pages": [ { "name": "Team Meeting Notes - Feb 2024", "content_blocks": [ { "block_type": "heading_1", "content": "Weekly Sync - February 5, 2024" }, { "block_type": "paragraph", "content": "Attendees: Alice, Bob, Charlie, Diana" }, { "block_type": "heading_2", "content": "Discussion Points" }, { "block_type": "bulleted_list_item", "content": "Sprint retrospective review" }, { "block_type": "bulleted_list_item", "content": "Q1 roadmap planning" }, { "block_type": "bulleted_list_item", "content": "New hire onboarding process" }, { "block_type": "heading_2", "content": "Action Items" }, { "block_type": "to_do", "content": "Alice: Schedule 1-on-1s with new team members" }, { "block_type": "to_do", "content": "Bob: Update API documentation" }, { "block_type": "to_do", "content": "Charlie: Review security audit findings" } ], "comments": [ { "content": "Great meeting! Let's make sure we follow up on action items by Friday" }, { "content": "Added calendar invites for the 1-on-1s" } ] }, { "name": "Engineering Wiki Home", "content_blocks": [ { "block_type": "heading_1", "content": "Welcome to Engineering Wiki" }, { "block_type": "paragraph", "content": "This wiki contains all technical documentation, guides, and best practices for our engineering team." }, { "block_type": "heading_2", "content": "Quick Links" }, { "block_type": "bulleted_list_item", "content": "Getting Started Guide" }, { "block_type": "bulleted_list_item", "content": "API Documentation" }, { "block_type": "bulleted_list_item", "content": "Architecture Overview" }, { "block_type": "bulleted_list_item", "content": "Deployment Procedures" }, { "block_type": "heading_2", "content": "Code of Conduct" }, { "block_type": "quote", "content": "Write code that is clear, maintainable, and well-tested. When in doubt, prioritize readability over cleverness." } ], "comments": [] }, { "name": "API Design Guidelines", "content_blocks": [ { "block_type": "heading_1", "content": "REST API Design Guidelines" }, { "block_type": "paragraph", "content": "Follow these guidelines when designing new API endpoints" }, { "block_type": "heading_2", "content": "General Principles" }, { "block_type": "numbered_list_item", "content": "Use RESTful conventions (GET, POST, PUT, DELETE)" }, { "block_type": "numbered_list_item", "content": "Use plural nouns for resource names" }, { "block_type": "numbered_list_item", "content": "Version your APIs (e.g., /v1/users)" }, { "block_type": "numbered_list_item", "content": "Use HTTP status codes correctly" }, { "block_type": "heading_2", "content": "Example" }, { "block_type": "code", "content": "GET /v1/users - List all users\nGET /v1/users/:id - Get specific user\nPOST /v1/users - Create new user\nPUT /v1/users/:id - Update user\nDELETE /v1/users/:id - Delete user" }, { "block_type": "callout", "content": "⚠️ Always validate input data and sanitize user-provided content" } ], "comments": [ { "content": "Should we use GraphQL for more complex queries?" }, { "content": "Let's discuss in next architecture meeting" } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/notion/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export notion sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_notion__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_NotionData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/slack/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize slack sandbox with data", "description": "Initialize the sandbox with slack-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_slack__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SlackData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "channels": [ { "name": "sandbox-test", "description": "Company-wide announcements and work-based matters", "is_private": false, "messages": [ { "text": "Welcome to the new Slack workspace!", "reactions": [ { "name": "wave" }, { "name": "tada" } ] }, { "text": "Thanks! Excited to be here.", "reactions": [ { "name": "+1" } ] } ] }, { "name": "project-alpha", "description": "Discussion for Project Alpha", "is_private": false, "messages": [ { "text": "Has anyone seen the latest specs?", "reactions": [], "replies": [ { "text": "I have them, will share in a moment", "reactions": [ { "name": "eyes" } ] }, { "text": "Thanks! That would be great." } ] }, { "text": "Here are the project specs...", "reactions": [ { "name": "rocket" } ] } ] }, { "name": "sandbox-test-private", "description": "Top secret stuff", "is_private": true, "messages": [ { "text": "This is confidential information", "reactions": [ { "name": "shushing_face" } ], "replies": [ { "text": "Got it, keeping this private" } ] } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/slack/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export slack sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_slack__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_SlackData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/confluence/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize confluence sandbox with data", "description": "Initialize the sandbox with confluence-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_confluence__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/ConfluenceData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "spaces": [ { "identifier": "TEAM", "name": "Team Space", "description": "Space for team collaboration", "pages": [ { "title": "Welcome to the Team", "content": "This is the home page for our team.
", "comments": [ { "content": "Great start!
" } ], "children": [ { "title": "Project Alpha", "content": "Details about the project.
", "comments": [ { "content": "Looking forward to this.
" } ] }, { "title": "Meeting Notes", "content": "Weekly meeting notes go here.
", "children": [ { "title": "2023-10-27 Sync", "content": "Discussed Q4 goals.
" } ] } ] } ] }, { "identifier": "DOCS", "name": "Documentation", "description": "Product documentation", "pages": [ { "title": "Getting Started", "content": "How to use the product.
" } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/confluence/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export confluence sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_confluence__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_ConfluenceData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/discord/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize discord sandbox with data", "description": "Initialize the sandbox with discord-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_discord__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/DiscordData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "channels": [ { "messages": [ { "content": "Welcome to the Discord sandbox test!", "reactions": [ { "name": "👋" }, { "name": "🎉" } ] }, { "content": "This is the second test message.", "reactions": [ { "name": "👍" } ] }, { "content": "Message without reactions for testing.", "reactions": [] } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/discord/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export discord sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_discord__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_DiscordData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/airtable/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize airtable sandbox with data", "description": "Initialize the sandbox with airtable-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_airtable__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/AirtableData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "tables": [ { "name": "Projects", "description": "Track all projects and their details", "fields": [ { "name": "Name", "type": "singleLineText" }, { "name": "Status", "type": "singleSelect", "options": { "choices": [ { "name": "Planning" }, { "name": "In Progress" }, { "name": "On Hold" }, { "name": "Completed" } ] } }, { "name": "Description", "type": "multilineText" }, { "name": "Start Date", "type": "date" }, { "name": "Due Date", "type": "date" }, { "name": "Budget", "type": "number" }, { "name": "Priority", "type": "singleSelect", "options": { "choices": [ { "name": "High" }, { "name": "Medium" }, { "name": "Low" } ] } }, { "name": "Tasks", "type": "multipleRecordLinks" } ], "records": [ { "fields": { "Name": "Website Redesign", "Status": "In Progress", "Description": "Complete overhaul of company website with modern design and improved UX", "Start Date": "2024-01-15", "Due Date": "2024-03-30", "Budget": 50000, "Priority": "High" } }, { "fields": { "Name": "Mobile App Development", "Status": "Planning", "Description": "Develop iOS and Android mobile applications for customer engagement", "Start Date": "2024-02-01", "Due Date": "2024-06-30", "Budget": 120000, "Priority": "High" } }, { "fields": { "Name": "Marketing Campaign Q1", "Status": "In Progress", "Description": "Launch social media and email marketing campaign for Q1", "Start Date": "2024-01-01", "Due Date": "2024-03-31", "Budget": 25000, "Priority": "Medium" } }, { "fields": { "Name": "Infrastructure Upgrade", "Status": "Planning", "Description": "Upgrade cloud infrastructure and migrate to Kubernetes", "Start Date": "2024-03-01", "Due Date": "2024-05-31", "Budget": 75000, "Priority": "High" } }, { "fields": { "Name": "Customer Support Portal", "Status": "On Hold", "Description": "Build self-service customer support portal with knowledge base", "Start Date": "2024-01-20", "Due Date": "2024-04-30", "Budget": 30000, "Priority": "Low" } } ] }, { "name": "Tasks", "description": "Individual tasks and action items", "fields": [ { "name": "Task Name", "type": "singleLineText" }, { "name": "Description", "type": "multilineText" }, { "name": "Status", "type": "singleSelect", "options": { "choices": [ { "name": "To Do" }, { "name": "In Progress" }, { "name": "Review" }, { "name": "Done" } ] } }, { "name": "Assignee", "type": "singleLineText" }, { "name": "Due Date", "type": "date" }, { "name": "Priority", "type": "singleSelect", "options": { "choices": [ { "name": "Critical" }, { "name": "High" }, { "name": "Medium" }, { "name": "Low" } ] } }, { "name": "Estimated Hours", "type": "number" }, { "name": "Completed", "type": "checkbox" }, { "name": "Project", "type": "multipleRecordLinks" } ], "records": [ { "fields": { "Task Name": "Design homepage mockup", "Description": "Create high-fidelity mockups for the new homepage layout", "Status": "In Progress", "Assignee": "Sarah Johnson", "Due Date": "2024-02-15", "Priority": "High", "Estimated Hours": 16, "Completed": false } }, { "fields": { "Task Name": "Set up development environment", "Description": "Configure local dev environment with all necessary tools", "Status": "Done", "Assignee": "Mike Chen", "Due Date": "2024-01-20", "Priority": "High", "Estimated Hours": 8, "Completed": true } }, { "fields": { "Task Name": "Conduct user research", "Description": "Interview 20 users about their needs and pain points", "Status": "In Progress", "Assignee": "Emily Rodriguez", "Due Date": "2024-02-28", "Priority": "Medium", "Estimated Hours": 40, "Completed": false } }, { "fields": { "Task Name": "Write API documentation", "Description": "Document all API endpoints with examples and parameters", "Status": "To Do", "Assignee": "David Lee", "Due Date": "2024-03-10", "Priority": "Medium", "Estimated Hours": 24, "Completed": false } }, { "fields": { "Task Name": "Implement authentication system", "Description": "Build OAuth2 authentication with JWT tokens", "Status": "In Progress", "Assignee": "Mike Chen", "Due Date": "2024-02-25", "Priority": "Critical", "Estimated Hours": 32, "Completed": false } }, { "fields": { "Task Name": "Create social media content calendar", "Description": "Plan content for Twitter, LinkedIn, and Instagram for Q1", "Status": "Review", "Assignee": "Amanda White", "Due Date": "2024-02-05", "Priority": "High", "Estimated Hours": 12, "Completed": false } }, { "fields": { "Task Name": "Deploy staging environment", "Description": "Set up staging server for QA testing", "Status": "Done", "Assignee": "Robert Garcia", "Due Date": "2024-01-25", "Priority": "High", "Estimated Hours": 6, "Completed": true } }, { "fields": { "Task Name": "Database schema design", "Description": "Design normalized database schema for new features", "Status": "Review", "Assignee": "David Lee", "Due Date": "2024-02-10", "Priority": "Critical", "Estimated Hours": 20, "Completed": false } } ] }, { "name": "Team Members", "description": "Team directory with contact information", "fields": [ { "name": "Full Name", "type": "singleLineText" }, { "name": "Email", "type": "email" }, { "name": "Phone", "type": "phoneNumber" }, { "name": "Role", "type": "singleSelect", "options": { "choices": [ { "name": "Developer" }, { "name": "Designer" }, { "name": "Product Manager" }, { "name": "Marketing" }, { "name": "DevOps" } ] } }, { "name": "Department", "type": "singleSelect", "options": { "choices": [ { "name": "Engineering" }, { "name": "Design" }, { "name": "Product" }, { "name": "Marketing" }, { "name": "Operations" } ] } }, { "name": "Start Date", "type": "date" }, { "name": "Active", "type": "checkbox" }, { "name": "Profile Picture", "type": "url" } ], "records": [ { "fields": { "Full Name": "Sarah Johnson", "Email": "sarah.johnson@example.com", "Phone": "+1-555-0101", "Role": "Designer", "Department": "Design", "Start Date": "2022-03-15", "Active": true, "Profile Picture": "https://i.pravatar.cc/150?img=1" } }, { "fields": { "Full Name": "Mike Chen", "Email": "mike.chen@example.com", "Phone": "+1-555-0102", "Role": "Developer", "Department": "Engineering", "Start Date": "2021-06-01", "Active": true, "Profile Picture": "https://i.pravatar.cc/150?img=13" } }, { "fields": { "Full Name": "Emily Rodriguez", "Email": "emily.rodriguez@example.com", "Phone": "+1-555-0103", "Role": "Product Manager", "Department": "Product", "Start Date": "2020-09-10", "Active": true, "Profile Picture": "https://i.pravatar.cc/150?img=5" } }, { "fields": { "Full Name": "David Lee", "Email": "david.lee@example.com", "Phone": "+1-555-0104", "Role": "Developer", "Department": "Engineering", "Start Date": "2023-01-20", "Active": true, "Profile Picture": "https://i.pravatar.cc/150?img=12" } }, { "fields": { "Full Name": "Amanda White", "Email": "amanda.white@example.com", "Phone": "+1-555-0105", "Role": "Marketing", "Department": "Marketing", "Start Date": "2022-11-05", "Active": true, "Profile Picture": "https://i.pravatar.cc/150?img=10" } }, { "fields": { "Full Name": "Robert Garcia", "Email": "robert.garcia@example.com", "Phone": "+1-555-0106", "Role": "DevOps", "Department": "Operations", "Start Date": "2021-02-28", "Active": true, "Profile Picture": "https://i.pravatar.cc/150?img=15" } } ] }, { "name": "Meetings", "description": "Schedule and track team meetings", "fields": [ { "name": "Meeting Title", "type": "singleLineText" }, { "name": "Date", "type": "date" }, { "name": "Duration (minutes)", "type": "number" }, { "name": "Type", "type": "singleSelect", "options": { "choices": [ { "name": "Stand-up" }, { "name": "Planning" }, { "name": "Review" }, { "name": "Retrospective" }, { "name": "One-on-One" } ] } }, { "name": "Attendees", "type": "multilineText" }, { "name": "Notes", "type": "multilineText" }, { "name": "Action Items", "type": "multilineText" }, { "name": "Recording URL", "type": "url" } ], "records": [ { "fields": { "Meeting Title": "Weekly Team Stand-up", "Date": "2024-02-05", "Duration (minutes)": 30, "Type": "Stand-up", "Attendees": "Sarah, Mike, Emily, David, Amanda, Robert", "Notes": "Discussed progress on current sprint. Team velocity is good. No major blockers.", "Action Items": "- Mike to review David's PR\n- Sarah to finalize designs by EOD\n- Emily to schedule client demo" } }, { "fields": { "Meeting Title": "Sprint Planning - Sprint 5", "Date": "2024-02-01", "Duration (minutes)": 120, "Type": "Planning", "Attendees": "All team members", "Notes": "Planned 25 story points for the upcoming sprint. Focus on authentication and API development.", "Action Items": "- Break down epic into smaller tasks\n- Update story estimates\n- Assign tasks to team members", "Recording URL": "https://zoom.us/rec/example123" } }, { "fields": { "Meeting Title": "Design Review - Homepage", "Date": "2024-02-03", "Duration (minutes)": 60, "Type": "Review", "Attendees": "Sarah, Emily, Mike", "Notes": "Reviewed new homepage designs. Overall positive feedback. Some minor adjustments needed.", "Action Items": "- Sarah to update color palette\n- Increase font size for headings\n- Add more whitespace in hero section" } }, { "fields": { "Meeting Title": "1:1 - Emily & Mike", "Date": "2024-02-02", "Duration (minutes)": 30, "Type": "One-on-One", "Attendees": "Emily, Mike", "Notes": "Discussed career growth and upcoming projects. Mike interested in learning more about system architecture.", "Action Items": "- Emily to share architecture resources\n- Mike to shadow senior architect next month" } } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/airtable/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export airtable sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_airtable__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_AirtableData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/snowflake/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize snowflake sandbox with data", "description": "Initialize the sandbox with snowflake-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_snowflake__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/SnowflakeData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "databases": [ { "name": "SANDBOX_DB", "description": "Main sandbox database for testing and development", "schemas": [ { "name": "SALES", "tables": [ { "name": "CUSTOMERS", "columns": [ { "name": "CUSTOMER_ID", "data_type": "NUMBER(38,0)", "nullable": false }, { "name": "FIRST_NAME", "data_type": "VARCHAR(100)", "nullable": false }, { "name": "LAST_NAME", "data_type": "VARCHAR(100)", "nullable": false }, { "name": "EMAIL", "data_type": "VARCHAR(255)", "nullable": false }, { "name": "COUNTRY", "data_type": "VARCHAR(100)", "nullable": true }, { "name": "CREATED_AT", "data_type": "TIMESTAMP_NTZ(9)", "nullable": true, "default_value": "CURRENT_TIMESTAMP()" } ], "rows": [ { "values": { "CUSTOMER_ID": 1, "FIRST_NAME": "John", "LAST_NAME": "Doe", "EMAIL": "john.doe@example.com", "COUNTRY": "USA", "CREATED_AT": "2024-01-15T09:00:00" } }, { "values": { "CUSTOMER_ID": 2, "FIRST_NAME": "Jane", "LAST_NAME": "Smith", "EMAIL": "jane.smith@example.com", "COUNTRY": "Canada", "CREATED_AT": "2024-01-15T09:05:00" } }, { "values": { "CUSTOMER_ID": 3, "FIRST_NAME": "Bob", "LAST_NAME": "Johnson", "EMAIL": "bob.johnson@example.com", "COUNTRY": "UK", "CREATED_AT": "2024-01-15T09:10:00" } }, { "values": { "CUSTOMER_ID": 4, "FIRST_NAME": "Alice", "LAST_NAME": "Williams", "EMAIL": "alice.williams@example.com", "COUNTRY": "Australia", "CREATED_AT": "2024-01-15T09:15:00" } } ] }, { "name": "ORDERS", "columns": [ { "name": "ORDER_ID", "data_type": "NUMBER(38,0)", "nullable": false }, { "name": "CUSTOMER_ID", "data_type": "NUMBER(38,0)", "nullable": false }, { "name": "ORDER_DATE", "data_type": "DATE", "nullable": false }, { "name": "TOTAL_AMOUNT", "data_type": "NUMBER(10,2)", "nullable": false }, { "name": "STATUS", "data_type": "VARCHAR(50)", "nullable": false } ], "rows": [ { "values": { "ORDER_ID": 1001, "CUSTOMER_ID": 1, "ORDER_DATE": "2024-01-15", "TOTAL_AMOUNT": "250.50", "STATUS": "COMPLETED" } }, { "values": { "ORDER_ID": 1002, "CUSTOMER_ID": 2, "ORDER_DATE": "2024-01-16", "TOTAL_AMOUNT": "175.25", "STATUS": "SHIPPED" } }, { "values": { "ORDER_ID": 1003, "CUSTOMER_ID": 1, "ORDER_DATE": "2024-01-17", "TOTAL_AMOUNT": "399.99", "STATUS": "PROCESSING" } }, { "values": { "ORDER_ID": 1004, "CUSTOMER_ID": 3, "ORDER_DATE": "2024-01-18", "TOTAL_AMOUNT": "89.99", "STATUS": "COMPLETED" } }, { "values": { "ORDER_ID": 1005, "CUSTOMER_ID": 4, "ORDER_DATE": "2024-01-19", "TOTAL_AMOUNT": "450.00", "STATUS": "PENDING" } } ] }, { "name": "PRODUCTS", "columns": [ { "name": "PRODUCT_ID", "data_type": "NUMBER(38,0)", "nullable": false }, { "name": "PRODUCT_NAME", "data_type": "VARCHAR(200)", "nullable": false }, { "name": "CATEGORY", "data_type": "VARCHAR(100)", "nullable": true }, { "name": "PRICE", "data_type": "NUMBER(10,2)", "nullable": false }, { "name": "IN_STOCK", "data_type": "BOOLEAN", "nullable": false, "default_value": "TRUE" } ], "rows": [ { "values": { "PRODUCT_ID": 101, "PRODUCT_NAME": "Laptop Pro 15", "CATEGORY": "Electronics", "PRICE": "1299.99", "IN_STOCK": true } }, { "values": { "PRODUCT_ID": 102, "PRODUCT_NAME": "Wireless Mouse", "CATEGORY": "Electronics", "PRICE": "29.99", "IN_STOCK": true } }, { "values": { "PRODUCT_ID": 103, "PRODUCT_NAME": "Office Chair", "CATEGORY": "Furniture", "PRICE": "249.99", "IN_STOCK": false } }, { "values": { "PRODUCT_ID": 104, "PRODUCT_NAME": "Desk Lamp", "CATEGORY": "Furniture", "PRICE": "45.00", "IN_STOCK": true } } ] } ] }, { "name": "ANALYTICS", "tables": [ { "name": "SALES_METRICS", "columns": [ { "name": "METRIC_ID", "data_type": "NUMBER(38,0)", "nullable": false }, { "name": "METRIC_DATE", "data_type": "DATE", "nullable": false }, { "name": "REVENUE", "data_type": "NUMBER(12,2)", "nullable": false }, { "name": "ORDERS_COUNT", "data_type": "NUMBER(38,0)", "nullable": false }, { "name": "AVG_ORDER_VALUE", "data_type": "NUMBER(10,2)", "nullable": false } ], "rows": [ { "values": { "METRIC_ID": 1, "METRIC_DATE": "2024-01-15", "REVENUE": "250.50", "ORDERS_COUNT": 1, "AVG_ORDER_VALUE": "250.50" } }, { "values": { "METRIC_ID": 2, "METRIC_DATE": "2024-01-16", "REVENUE": "175.25", "ORDERS_COUNT": 1, "AVG_ORDER_VALUE": "175.25" } }, { "values": { "METRIC_ID": 3, "METRIC_DATE": "2024-01-17", "REVENUE": "399.99", "ORDERS_COUNT": 1, "AVG_ORDER_VALUE": "399.99" } } ] }, { "name": "USER_ACTIVITY", "columns": [ { "name": "ACTIVITY_ID", "data_type": "NUMBER(38,0)", "nullable": false }, { "name": "USER_ID", "data_type": "NUMBER(38,0)", "nullable": false }, { "name": "ACTIVITY_TYPE", "data_type": "VARCHAR(100)", "nullable": false }, { "name": "ACTIVITY_TIMESTAMP", "data_type": "TIMESTAMP_NTZ(9)", "nullable": false }, { "name": "METADATA", "data_type": "VARIANT", "nullable": true } ], "rows": [ { "values": { "ACTIVITY_ID": 1, "USER_ID": 1, "ACTIVITY_TYPE": "LOGIN", "ACTIVITY_TIMESTAMP": "2024-01-15T08:30:00" } }, { "values": { "ACTIVITY_ID": 2, "USER_ID": 1, "ACTIVITY_TYPE": "PURCHASE", "ACTIVITY_TIMESTAMP": "2024-01-15T10:45:00" } }, { "values": { "ACTIVITY_ID": 3, "USER_ID": 2, "ACTIVITY_TYPE": "LOGIN", "ACTIVITY_TIMESTAMP": "2024-01-16T09:15:00" } } ] } ] } ] }, { "name": "TEST_DB", "description": "Secondary database for integration testing", "schemas": [ { "name": "OBSERVATION", "tables": [ { "name": "TEST_LOGS", "columns": [ { "name": "LOG_ID", "data_type": "NUMBER(38,0)", "nullable": false }, { "name": "LOG_MESSAGE", "data_type": "VARCHAR(1000)", "nullable": false }, { "name": "LOG_LEVEL", "data_type": "VARCHAR(20)", "nullable": false }, { "name": "CREATED_AT", "data_type": "TIMESTAMP_NTZ(9)", "nullable": false } ], "rows": [ { "values": { "LOG_ID": 1, "LOG_MESSAGE": "Application started successfully", "LOG_LEVEL": "INFO", "CREATED_AT": "2024-01-15T08:00:00" } }, { "values": { "LOG_ID": 2, "LOG_MESSAGE": "Database connection established", "LOG_LEVEL": "INFO", "CREATED_AT": "2024-01-15T08:00:05" } }, { "values": { "LOG_ID": 3, "LOG_MESSAGE": "Warning: High memory usage detected", "LOG_LEVEL": "WARNING", "CREATED_AT": "2024-01-15T10:30:00" } } ] } ] } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/snowflake/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export snowflake sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_snowflake__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_SnowflakeData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/monday/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize monday sandbox with data", "description": "Initialize the sandbox with monday-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_monday__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/MondayData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "workspaces": [ { "name": "Product Development", "kind": "open", "description": "Main workspace for product development and engineering teams" }, { "name": "Marketing & Sales", "kind": "open", "description": "Workspace for marketing campaigns and sales tracking" } ], "boards": [ { "name": "Sprint Planning Q1", "description": "Agile sprint planning and task tracking for Q1 2024", "board_kind": "public", "groups": [ { "title": "Backlog", "color": "#808080", "items": [ { "name": "Research new authentication methods", "column_values": { "status": "Not Started", "priority": "Low" }, "updates": [ { "body": "Need to evaluate OAuth 2.0, SAML, and WebAuthn" } ] } ] }, { "title": "Sprint 1 - Foundation", "color": "#0086c0", "items": [ { "name": "Set up project repository", "column_values": { "status": "Done", "priority": "High" }, "updates": [ { "body": "Repository created on GitHub with proper branch protection rules" } ], "subitems": [ { "name": "Initialize Git repository" } ] }, { "name": "Implement user authentication", "column_values": { "status": "Working on it", "priority": "Critical" }, "updates": [ { "body": "Started with JWT token implementation" } ], "subitems": [ { "name": "Implement JWT authentication" } ] } ] }, { "title": "Completed", "color": "#00d647", "items": [ { "name": "Initial project kickoff", "column_values": { "status": "Done", "priority": "High" }, "updates": [ { "body": "Successful kickoff meeting with all stakeholders" } ] } ] } ] }, { "name": "Bug Tracker", "description": "Track and manage software bugs and issues", "board_kind": "public", "groups": [ { "title": "New Bugs", "color": "#e44258", "items": [ { "name": "Login fails on Safari browser", "column_values": { "status": "New", "priority": "Critical", "severity": "High" }, "updates": [ { "body": "Reported by 3 users, reproducible on Safari 17+" } ] } ] }, { "title": "In Progress", "color": "#fdab3d", "items": [ { "name": "API timeout on large data requests", "column_values": { "status": "Investigating", "priority": "High", "severity": "Medium" }, "updates": [ { "body": "Identified slow database query as root cause" } ], "subitems": [ { "name": "Add database indexes" } ] } ] }, { "title": "Closed", "color": "#c4c4c4", "items": [ { "name": "Dark mode toggle not working", "column_values": { "status": "Closed", "priority": "Medium", "severity": "Low" }, "updates": [ { "body": "Fixed in version 1.2.0" } ] } ] } ] }, { "name": "Marketing Campaigns 2024", "description": "Marketing campaign planning and execution", "board_kind": "public", "groups": [ { "title": "Q1 Campaigns", "color": "#9cd326", "items": [ { "name": "Spring Product Launch", "column_values": { "status": "In Progress", "budget": "$50000" }, "updates": [ { "body": "Landing page design completed" } ], "subitems": [ { "name": "Create landing page" } ] } ] }, { "title": "Q2 Planning", "color": "#037f4c", "items": [ { "name": "Summer Webinar Series", "column_values": { "status": "Planning", "budget": "$25000" }, "updates": [ { "body": "Brainstorming topics with product team" } ] } ] } ] }, { "name": "Customer Success", "description": "Customer onboarding and support initiatives", "board_kind": "public", "groups": [ { "title": "Enterprise Clients", "color": "#784bd1", "items": [ { "name": "Acme Corp - Onboarding", "column_values": { "status": "In Progress", "account_value": "$250000" }, "updates": [ { "body": "Kickoff call completed, 50 user licenses purchased" } ], "subitems": [ { "name": "Initial training session" } ] } ] }, { "title": "SMB Clients", "color": "#579bfc", "items": [ { "name": "Digital Agency Co - Support", "column_values": { "status": "Active", "account_value": "$5000" }, "updates": [ { "body": "Monthly check-in call completed" } ] } ] } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/monday/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export monday sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_monday__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_MondayData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/motion/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize motion sandbox with data", "description": "Initialize the sandbox with motion-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_motion__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/MotionData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "workspaces": [ { "name": "Engineering Team", "projects": [ { "name": "Product Launch Q1", "description": "Launch new product features for Q1 2024", "due_date": "2024-03-31T23:59:59.000Z", "priority": "HIGH", "labels": [ "product", "launch", "q1" ], "tasks": [ { "name": "Design landing page mockups", "description": "Create high-fidelity mockups for the new landing page using Figma", "status": "COMPLETED", "priority": "HIGH", "due_date": "2024-01-15T17:00:00.000Z", "duration": 240, "labels": [ "design", "frontend" ], "comments": [ { "text": "First draft of mockups is ready for review" }, { "text": "Looks great! Just need to adjust the color scheme" }, { "text": "Final version approved by the team" } ] }, { "name": "Implement authentication flow", "description": "Build secure authentication with OAuth2 and JWT tokens", "status": "IN_PROGRESS", "priority": "ASAP", "due_date": "2024-01-20T17:00:00.000Z", "duration": 480, "labels": [ "backend", "security" ], "comments": [ { "text": "Starting with OAuth2 provider integration" }, { "text": "Token refresh logic implemented and tested" } ] }, { "name": "Set up CI/CD pipeline", "description": "Configure automated testing and deployment workflows", "status": "TODO", "priority": "HIGH", "due_date": "2024-01-25T17:00:00.000Z", "duration": 180, "labels": [ "devops", "infrastructure" ], "comments": [ { "text": "Need to decide between GitHub Actions and CircleCI" } ] }, { "name": "Write API documentation", "description": "Document all REST API endpoints with examples", "status": "TODO", "priority": "MEDIUM", "due_date": "2024-01-30T17:00:00.000Z", "duration": 120, "labels": [ "documentation", "api" ], "comments": [] } ] }, { "name": "Infrastructure Upgrade", "description": "Migrate to new cloud infrastructure", "due_date": "2024-02-28T23:59:59.000Z", "priority": "MEDIUM", "labels": [ "infrastructure", "migration" ], "tasks": [ { "name": "Audit current infrastructure", "description": "Document all current services and dependencies", "status": "COMPLETED", "priority": "HIGH", "due_date": "2024-01-10T17:00:00.000Z", "duration": 180, "labels": [ "infrastructure", "audit" ], "comments": [ { "text": "Audit complete - found 23 services to migrate" } ] }, { "name": "Set up Kubernetes cluster", "description": "Configure production-ready K8s cluster with monitoring", "status": "IN_PROGRESS", "priority": "HIGH", "due_date": "2024-01-22T17:00:00.000Z", "duration": 360, "labels": [ "kubernetes", "devops" ], "comments": [ { "text": "Cluster is up, working on monitoring setup" }, { "text": "Prometheus and Grafana configured" } ] }, { "name": "Migrate database", "description": "Move production database to new infrastructure with zero downtime", "status": "TODO", "priority": "ASAP", "due_date": "2024-02-01T17:00:00.000Z", "duration": 480, "labels": [ "database", "migration" ], "comments": [ { "text": "Need to plan maintenance window with stakeholders" } ] } ] }, { "name": "Technical Debt Reduction", "description": "Address accumulated technical debt", "priority": "LOW", "labels": [ "refactoring", "maintenance" ], "tasks": [ { "name": "Refactor legacy authentication module", "description": "Update old auth code to use modern patterns", "status": "TODO", "priority": "MEDIUM", "duration": 240, "labels": [ "refactoring", "backend" ], "comments": [ { "text": "This has been on the backlog for 6 months" }, { "text": "Let's prioritize this after the Q1 launch" } ] }, { "name": "Update dependencies", "description": "Update all outdated npm and pip packages", "status": "TODO", "priority": "LOW", "duration": 90, "labels": [ "maintenance", "dependencies" ], "comments": [] } ] } ] }, { "name": "Marketing Team", "projects": [ { "name": "Q1 Content Strategy", "description": "Plan and execute content marketing for Q1", "due_date": "2024-03-31T23:59:59.000Z", "priority": "HIGH", "labels": [ "marketing", "content" ], "tasks": [ { "name": "Create blog post calendar", "description": "Plan blog posts for January through March", "status": "COMPLETED", "priority": "HIGH", "due_date": "2024-01-05T17:00:00.000Z", "duration": 120, "labels": [ "content", "planning" ], "comments": [ { "text": "Calendar created with 12 blog post ideas" }, { "text": "Topics approved by leadership team" } ] }, { "name": "Write launch announcement", "description": "Draft product launch blog post and press release", "status": "IN_PROGRESS", "priority": "ASAP", "due_date": "2024-01-18T17:00:00.000Z", "duration": 180, "labels": [ "content", "launch" ], "comments": [ { "text": "First draft is ready for review" } ] }, { "name": "Design social media graphics", "description": "Create graphics for launch announcement across all platforms", "status": "TODO", "priority": "HIGH", "due_date": "2024-01-20T17:00:00.000Z", "duration": 150, "labels": [ "design", "social-media" ], "comments": [] }, { "name": "Schedule email campaign", "description": "Set up automated email sequence for product launch", "status": "TODO", "priority": "MEDIUM", "due_date": "2024-01-25T17:00:00.000Z", "duration": 90, "labels": [ "email", "automation" ], "comments": [ { "text": "Need to segment the audience first" }, { "text": "Audience segmentation complete" } ] } ] }, { "name": "Brand Refresh", "description": "Update company branding and visual identity", "priority": "MEDIUM", "labels": [ "branding", "design" ], "tasks": [ { "name": "Research competitor branding", "description": "Analyze competitor brand positioning and visual identity", "status": "COMPLETED", "priority": "MEDIUM", "duration": 180, "labels": [ "research", "competitive-analysis" ], "comments": [ { "text": "Analyzed 10 key competitors" } ] }, { "name": "Create new logo concepts", "description": "Design 3-5 logo variations for review", "status": "IN_PROGRESS", "priority": "MEDIUM", "duration": 240, "labels": [ "design", "logo" ], "comments": [ { "text": "Working on the third concept now" } ] } ] } ] }, { "name": "Product Team", "projects": [ { "name": "User Research Initiative", "description": "Conduct user research to inform product decisions", "due_date": "2024-02-15T23:59:59.000Z", "priority": "HIGH", "labels": [ "research", "ux" ], "tasks": [ { "name": "Design user survey", "description": "Create comprehensive survey to gather user feedback", "status": "COMPLETED", "priority": "HIGH", "due_date": "2024-01-08T17:00:00.000Z", "duration": 120, "labels": [ "research", "survey" ], "comments": [ { "text": "Survey has 25 questions covering all key areas" }, { "text": "Survey reviewed and approved" } ] }, { "name": "Recruit interview participants", "description": "Find 15-20 users for in-depth interviews", "status": "IN_PROGRESS", "priority": "HIGH", "due_date": "2024-01-15T17:00:00.000Z", "duration": 90, "labels": [ "research", "recruitment" ], "comments": [ { "text": "12 participants confirmed so far" } ] }, { "name": "Conduct user interviews", "description": "Interview users to understand pain points and needs", "status": "TODO", "priority": "HIGH", "due_date": "2024-01-30T17:00:00.000Z", "duration": 600, "labels": [ "research", "interviews" ], "comments": [] }, { "name": "Analyze research findings", "description": "Synthesize research data and create insights report", "status": "TODO", "priority": "MEDIUM", "due_date": "2024-02-10T17:00:00.000Z", "duration": 240, "labels": [ "research", "analysis" ], "comments": [ { "text": "Will use Dovetail for analysis" } ] } ] } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/motion/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export motion sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_motion__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_MotionData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/postgres/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize postgres sandbox with data", "description": "Initialize the sandbox with postgres-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_postgres__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/PostgresData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "schemas": [ { "name": "public", "tables": [ { "name": "users", "columns": { "id": "serial PRIMARY KEY", "username": "varchar(50) NOT NULL", "email": "varchar(100) NOT NULL UNIQUE", "created_at": "timestamp DEFAULT CURRENT_TIMESTAMP", "is_active": "boolean DEFAULT true" }, "rows": [ { "id": 1, "username": "john_doe", "email": "john@example.com", "created_at": "2025-01-15 10:30:00", "is_active": true }, { "id": 2, "username": "jane_smith", "email": "jane@example.com", "created_at": "2025-01-16 14:20:00", "is_active": true }, { "id": 3, "username": "bob_wilson", "email": "bob@example.com", "created_at": "2025-01-17 09:15:00", "is_active": false } ] }, { "name": "posts", "columns": { "id": "serial PRIMARY KEY", "user_id": "integer REFERENCES users(id)", "title": "varchar(200) NOT NULL", "content": "text", "view_count": "integer DEFAULT 0", "published_at": "timestamp" }, "rows": [ { "id": 1, "user_id": 1, "title": "Getting Started with PostgreSQL", "content": "PostgreSQL is a powerful open-source relational database...", "view_count": 150, "published_at": "2025-01-18 08:00:00" }, { "id": 2, "user_id": 1, "title": "Advanced SQL Queries", "content": "Learn how to write complex queries with joins and subqueries...", "view_count": 89, "published_at": "2025-01-19 10:30:00" }, { "id": 3, "user_id": 2, "title": "Database Optimization Tips", "content": "Improve your database performance with these proven techniques...", "view_count": 234, "published_at": "2025-01-20 15:45:00" } ] }, { "name": "comments", "columns": { "id": "serial PRIMARY KEY", "post_id": "integer REFERENCES posts(id)", "user_id": "integer REFERENCES users(id)", "comment_text": "text NOT NULL", "created_at": "timestamp DEFAULT CURRENT_TIMESTAMP" }, "rows": [ { "id": 1, "post_id": 1, "user_id": 2, "comment_text": "Great article! Very helpful for beginners.", "created_at": "2025-01-18 10:30:00" }, { "id": 2, "post_id": 1, "user_id": 3, "comment_text": "Thanks for sharing this resource.", "created_at": "2025-01-18 12:15:00" }, { "id": 3, "post_id": 2, "user_id": 2, "comment_text": "The section on JOIN operations was particularly useful.", "created_at": "2025-01-19 14:20:00" } ] } ] }, { "name": "analytics", "tables": [ { "name": "page_views", "columns": { "id": "serial PRIMARY KEY", "page_url": "varchar(255) NOT NULL", "visitor_ip": "inet", "user_agent": "text", "visit_timestamp": "timestamp DEFAULT CURRENT_TIMESTAMP" }, "rows": [ { "id": 1, "page_url": "/posts/1", "visitor_ip": "192.168.1.100", "user_agent": "Mozilla/5.0", "visit_timestamp": "2025-01-21 09:00:00" }, { "id": 2, "page_url": "/posts/2", "visitor_ip": "192.168.1.101", "user_agent": "Chrome/120.0", "visit_timestamp": "2025-01-21 09:15:00" } ] }, { "name": "metrics", "columns": { "id": "serial PRIMARY KEY", "metric_name": "varchar(100) NOT NULL", "metric_value": "numeric(10,2)", "recorded_at": "timestamp DEFAULT CURRENT_TIMESTAMP" }, "rows": [ { "id": 1, "metric_name": "total_users", "metric_value": 3, "recorded_at": "2025-01-22 00:00:00" }, { "id": 2, "metric_name": "total_posts", "metric_value": 3, "recorded_at": "2025-01-22 00:00:00" }, { "id": 3, "metric_name": "avg_views_per_post", "metric_value": 157.67, "recorded_at": "2025-01-22 00:00:00" } ] } ] }, { "name": "inventory", "tables": [ { "name": "products", "columns": { "id": "serial PRIMARY KEY", "product_name": "varchar(100) NOT NULL", "sku": "varchar(50) UNIQUE", "price": "decimal(10,2) NOT NULL", "stock_quantity": "integer DEFAULT 0", "last_updated": "timestamp DEFAULT CURRENT_TIMESTAMP" }, "rows": [ { "id": 1, "product_name": "Laptop Pro 15", "sku": "LAPTOP-001", "price": 1299.99, "stock_quantity": 45, "last_updated": "2025-01-20 08:00:00" }, { "id": 2, "product_name": "Wireless Mouse", "sku": "MOUSE-002", "price": 29.99, "stock_quantity": 200, "last_updated": "2025-01-20 08:00:00" }, { "id": 3, "product_name": "USB-C Cable", "sku": "CABLE-003", "price": 12.99, "stock_quantity": 500, "last_updated": "2025-01-20 08:00:00" } ] } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/postgres/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export postgres sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_postgres__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_PostgresData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/mongodb/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize mongodb sandbox with data", "description": "Initialize the sandbox with mongodb-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_mongodb__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/MongoData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "databases": [ { "name": "ecommerce", "collections": [ { "name": "users", "documents": [ { "name": "Alice Smith", "email": "alice@example.com", "role": "admin", "created_at": "2023-01-01T10:00:00Z" }, { "name": "Bob Jones", "email": "bob@example.com", "role": "customer", "created_at": "2023-01-02T11:30:00Z" } ], "indexes": [ { "name": "email_unique", "keys": [ [ "email", 1 ] ], "options": { "unique": true } } ] }, { "name": "products", "documents": [ { "sku": "PROD-001", "name": "Wireless Headphones", "price": 99.99, "category": "Electronics", "stock": 50 }, { "sku": "PROD-002", "name": "Running Shoes", "price": 79.99, "category": "Sports", "stock": 100 } ], "indexes": [ { "name": "sku_1", "keys": [ [ "sku", 1 ] ], "options": { "unique": true } }, { "name": "category_price_idx", "keys": [ [ "category", 1 ], [ "price", -1 ] ], "options": {} } ] }, { "name": "orders", "documents": [ { "order_id": "ORD-1001", "user_email": "bob@example.com", "total": 99.99, "items": [ { "sku": "PROD-001", "quantity": 1, "price": 99.99 } ], "status": "completed" } ], "indexes": [] } ] }, { "name": "analytics", "collections": [ { "name": "page_views", "documents": [ { "path": "/home", "visitor_id": "v1", "timestamp": "2023-10-01T08:00:00Z" }, { "path": "/products", "visitor_id": "v1", "timestamp": "2023-10-01T08:05:00Z" }, { "path": "/home", "visitor_id": "v2", "timestamp": "2023-10-01T09:00:00Z" } ], "indexes": [] } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/mongodb/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export mongodb sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_mongodb__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_MongoData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/youtube/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize youtube sandbox with data", "description": "Initialize the sandbox with youtube-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_youtube__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/YouTubeData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "playlists": [ { "title": "AI Engineering Fundamentals", "description": "A comprehensive series covering core concepts in AI engineering—from neural networks to production deployment. Perfect for developers looking to build real-world AI systems.", "privacy_status": "public", "items": [ { "video_id": "dQw4w9WgXcQ", "title": "What is an LLM? Large Language Models Explained", "position": 0 }, { "video_id": "jNQXAC9IVRw", "title": "Vector Databases: The Foundation of RAG Systems", "position": 1 }, { "video_id": "9bZkp7q19f0", "title": "Fine-Tuning vs RAG: When to Use What", "position": 2 }, { "video_id": "kJQP7kiw5Fk", "title": "Building Production AI Pipelines with LangChain", "position": 3 } ] }, { "title": "Developer Productivity Hacks", "description": "Quick tips and workflows to 10x your development speed. Keyboard shortcuts, CLI tools, and automation scripts that actually work.", "privacy_status": "public", "items": [ { "video_id": "JGwWNGJkkx8", "title": "Terminal Workflows That Will Change Your Life", "position": 0 }, { "video_id": "OPf0YbXqDm0", "title": "Git Aliases and Workflows for Teams", "position": 1 }, { "video_id": "0ksZWGaJKnY", "title": "Cursor IDE: AI-Powered Coding Deep Dive", "position": 2 } ] }, { "title": "System Design Interviews", "description": "Real system design problems broken down step by step. Designed for senior engineering interviews at FAANG and top startups.", "privacy_status": "public", "items": [ { "video_id": "F4neLJQC1_E", "title": "Design a URL Shortener (Complete Walkthrough)", "position": 0 }, { "video_id": "fRh_vgS2dFE", "title": "Design Twitter's Timeline Feed", "position": 1 }, { "video_id": "ALZHF5UqnU4", "title": "Design a Rate Limiter", "position": 2 }, { "video_id": "YQHsXMglC9A", "title": "Design Uber's Ride Matching System", "position": 3 }, { "video_id": "PapZ9gZ9O6A", "title": "Design a Distributed Message Queue", "position": 4 } ] }, { "title": "Work in Progress", "description": "Drafts and upcoming content. Not ready for public viewing yet.", "privacy_status": "private", "items": [ { "video_id": "CevxZvSJLk8", "title": "[DRAFT] Kubernetes for AI Workloads", "position": 0 } ] }, { "title": "Conference Talks 2025", "description": "Recordings of my talks at various tech conferences this year.", "privacy_status": "unlisted", "items": [ { "video_id": "pB0W8uty0aA", "title": "The Future of AI Agents (KubeCon 2025)", "position": 0 }, { "video_id": "nfWlot6h_JM", "title": "Scaling RAG to 1B Documents (AI Summit)", "position": 1 } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/youtube/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export youtube sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_youtube__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_YouTubeData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/googleworkspaceatlas/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize googleworkspaceatlas sandbox with data", "description": "Initialize the sandbox with googleworkspaceatlas-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_googleworkspaceatlas__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/GoogleWorkspaceAtlasData-Input" }, { "type": "null" } ], "title": "Request Body" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/googleworkspaceatlas/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export googleworkspaceatlas sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_googleworkspaceatlas__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_GoogleWorkspaceAtlasData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/huggingface/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize huggingface sandbox with data", "description": "Initialize the sandbox with huggingface-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_huggingface__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/HuggingFaceData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "repos": [ { "name": "sandbox-test-model", "repo_type": "model", "description": "A test model repository for sandbox testing", "private": false, "files": [ { "path": "README.md", "content": "# Sandbox Test Model\n\nThis is a test model repository created by the HuggingFace sandbox.\n\n## Model Details\n- Architecture: Transformer\n- Parameters: 125M\n- Training Data: Synthetic benchmark data\n\n## Usage\n```python\nfrom transformers import AutoModel\nmodel = AutoModel.from_pretrained(\"sandbox-test-model\")\n```" }, { "path": "config.json", "content": "{\n \"architectures\": [\"BertForSequenceClassification\"],\n \"hidden_size\": 768,\n \"num_attention_heads\": 12,\n \"num_hidden_layers\": 12,\n \"vocab_size\": 30522,\n \"max_position_embeddings\": 512,\n \"type_vocab_size\": 2\n}" }, { "path": "tokenizer_config.json", "content": "{\n \"do_lower_case\": true,\n \"model_max_length\": 512,\n \"padding_side\": \"right\",\n \"tokenizer_class\": \"BertTokenizer\"\n}" } ] }, { "name": "sandbox-test-dataset", "repo_type": "dataset", "description": "A test dataset repository for sandbox testing", "private": false, "files": [ { "path": "README.md", "content": "# Sandbox Test Dataset\n\nA small test dataset created by the HuggingFace sandbox.\n\n## Dataset Description\n- Task: Text classification\n- Size: 3 samples\n- Format: CSV" }, { "path": "data.csv", "content": "text,label\n\"The model performed exceptionally well on all benchmarks.\",positive\n\"Training failed due to memory constraints.\",negative\n\"Results were mixed across different evaluation metrics.\",neutral" } ] } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/huggingface/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export huggingface sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_huggingface__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_HuggingFaceData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/mock_notion/{sandbox_id}/initialize": { "post": { "tags": [ "sandbox" ], "summary": "Initialize mock_notion sandbox with data", "description": "Initialize the sandbox with mock_notion-specific data following the defined schema.", "operationId": "initialize_sandbox_sandbox_mock_notion__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/MockNotionData" }, { "type": "null" } ], "title": "Request Body" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/sandbox/mock_notion/{sandbox_id}/dump": { "get": { "tags": [ "sandbox" ], "summary": "Export mock_notion sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_sandbox_mock_notion__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_MockNotionData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox": { "get": { "tags": [ "local-sandbox" ], "summary": "List local sandboxes", "description": "Lists all active local sandbox environments owned by the user.", "operationId": "list_local_sandboxes_local_sandbox_get", "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ListLocalSandboxesResponse" } } } } }, "security": [ { "HTTPBearer": [] } ] }, "post": { "tags": [ "local-sandbox" ], "summary": "Acquire a local sandbox", "description": "Initializes a specialized Virtual Machine environment (Local Sandbox) that hosts multiple interconnected MCP servers. Optionally specify a benchmark (e.g., 'Toolathlon') to configure the sandbox. IMPORTANT: The benchmark parameter may affect BOTH (1) the initial data environment (e.g., preloaded data or pre-configured state for supported servers) AND (2) the MCP server implementation itself — some servers may be routed to a benchmark-specific MCP server with potentially different tools or behaviors.", "operationId": "acquire_local_sandbox_local_sandbox_post", "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AcquireLocalSandboxRequest" } } }, "required": true }, "responses": { "201": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AcquireLocalSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } }, "security": [ { "HTTPBearer": [] } ] } }, "/local-sandbox/{local_sandbox_id}": { "delete": { "tags": [ "local-sandbox" ], "summary": "Release a local sandbox", "description": "Releases the local sandbox VM and all associated servers, cleaning up the shared environment.", "operationId": "release_local_sandbox_local_sandbox__local_sandbox_id__delete", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "local_sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The ID of the local sandbox to release", "title": "Local Sandbox Id" }, "description": "The ID of the local sandbox to release" }, { "name": "is_ttl", "in": "query", "required": false, "schema": { "type": "boolean", "description": "Flag indicating if this is a TTL release task", "default": false, "title": "Is Ttl" }, "description": "Flag indicating if this is a TTL release task" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } }, "get": { "tags": [ "local-sandbox" ], "summary": "Get local sandbox details", "description": "Retrieves details about a local sandbox environment, including its status and all running servers.", "operationId": "get_local_sandbox_local_sandbox__local_sandbox_id__get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "local_sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The ID of the local sandbox to retrieve", "title": "Local Sandbox Id" }, "description": "The ID of the local sandbox to retrieve" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocalSandboxInfo" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/{local_sandbox_id}/reset": { "post": { "tags": [ "local-sandbox" ], "summary": "Reset local sandbox to initial state", "description": "Resets the state of the local sandbox VM and all its servers to their initial state.", "operationId": "reset_local_sandbox_local_sandbox__local_sandbox_id__reset_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "local_sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The ID of the local sandbox to reset", "title": "Local Sandbox Id" }, "description": "The ID of the local sandbox to reset" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": {} } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/{local_sandbox_id}/upload-url": { "post": { "tags": [ "local-sandbox" ], "summary": "Get URL to upload your data", "description": "Generates a signed URL to upload a `tar.gz` archive containing your workspace files. Once uploaded, use the `/initialize` endpoint to unpack it into the sandbox.", "operationId": "get_upload_url_local_sandbox__local_sandbox_id__upload_url_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "local_sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The local sandbox identifier", "title": "Local Sandbox Id" }, "description": "The local sandbox identifier" }, { "name": "region", "in": "query", "required": false, "schema": { "$ref": "#/components/schemas/GCSRegion", "description": "GCS bucket region for the signed URL. Use 'asia' for users in China/Asia to upload to a nearby bucket (lower latency). The file is accessible from any region over Google's private backbone. Defaults to 'us'.", "default": "us" }, "description": "GCS bucket region for the signed URL. Use 'asia' for users in China/Asia to upload to a nearby bucket (lower latency). The file is accessible from any region over Google's private backbone. Defaults to 'us'." } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UploadUrlResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/{local_sandbox_id}/initialize": { "post": { "tags": [ "local-sandbox" ], "summary": "Initialize sandbox from your uploaded data", "description": "Extracts the uploaded `tar.gz` archive into the sandbox workspace. This must be called after successfully uploading the file using the URL from `/upload-url`.", "operationId": "initialize_local_sandbox_local_sandbox__local_sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "local_sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The local sandbox identifier", "title": "Local Sandbox Id" }, "description": "The local sandbox identifier" }, { "name": "region", "in": "query", "required": false, "schema": { "$ref": "#/components/schemas/GCSRegion", "description": "GCS bucket region where the archive was uploaded. Must match the region used in the `/upload-url` call. Defaults to 'us'.", "default": "us" }, "description": "GCS bucket region where the archive was uploaded. Must match the region used in the `/upload-url` call. Defaults to 'us'." } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/{local_sandbox_id}/dump": { "get": { "tags": [ "local-sandbox" ], "summary": "Download sandbox data", "description": "Creates a `tar.gz` archive of the current workspace and provides a temporary download URL. Useful for saving your work or exporting the sandbox state.", "operationId": "dump_local_sandbox_local_sandbox__local_sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "local_sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The local sandbox identifier", "title": "Local Sandbox Id" }, "description": "The local sandbox identifier" }, { "name": "region", "in": "query", "required": false, "schema": { "$ref": "#/components/schemas/GCSRegion", "description": "GCS bucket region for the download URL. Use 'asia' for users in China/Asia for faster downloads from a nearby bucket. Defaults to 'us'.", "default": "us" }, "description": "GCS bucket region for the download URL. Use 'asia' for users in China/Asia for faster downloads from a nearby bucket. Defaults to 'us'." } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpUrlResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/{local_sandbox_id}/execution-upload-url": { "post": { "tags": [ "local-sandbox" ], "summary": "Get a pre-signed URL to upload an execution archive", "description": "Returns a pre-signed GCS PUT URL so the caller can upload a tar.gz archive containing `main.py`, `requirements.txt`, etc. for later execution.", "operationId": "get_execution_upload_url_local_sandbox__local_sandbox_id__execution_upload_url_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "local_sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The local sandbox identifier", "title": "Local Sandbox Id" }, "description": "The local sandbox identifier" }, { "name": "region", "in": "query", "required": false, "schema": { "$ref": "#/components/schemas/GCSRegion", "description": "GCS bucket region for the signed URL. Defaults to 'us'.", "default": "us" }, "description": "GCS bucket region for the signed URL. Defaults to 'us'." } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutionUploadUrlRequest" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutionUploadUrlResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/{local_sandbox_id}/execute": { "post": { "tags": [ "local-sandbox" ], "summary": "Execute a script inside the sandbox", "description": "Computes the internal GCS archive URL from the sandbox ID and execution name, then triggers the sandbox executor to download, install dependencies, and execute `main.py`. The execution runs in the background — poll `/execution-logs` to track progress. The archive must first be uploaded via `/execution-upload-url`.", "operationId": "execute_in_sandbox_local_sandbox__local_sandbox_id__execute_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "local_sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The local sandbox identifier", "title": "Local Sandbox Id" }, "description": "The local sandbox identifier" }, { "name": "region", "in": "query", "required": false, "schema": { "$ref": "#/components/schemas/GCSRegion", "description": "GCS bucket region where the archive was uploaded. Defaults to 'us'.", "default": "us" }, "description": "GCS bucket region where the archive was uploaded. Defaults to 'us'." } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecuteRequest" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecuteResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/{local_sandbox_id}/execution-status": { "get": { "tags": [ "local-sandbox" ], "summary": "Get execution status", "description": "Returns the current status of an execution: pending, running, completed, or failed.", "operationId": "get_execution_status_local_sandbox__local_sandbox_id__execution_status_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "local_sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The local sandbox identifier", "title": "Local Sandbox Id" }, "description": "The local sandbox identifier" }, { "name": "execution_name", "in": "query", "required": true, "schema": { "type": "string", "description": "Name of the execution to check status for", "title": "Execution Name" }, "description": "Name of the execution to check status for" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutionStatusResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/{local_sandbox_id}/execution-logs": { "get": { "tags": [ "local-sandbox" ], "summary": "Poll execution logs", "description": "Returns execution status and new log content since the provided byte cursor. Call repeatedly with the returned cursor to stream logs.", "operationId": "get_execution_logs_local_sandbox__local_sandbox_id__execution_logs_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "local_sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The local sandbox identifier", "title": "Local Sandbox Id" }, "description": "The local sandbox identifier" }, { "name": "execution_name", "in": "query", "required": true, "schema": { "type": "string", "description": "Name of the execution to get logs for", "title": "Execution Name" }, "description": "Name of the execution to get logs for" }, { "name": "cursor", "in": "query", "required": false, "schema": { "type": "integer", "minimum": 0, "description": "Byte offset to start reading from", "default": 0, "title": "Cursor" }, "description": "Byte offset to start reading from" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExecutionLogsResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/{local_sandbox_id}/export-artifacts": { "post": { "tags": [ "local-sandbox" ], "summary": "Export execution artifacts", "description": "Zips the execution directory and uploads it to GCS. Returns a signed download URL for the exported artifacts.", "operationId": "export_artifacts_local_sandbox__local_sandbox_id__export_artifacts_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "local_sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The local sandbox identifier", "title": "Local Sandbox Id" }, "description": "The local sandbox identifier" }, { "name": "region", "in": "query", "required": false, "schema": { "$ref": "#/components/schemas/GCSRegion", "description": "GCS bucket region for the signed URL. Defaults to 'us'.", "default": "us" }, "description": "GCS bucket region for the signed URL. Defaults to 'us'." } ], "requestBody": { "required": true, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExportArtifactsRequest" } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ExportArtifactsResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/google_cloud/{sandbox_id}/initialize": { "post": { "tags": [ "local-sandbox" ], "summary": "Initialize google_cloud sandbox with data", "description": "Initialize the sandbox with google_cloud-specific data following the defined schema.", "operationId": "initialize_sandbox_local_sandbox_google_cloud__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/GoogleCloudData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "datasets": [ { "id": "sales_analytics", "description": "Sales and revenue analytics data warehouse", "location": "US" }, { "id": "customer_data", "description": "Customer information and interactions", "location": "US" }, { "id": "product_catalog", "description": "Product inventory and catalog data", "location": "EU" } ], "tables": [ { "dataset_id": "sales_analytics", "id": "daily_sales", "description": "Daily sales transactions", "fields": [ { "name": "transaction_id", "type": "STRING", "mode": "REQUIRED", "description": "Unique transaction identifier" }, { "name": "sale_date", "type": "DATE", "mode": "REQUIRED", "description": "Date of sale" }, { "name": "product_id", "type": "STRING", "mode": "REQUIRED", "description": "Product identifier" }, { "name": "quantity", "type": "INTEGER", "mode": "REQUIRED", "description": "Quantity sold" }, { "name": "unit_price", "type": "FLOAT", "mode": "REQUIRED", "description": "Price per unit" }, { "name": "total_amount", "type": "FLOAT", "mode": "REQUIRED", "description": "Total sale amount" }, { "name": "region", "type": "STRING", "mode": "NULLABLE", "description": "Sales region" } ] }, { "dataset_id": "sales_analytics", "id": "monthly_revenue", "description": "Monthly revenue aggregation", "fields": [ { "name": "month", "type": "DATE", "mode": "REQUIRED", "description": "First day of the month" }, { "name": "region", "type": "STRING", "mode": "REQUIRED", "description": "Sales region" }, { "name": "total_revenue", "type": "FLOAT", "mode": "REQUIRED", "description": "Total revenue for the month" }, { "name": "transaction_count", "type": "INTEGER", "mode": "REQUIRED", "description": "Number of transactions" }, { "name": "avg_order_value", "type": "FLOAT", "mode": "NULLABLE", "description": "Average order value" } ] }, { "dataset_id": "customer_data", "id": "customers", "description": "Customer master data", "fields": [ { "name": "customer_id", "type": "STRING", "mode": "REQUIRED", "description": "Unique customer identifier" }, { "name": "email", "type": "STRING", "mode": "REQUIRED", "description": "Customer email address" }, { "name": "name", "type": "STRING", "mode": "REQUIRED", "description": "Customer full name" }, { "name": "created_at", "type": "TIMESTAMP", "mode": "REQUIRED", "description": "Account creation timestamp" }, { "name": "tier", "type": "STRING", "mode": "NULLABLE", "description": "Customer tier (bronze, silver, gold)" }, { "name": "lifetime_value", "type": "FLOAT", "mode": "NULLABLE", "description": "Customer lifetime value" } ] }, { "dataset_id": "product_catalog", "id": "products", "description": "Product catalog", "fields": [ { "name": "product_id", "type": "STRING", "mode": "REQUIRED", "description": "Product identifier" }, { "name": "name", "type": "STRING", "mode": "REQUIRED", "description": "Product name" }, { "name": "category", "type": "STRING", "mode": "REQUIRED", "description": "Product category" }, { "name": "price", "type": "FLOAT", "mode": "REQUIRED", "description": "Current price" }, { "name": "stock_quantity", "type": "INTEGER", "mode": "REQUIRED", "description": "Available stock" }, { "name": "is_active", "type": "BOOLEAN", "mode": "REQUIRED", "description": "Whether product is active" } ] } ], "buckets": [ { "name": "sandbox-data-lake-123", "location": "US", "storage_class": "STANDARD", "versioning_enabled": true, "lifecycle_rules": [ { "action": "Delete", "age_days": 365 } ] }, { "name": "sandbox-exports-123", "location": "US", "storage_class": "STANDARD", "versioning_enabled": false }, { "name": "sandbox-backups-123", "location": "US-EAST1", "storage_class": "NEARLINE", "versioning_enabled": true, "lifecycle_rules": [ { "action": "SetStorageClass", "action_storage_class": "COLDLINE", "age_days": 90 }, { "action": "Delete", "age_days": 730 } ] }, { "name": "sandbox-logs-archive-123", "location": "US", "storage_class": "ARCHIVE", "versioning_enabled": false } ], "objects": [ { "bucket": "sandbox-data-lake-123", "name": "raw/sales/2025/01/daily_sales_20250101.csv", "content_type": "text/csv", "content": "transaction_id,sale_date,product_id,quantity,unit_price,total_amount,region\nTXN001,2025-01-01,PROD001,5,19.99,99.95,North America\nTXN002,2025-01-01,PROD002,3,29.99,89.97,Europe\nTXN003,2025-01-01,PROD001,10,19.99,199.90,Asia Pacific" }, { "bucket": "sandbox-data-lake-123", "name": "raw/sales/2025/01/daily_sales_20250102.csv", "content_type": "text/csv", "content": "transaction_id,sale_date,product_id,quantity,unit_price,total_amount,region\nTXN004,2025-01-02,PROD003,2,49.99,99.98,North America\nTXN005,2025-01-02,PROD001,7,19.99,139.93,Europe\nTXN006,2025-01-02,PROD002,4,29.99,119.96,Asia Pacific" }, { "bucket": "sandbox-data-lake-123", "name": "processed/customers/customer_segments.json", "content_type": "application/json", "content": "{\"segments\": [{\"name\": \"High Value\", \"count\": 1500, \"avgLTV\": 2500}, {\"name\": \"Medium Value\", \"count\": 5000, \"avgLTV\": 800}, {\"name\": \"Low Value\", \"count\": 12000, \"avgLTV\": 150}]}" }, { "bucket": "sandbox-exports-123", "name": "exports/monthly_report_202501.csv", "content_type": "text/csv", "content": "month,total_revenue,total_transactions,avg_order_value\n2025-01,1250000.00,15000,83.33" }, { "bucket": "sandbox-data-lake-123", "name": "config/etl_pipeline_config.yaml", "content_type": "application/x-yaml", "content": "pipeline:\n name: daily_sales_etl\n schedule: \"0 2 * * *\"\n source:\n type: gcs\n bucket: sandbox-data-lake-123\n prefix: raw/sales/\n destination:\n type: bigquery\n dataset: sales_analytics\n table: daily_sales" } ], "log_entries": [ { "log_name": "application-logs", "message": "Application started successfully", "severity": "INFO", "timestamp": "2025-01-15T08:00:00Z", "resource_type": "gce_instance", "resource_labels": { "instance_id": "1234567890", "zone": "us-central1-a" } }, { "log_name": "application-logs", "message": "Database connection established", "severity": "INFO", "timestamp": "2025-01-15T08:00:05Z", "resource_type": "gce_instance", "resource_labels": { "instance_id": "1234567890", "zone": "us-central1-a" } }, { "log_name": "application-logs", "json_data": { "event": "user_login", "user_id": "user_123", "ip_address": "192.168.1.100", "success": true }, "severity": "INFO", "timestamp": "2025-01-15T09:30:00Z", "resource_type": "gce_instance", "resource_labels": { "instance_id": "1234567890", "zone": "us-central1-a" } }, { "log_name": "error-logs", "message": "Failed to process batch: timeout exceeded", "severity": "ERROR", "timestamp": "2025-01-15T14:22:00Z", "resource_type": "cloud_function", "resource_labels": { "function_name": "process_batch", "region": "us-central1" } }, { "log_name": "audit-logs", "json_data": { "action": "resource.create", "resource_type": "storage.bucket", "resource_name": "new-bucket", "actor": "admin@example.com" }, "severity": "NOTICE", "timestamp": "2025-01-15T10:15:00Z", "resource_type": "project" } ], "log_sinks": [ { "name": "bigquery-audit-sink", "filter": "logName:\"cloudaudit.googleapis.com\"", "description": "Export audit logs for analysis" }, { "name": "error-logs-sink", "filter": "severity>=ERROR", "description": "Capture error logs" }, { "name": "all-logs-sink", "description": "Stream all logs for processing" } ], "log_buckets": [ { "name": "app-logs-bucket5", "location": "global", "retention_days": 30, "description": "Bucket for app logs with 30-day retention" }, { "name": "security-logs-bucket5", "location": "us-central1", "retention_days": 365, "description": "Bucket for security logs with 1-year retention" } ], "instances": [ { "name": "web-server-1", "zone": "us-central1-a", "machine_type": "e2-medium", "description": "Primary web server", "labels": { "environment": "production", "team": "web" } }, { "name": "web-server-2", "zone": "us-central1-b", "machine_type": "e2-medium", "description": "Secondary web server", "labels": { "environment": "production", "team": "web" } }, { "name": "database-server", "zone": "us-central1-a", "machine_type": "n2-standard-4", "description": "Main database server", "labels": { "environment": "production", "team": "database" } }, { "name": "dev-instance", "zone": "us-west1-a", "machine_type": "e2-micro", "description": "Development and testing instance", "labels": { "environment": "development", "team": "engineering" } } ] } } } } } }, "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/InitializeSandboxResponse" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/google_cloud/{sandbox_id}/dump": { "get": { "tags": [ "local-sandbox" ], "summary": "Export google_cloud sandbox data", "description": "Export all data from the sandbox in the same format used for initialization.", "operationId": "dump_sandbox_local_sandbox_google_cloud__sandbox_id__dump_get", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" } ], "responses": { "200": { "description": "Successful Response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DumpSandboxResponse_GoogleCloudData_" } } } }, "422": { "description": "Validation Error", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/HTTPValidationError" } } } } } } }, "/local-sandbox/poste_email_toolathlon/{sandbox_id}/initialize": { "post": { "tags": [ "local-sandbox" ], "summary": "Initialize poste_email_toolathlon sandbox with data", "description": "Initialize the sandbox with poste_email_toolathlon-specific data following the defined schema.", "operationId": "initialize_sandbox_local_sandbox_poste_email_toolathlon__sandbox_id__initialize_post", "security": [ { "HTTPBearer": [] } ], "parameters": [ { "name": "sandbox_id", "in": "path", "required": true, "schema": { "type": "string", "description": "The unique sandbox identifier", "title": "Sandbox Id" }, "description": "The unique sandbox identifier" }, { "name": "init_default_data", "in": "query", "required": false, "schema": { "type": "boolean", "description": "If true, use default test data for initialization", "default": false, "title": "Init Default Data" }, "description": "If true, use default test data for initialization" } ], "requestBody": { "content": { "application/json": { "schema": { "anyOf": [ { "$ref": "#/components/schemas/PosteEmailData-Input" }, { "type": "null" } ], "title": "Request Body" }, "examples": { "default": { "summary": "Example initialization data", "value": { "users": { "jsmith@mcp.com": { "emails": [ { "email_id": "1", "subject": "[COML 2025] Camera-ready instructions for accepted papers", "from_addr": "COML 2025Dear Dr. John Smith,
Congratulations on your accepted COML 2025 paper!
The camera-ready submission is due on 2025-09-19 (11:59pm AoE).
", "is_read": false, "is_important": false, "folder": "INBOX", "attachments": [] }, { "email_id": "2", "subject": "[COMLW 2025] Urgent: Camera-Ready Deadline Tomorrow", "from_addr": "COMLW 2025Dear Dr. John Smith,
This is a final reminder that your camera-ready paper for COMLW 2025 is due tomorrow, 2025-09-16 at 23:59 AOE.
", "is_read": false, "is_important": false, "folder": "INBOX", "attachments": [] }, { "email_id": "3", "subject": "[LCFM 2025] Invitation to serve as Reviewer", "from_addr": "LCFM 2025Dear invitee,
You have been nominated by the program chair committee of LCFM 2025 to serve as Reviewer. Reviews are due 2025-09-23 AOE.
", "is_read": false, "is_important": false, "folder": "INBOX", "attachments": [] }, { "email_id": "4", "subject": "[COML 2025] Oral presentation notification", "from_addr": "OpenReviewDear Dr. John Smith,
Your submission Ipsum Lorem is all you need has been selected for an oral presentation at COML 2025!
", "is_read": false, "is_important": false, "folder": "INBOX", "attachments": [] }, { "email_id": "5", "subject": "New citations to your publications", "from_addr": "Google ScholarHi Dr. John Smith,
You have new citations to your publications.
\"Ipsum Lorem is all you need\"
Cited by: Transformer-based Approaches to Lorem Generation - Zhang et al., 2025
Dear Dr. John Smith,
Thank you for registering for COML 2025.
Registration ID: COML2025-REG-8742
Type: Virtual Attendance
Amount: $150 USD
Hi @jsmith,
Your personal access token \"ML-research-token\" will expire on 2025-09-22.
", "is_read": true, "is_important": false, "folder": "INBOX", "attachments": [] }, { "email_id": "8", "subject": "[COML 2025] Camera-ready deadline reminder", "from_addr": "COML 2025Dear Dr. John Smith,
The camera-ready submission deadline is extended to 2025-09-26 (11:59pm AoE).
", "is_read": false, "is_important": false, "folder": "INBOX", "attachments": [] }, { "email_id": "9", "subject": "Re: COML 2025 camera-ready submission", "from_addr": "jsmith@mcp.com", "to_addr": "COML 2025