# Flowra > The all-in-one platform for building AI agents, workflows, and tools. Create powerful AI agents, build complex workflows, and access 20,000+ tools. ## Docs - [API keys](https://docs.flowra.dev/api-keys.md): Create and manage API keys for the Flowra API - [Create auth configuration](https://docs.flowra.dev/api-reference/auth-configs/create-auth-configuration.md): Create an authentication configuration (OAuth or API key) for a toolkit. Workflows and agents can then use this config to connect to the external service (e.g. Slack, CRM). - [Delete auth configuration](https://docs.flowra.dev/api-reference/auth-configs/delete-auth-configuration.md): Remove an auth configuration. It will no longer be available for toolkits or workflows. Any workflows using it may need a new connection. - [Get auth configuration by ID](https://docs.flowra.dev/api-reference/auth-configs/get-auth-configuration-by-id.md): Get details of one auth configuration by ID. Use to inspect provider, scopes, or linked toolkits before using it in a workflow. - [List auth configurations](https://docs.flowra.dev/api-reference/auth-configs/list-auth-configurations.md): List OAuth or API-key auth configurations used by your toolkits (e.g. Slack, Google). Use to see which connections are set up and manage credentials. - [Run code in sandbox](https://docs.flowra.dev/api-reference/code-sandbox/run-code-in-sandbox.md): Run JavaScript or Python code in a secure sandbox with optional input state. Returns a tool-shaped result (output, errors). Use to test scripts or preview tool behavior before saving as a tool. - [Create a new auth link session](https://docs.flowra.dev/api-reference/connected-accounts/create-a-new-auth-link-session.md): Generates a one-time URL to start the OAuth flow. Send your end users to this URL so they can sign in with the provider (e.g. Google, Slack) and connect their account to your project. After they complete the flow, the account appears in the connected accounts list. - [Delete a connected account](https://docs.flowra.dev/api-reference/connected-accounts/delete-a-connected-account.md): Disconnects and removes a connected account. It will no longer be available for workflows or API calls. The user can connect again later by going through the OAuth flow. - [List connected accounts](https://docs.flowra.dev/api-reference/connected-accounts/list-connected-accounts.md): Returns all OAuth-connected accounts (e.g. Google, Slack) linked to your project. Use these when workflows or agents need to act on behalf of a connected user. - [Get external user by username](https://docs.flowra.dev/api-reference/external-users/get-external-user-by-username.md): Get one external user by their username (name) within your project. Returns null if not found. Use to look up a user before assigning them to workflows or resources. - [List external users](https://docs.flowra.dev/api-reference/external-users/list-external-users.md): List end users you have registered for your project (e.g. for multi-tenant apps or when each end user has their own identity). Use to manage or display users in your app. - [Delete file](https://docs.flowra.dev/api-reference/file/delete-file.md): Permanently remove a file. It will no longer be available for download or use in workflows. - [Download file](https://docs.flowra.dev/api-reference/file/download-file.md): Download a file by its ID. Returns the file content with the appropriate content-type. Use your API key in the request. - [Get file type info](https://docs.flowra.dev/api-reference/file/get-file-type-info.md): Returns allowed file extensions and metadata for a given type (e.g. image, document). Use to validate uploads or show users which formats are accepted. - [List files](https://docs.flowra.dev/api-reference/file/list-files.md): List files uploaded to your project with pagination and filters. Use to show a file library or pick a file for use in workflows (e.g. knowledge, attachments). - [List supported file types](https://docs.flowra.dev/api-reference/file/list-supported-file-types.md): List all supported file types and their allowed extensions. Use to build upload forms or validate file types before uploading. - [Serve file by filename](https://docs.flowra.dev/api-reference/file/serve-file-by-filename.md): Serve a file by its stored filename (e.g. for public or signed URLs). Use when you have the filename from upload response. - [Upload a single file](https://docs.flowra.dev/api-reference/file/upload-a-single-file.md): Upload a file (image or document) via multipart form. Pass the file type in the URL path. Returns the file ID to use in other APIs (e.g. knowledge, workflows). - [Cancel run](https://docs.flowra.dev/api-reference/graphify/cancel-run.md): Stop a running thread execution (e.g. when the user clicks stop in the chat). Optionally wait for the run to fully stop or rollback. - [Create thread](https://docs.flowra.dev/api-reference/graphify/create-thread.md): Create a new conversation thread (LangGraph-compatible). Use for chat or agent sessions; each thread has its own history and state. - [Delete thread](https://docs.flowra.dev/api-reference/graphify/delete-thread.md): Permanently delete a thread and its conversation history. It cannot be recovered. - [Generate thread title](https://docs.flowra.dev/api-reference/graphify/generate-thread-title.md): Generate a short title for the thread from its conversation content using AI. Use to display a meaningful title in the thread list. - [Get thread](https://docs.flowra.dev/api-reference/graphify/get-thread.md): Get a thread’s metadata and info. Use to load a conversation before continuing or to show thread details. - [Get thread history](https://docs.flowra.dev/api-reference/graphify/get-thread-history.md): Get the execution history for a thread: past runs, steps, and state snapshots. Use to show a timeline or debug a conversation. - [Get thread state](https://docs.flowra.dev/api-reference/graphify/get-thread-state.md): Get the current state of a thread (e.g. latest messages, checkpoint). Use to resume a conversation or inspect state for debugging. - [Search threads](https://docs.flowra.dev/api-reference/graphify/search-threads.md): Search conversation threads by metadata (e.g. user id, tags). Use to list or filter threads in a chat UI or dashboard. - [Stream thread run](https://docs.flowra.dev/api-reference/graphify/stream-thread-run.md): Run the agent/chat for this thread and stream the response via Server-Sent Events (SSE). Use for real-time chat UIs; events include message deltas and run status. - [Update thread](https://docs.flowra.dev/api-reference/graphify/update-thread.md): Update thread metadata such as title or custom fields. Use to rename a conversation or store tags. - [Delete knowledge collection](https://docs.flowra.dev/api-reference/knowledge/delete-knowledge-collection.md): Delete a knowledge collection and all its chunks - [Get all RAG collections](https://docs.flowra.dev/api-reference/knowledge/get-all-rag-collections.md): Retrieve all knowledge collections for the current project - [Chat with conversation history](https://docs.flowra.dev/api-reference/llm/chat-with-conversation-history.md): Send a list of messages (user/assistant/system) and get the next assistant reply. Use for multi-turn conversations. - [Generate text](https://docs.flowra.dev/api-reference/llm/generate-text.md): Send a prompt and receive generated text from the configured LLM. Use for one-off completions, chat replies, or any task that needs AI-generated text. Supports long prompts. - [List AI models](https://docs.flowra.dev/api-reference/llm/list-ai-models.md): List AI models available for use in workflows and chat (e.g. OpenAI, Anthropic). Returns models that are enabled for your project so you can choose one when creating or running agents. - [Create a new MCP server](https://docs.flowra.dev/api-reference/mcp/create-a-new-mcp-server.md): Register a new MCP (Model Context Protocol) server by URL and optional headers. Once registered, its tools can be used in workflows and agents. MCP is a standard for exposing tools to AI applications. - [Delete MCP server](https://docs.flowra.dev/api-reference/mcp/delete-mcp-server.md): Remove an MCP server. Its tools will no longer be available in the tools list or for use in workflows and agents. - [Get MCP server by ID](https://docs.flowra.dev/api-reference/mcp/get-mcp-server-by-id.md): Get connection details and metadata for one MCP server. Use to inspect URL, headers, or status before using its tools. - [Get MCP server config (tools list)](https://docs.flowra.dev/api-reference/mcp/get-mcp-server-config-tools-list.md): Get the list of tools exposed by this MCP server in standard format (name, description, input schema). Use to build a tool picker or to call tools via the MCP JSON-RPC endpoint. - [List MCP servers](https://docs.flowra.dev/api-reference/mcp/list-mcp-servers.md): List your registered MCP servers with pagination. Each server exposes a set of tools that can be used in workflows and agents. - [MCP JSON-RPC endpoint](https://docs.flowra.dev/api-reference/mcp/mcp-json-rpc-endpoint.md): Send MCP (Model Context Protocol) JSON-RPC 2.0 requests to the specified server. Use for methods like tools/list and tools/call. Pass the server ID you got when registering the MCP server. - [MCP SSE endpoint](https://docs.flowra.dev/api-reference/mcp/mcp-sse-endpoint.md): SSE (Server-Sent Events) endpoint for MCP clients that use the streaming transport. The response includes the POST URL to use for JSON-RPC requests. Use the same serverId as in the MCP server list. - [Update MCP server](https://docs.flowra.dev/api-reference/mcp/update-mcp-server.md): Update an MCP server’s URL, name, headers, or other settings. Use when the server URL or auth changes. - [Create document](https://docs.flowra.dev/api-reference/table/create-document.md): Create a new document in a collection. Send the document fields as JSON; the response includes the new document ID. - [Delete collection](https://docs.flowra.dev/api-reference/table/delete-collection.md): Permanently delete a collection and all documents in it. Use with care; this cannot be undone. - [Delete document](https://docs.flowra.dev/api-reference/table/delete-document.md): Permanently remove a document from a collection. It cannot be recovered. - [Get collection metadata](https://docs.flowra.dev/api-reference/table/get-collection-metadata.md): Get metadata for one collection: name, schema, and document count. Use before querying documents to understand the structure. - [List collection documents](https://docs.flowra.dev/api-reference/table/list-collection-documents.md): List documents in a collection with pagination, sorting, and optional search. Use to display records or feed data into workflows. - [List collections](https://docs.flowra.dev/api-reference/table/list-collections.md): List your data collections (tables). Use to choose a collection for reading or writing documents via the documents endpoints. - [Update document](https://docs.flowra.dev/api-reference/table/update-document.md): Update one or more fields of a document by collection and document ID. Send only the fields you want to change. - [Create a new toolkit](https://docs.flowra.dev/api-reference/toolkits/create-a-new-toolkit.md): Create a toolkit to group related tools (e.g. “Slack”, “CRM API”). You can then add tools to it and attach the toolkit to workflows and agents. - [Delete a toolkit](https://docs.flowra.dev/api-reference/toolkits/delete-a-toolkit.md): Permanently removes a toolkit. Its tools will no longer be available as a group; individual tools may still exist. - [Get all toolkits](https://docs.flowra.dev/api-reference/toolkits/get-all-toolkits.md): List toolkits (groups of related tools) you can attach to workflows and agents. Each toolkit can contain multiple tools (e.g. Slack toolkit, custom API toolkit). - [Get toolkit by ID](https://docs.flowra.dev/api-reference/toolkits/get-toolkit-by-id.md): Get details of one toolkit including its name, slug, and metadata. Use to inspect a toolkit before assigning it to a workflow. - [Get toolkits with nested tools](https://docs.flowra.dev/api-reference/toolkits/get-toolkits-with-nested-tools.md): List toolkits including the full list of tools in each. Use when building a tool picker (e.g. for agents or MCP) so users can see which tools belong to which toolkit. - [Set toolkit active status](https://docs.flowra.dev/api-reference/toolkits/set-toolkit-active-status.md): Enable or disable a toolkit without deleting it. Disabled toolkits and their tools cannot be used in workflows. - [Update an existing toolkit](https://docs.flowra.dev/api-reference/toolkits/update-an-existing-toolkit.md): Update a toolkit’s name, slug, or other settings. Only the fields you send are changed. - [Create a new tool](https://docs.flowra.dev/api-reference/tools/create-a-new-tool.md): Create a custom tool (e.g. API call, script, or custom logic) that your workflows and agents can call. Define name, description, and input schema. - [Delete a tool](https://docs.flowra.dev/api-reference/tools/delete-a-tool.md): Permanently removes a tool. It will no longer appear in the tools list or be usable in workflows or agents. - [Execute tool](https://docs.flowra.dev/api-reference/tools/execute-tool.md): Run a tool by its slug with the arguments you provide. Use this when building agents or automation that need to call tools (e.g. send email, call an API). - [Get tool by ID](https://docs.flowra.dev/api-reference/tools/get-tool-by-id.md): Get full details of a tool: name, description, input schema, and configuration. Use the tool slug or ID when executing the tool. - [List available tools](https://docs.flowra.dev/api-reference/tools/list-available-tools.md): List all tools you can use in workflows and agents. Supports filtering, sorting, and search. Tools can be custom (API calls, scripts) or from toolkits/MCP. - [List tool execution logs](https://docs.flowra.dev/api-reference/tools/list-tool-execution-logs.md): View history of tool runs with status, inputs, and outputs. Use for debugging and monitoring how often tools are called and whether they succeed or fail. - [Run script in sandbox (preview)](https://docs.flowra.dev/api-reference/tools/run-script-in-sandbox-preview.md): Execute a script in a secure sandbox with optional sample state. Returns a tool-shaped result so you can test the script before saving it as a tool for workflows or agents. - [Set tool active status](https://docs.flowra.dev/api-reference/tools/set-tool-active-status.md): Enable or disable a tool without deleting it. Disabled tools cannot be executed or selected in workflows. - [Update an existing tool](https://docs.flowra.dev/api-reference/tools/update-an-existing-tool.md): Update a tool’s name, description, input schema, or configuration. Only the fields you send are changed. - [Create or update trigger](https://docs.flowra.dev/api-reference/triggers/create-or-update-trigger.md): Create or update a trigger (e.g. cron schedule or webhook) that runs a workflow automatically. Use the trigger slug to identify the trigger type; pass configuration such as schedule or webhook URL. - [Delete trigger](https://docs.flowra.dev/api-reference/triggers/delete-trigger.md): Permanently remove a trigger. The workflow will no longer run on that schedule or webhook. - [Enable or disable trigger](https://docs.flowra.dev/api-reference/triggers/enable-or-disable-trigger.md): Turn a trigger on or off without deleting it. Disabled triggers do not run the workflow until enabled again. - [List active triggers](https://docs.flowra.dev/api-reference/triggers/list-active-triggers.md): List your active triggers (scheduled or webhook) with optional filters and pagination. Use to see which workflows are triggered automatically and when. - [Get current user profile](https://docs.flowra.dev/api-reference/users/get-current-user-profile.md): Returns the profile of the authenticated user. Works with all authentication strategies (Local, JWT, Google OAuth, API Key). Use Authorization: Bearer or X-API-Key header. - [Change workflow connection](https://docs.flowra.dev/api-reference/workflow-&-agent/change-workflow-connection.md): Switch which connected account (OAuth) is used for a given toolkit in this workflow. Use when you want the workflow to run with a different user’s credentials. - [Create workflow (agent)](https://docs.flowra.dev/api-reference/workflow-&-agent/create-workflow-agent.md): Create a new agent/workflow with name, tools, system prompt, and model. The agent runs in your workspace and can be triggered manually or by schedules/webhooks. - [Delete workflow](https://docs.flowra.dev/api-reference/workflow-&-agent/delete-workflow.md): Permanently removes a workflow. It can no longer be run or triggered. - [Get execution status by thread ID](https://docs.flowra.dev/api-reference/workflow-&-agent/get-execution-status-by-thread-id.md): Check whether a run is still in progress, completed, or failed. Use the thread ID returned when you started the execution to poll for status. - [Get executions for a specific workflow](https://docs.flowra.dev/api-reference/workflow-&-agent/get-executions-for-a-specific-workflow.md): List all past runs for one workflow with pagination and filters. Use to see the execution history of a single workflow. - [Get workflow detail](https://docs.flowra.dev/api-reference/workflow-&-agent/get-workflow-detail.md): Returns full configuration of a workflow: name, tools, prompt, model, and connection settings. Use this to inspect or edit a workflow. - [Get workflow execution detail](https://docs.flowra.dev/api-reference/workflow-&-agent/get-workflow-execution-detail.md): Returns full details of a single run: inputs, outputs, steps executed, status, and any errors. Use to debug or inspect a specific execution. - [Get workflow executions list](https://docs.flowra.dev/api-reference/workflow-&-agent/get-workflow-executions-list.md): List past runs of your workflows with filters (status, date range, workflow ID) and pagination. Use to monitor runs and find a specific execution. - [Get workflow list](https://docs.flowra.dev/api-reference/workflow-&-agent/get-workflow-list.md): List your workflows (agents) with pagination and filters. Each workflow can be run manually or by triggers. - [Resume workflow execution](https://docs.flowra.dev/api-reference/workflow-&-agent/resume-workflow-execution.md): Continue a paused workflow run (e.g. after a step that waits for user input or approval). Send the thread ID and any required input to resume. - [Trigger workflow execution manually](https://docs.flowra.dev/api-reference/workflow-&-agent/trigger-workflow-execution-manually.md): Start a workflow run immediately with an optional input payload. Returns a thread ID you can use to poll status or resume if the workflow pauses. - [Update workflow](https://docs.flowra.dev/api-reference/workflow-&-agent/update-workflow.md): Update workflow name, tools, system prompt, model, or other settings. Send only the fields you want to change. - [Update workflow status](https://docs.flowra.dev/api-reference/workflow-&-agent/update-workflow-status.md): Turn a workflow on (active) or off (inactive). Inactive workflows cannot be run or triggered. - [Authentication](https://docs.flowra.dev/authentication.md): Authenticate to the Flowra API with API keys - [Development](https://docs.flowra.dev/development.md): Preview and contribute to the Flowra documentation site - [AI models & text generation](https://docs.flowra.dev/guides/ai-models-and-llm.md): List available AI models and generate text with the LLM API - [Auth configs](https://docs.flowra.dev/guides/auth-configs.md): Create and manage OAuth and API key configurations for tools - [Connected accounts](https://docs.flowra.dev/guides/connected-accounts.md): OAuth connected accounts and link creation - [External users](https://docs.flowra.dev/guides/external-users.md): List and look up end users (external users) for your project - [Files](https://docs.flowra.dev/guides/files.md): Upload, list, download, and delete files via the API - [Knowledge (RAG collections)](https://docs.flowra.dev/guides/knowledge.md): List and delete knowledge collections for RAG in workflows and agents - [MCP](https://docs.flowra.dev/guides/mcp.md): Model Context Protocol: register MCP servers, list tools, and use MCP endpoints - [Native tools](https://docs.flowra.dev/guides/native-tools.md): Flowra's built-in tools for workflows, MCP, and the platform - [Data collections (Table)](https://docs.flowra.dev/guides/table.md): List collections, read and write documents via the Table API - [Threads (Chat & agents)](https://docs.flowra.dev/guides/threads.md): Create and manage conversation threads and stream agent runs via the Graphify API - [Toolkits](https://docs.flowra.dev/guides/toolkits.md): List and search toolkits via the API. Toolkits group tools (e.g. Slack, Gmail) for use in agents and workflows. - [Tools](https://docs.flowra.dev/guides/tools.md): Browse, create, execute, and manage tools for agents and workflows - [Triggers](https://docs.flowra.dev/guides/triggers.md): Schedule and event-based trigger instances - [Workflows](https://docs.flowra.dev/guides/workflows.md): Create, list, run, and manage workflows (agents) via the API - [Introduction](https://docs.flowra.dev/index.md): The all-in-one platform for AI agents and workflows. Build everything by chatting — agents, tools, automations, no code required. The API is there when you need it. - [Quickstart](https://docs.flowra.dev/quickstart.md): Get your API key and make your first Flowra API request ## OpenAPI Specs - [openapi](https://docs.flowra.dev/openapi.json) ## Optional - [Dashboard](https://flowra.dev/dashboard)