# PromptJuggler > PromptJuggler – AI Prompt, Workflow & Agent Platform - [What is PromptJuggler?](https://docs.promptjuggler.com/getting-started/introduction.md): Tame the AI circus. One platform for prompts, workflows, agents, and evaluations. - [Quickstart](https://docs.promptjuggler.com/getting-started/quickstart.md): From sign-up to your first prompt run in five minutes. - [Settings](https://docs.promptjuggler.com/getting-started/settings.md): Provider keys, workspaces, and everything else you configure once. - [Roadmap](https://docs.promptjuggler.com/roadmap.md): Where PromptJuggler is going, and everything that got it here. - [Naming & Versioning](https://docs.promptjuggler.com/concepts/naming-and-versioning.md): Names, slugs, drafts, versions, and tags – the system that runs through everything. - [Prompts](https://docs.promptjuggler.com/concepts/prompts.md): The fundamental building block: instructions, model, tools, and memory in one versioned unit. - [Workflows](https://docs.promptjuggler.com/concepts/workflows.md): Visual pipelines that turn simple nodes into sophisticated agents. - [Tools](https://docs.promptjuggler.com/concepts/tools.md): Give your prompts superpowers: HTTP, scripts, search, MCP, and more. - [Knowledge Bases](https://docs.promptjuggler.com/concepts/knowledge-bases.md): Upload documents. Get semantic search. That’s RAG, without the infrastructure. - [Memory & Threads](https://docs.promptjuggler.com/concepts/memory-and-threads.md): Conversational memory, channels, thread forking, and agentic communication patterns. - [Streaming](https://docs.promptjuggler.com/concepts/streaming.md): Token-by-token delivery to your end users' browsers, with exact resume and honest loss signals. - [Transcript](https://docs.promptjuggler.com/concepts/transcript.md): A run as a renderable sequence: assistant text, the tools it used, and structured payloads in position. - [Reliability](https://docs.promptjuggler.com/concepts/reliability.md): What happens when a provider wobbles, a network blips, or we ship a release mid-run. - [Evaluations](https://docs.promptjuggler.com/concepts/evaluations.md): Test your prompts against real data. Stop guessing, start measuring. - [Workflow Nodes](https://docs.promptjuggler.com/workflow-nodes/overview.md): Every node type in the workflow editor at a glance. - [Data Nodes](https://docs.promptjuggler.com/workflow-nodes/data-nodes.md): Input, Output, and Value – getting data in and out. - [Execution Nodes](https://docs.promptjuggler.com/workflow-nodes/execution-nodes.md): Prompt and Workflow nodes – where AI meets orchestration. - [Knowledge Search Node](https://docs.promptjuggler.com/workflow-nodes/knowledge-search.md): Query a knowledge base from within a workflow. - [Script Node](https://docs.promptjuggler.com/workflow-nodes/script.md): Run custom code in a secure, high-performance sandbox. - [Transform Nodes](https://docs.promptjuggler.com/workflow-nodes/transform-nodes.md): String, Array, and JSON Query – reshape data between steps. - [Fanout Node](https://docs.promptjuggler.com/workflow-nodes/fanout.md): Process array items in parallel. - [Control Flow Nodes](https://docs.promptjuggler.com/workflow-nodes/control-flow.md): If and Switch – conditional branching. - [Loop Node](https://docs.promptjuggler.com/workflow-nodes/loop.md): Repeat operations with controlled feedback. - [Assertion Node](https://docs.promptjuggler.com/workflow-nodes/assertion.md): Validate conditions during evaluation runs. - [Tools](https://docs.promptjuggler.com/tools/overview.md): Give your prompts superpowers: HTTP, scripts, search, MCP, and more. - [Prompt & Workflow Tools](https://docs.promptjuggler.com/tools/prompt-and-workflow.md): Call other prompts or workflows as tools. - [Knowledge Search Tool](https://docs.promptjuggler.com/tools/knowledge-search.md): Semantic search over your documents, as a tool. - [HTTP Call Tool](https://docs.promptjuggler.com/tools/http-call.md): Make HTTP requests to external APIs during execution. - [Script Tool](https://docs.promptjuggler.com/tools/script.md): Run custom code as a callable tool. - [Web Search Tool](https://docs.promptjuggler.com/tools/web-search.md): Search the web for current information. - [MCP Tool](https://docs.promptjuggler.com/tools/mcp.md): Connect to Model Context Protocol servers. - [Emit Tool](https://docs.promptjuggler.com/tools/emit.md): Return schema-validated structured data beside the model's prose. - [Running Prompts](https://docs.promptjuggler.com/guides/running-prompts.md): Run prompts and workflows in the UI and via the API, and make sense of the results. - [Building a Chatbot](https://docs.promptjuggler.com/guides/building-a-chatbot.md): A production chat experience end to end: a conversational prompt, a thin backend, and a streaming React frontend. - [Building Workflows](https://docs.promptjuggler.com/guides/building-workflows.md): From a blank canvas to a working pipeline. - [Setting Up Evaluations](https://docs.promptjuggler.com/guides/setting-up-evaluations.md): Create datasets, wire assertions, and measure how your prompts and workflows perform. - [Using Knowledge Bases](https://docs.promptjuggler.com/guides/using-knowledge-bases.md): Upload documents, wait for indexing, and connect them to your prompts and workflows. - [Integration Guide](https://docs.promptjuggler.com/guides/integration.md): API keys, webhooks, environment variables – everything you need to go live. - [Python SDK](https://docs.promptjuggler.com/sdks/python/overview.md): Run prompts and workflows, manage knowledge bases, and verify webhooks from Python. - [TypeScript SDK](https://docs.promptjuggler.com/sdks/typescript/overview.md): Run prompts and workflows, manage knowledge bases, and verify webhooks from TypeScript. - [Java SDK](https://docs.promptjuggler.com/sdks/java/overview.md): Run prompts and workflows, manage knowledge bases, and verify webhooks from Java. - [PHP SDK](https://docs.promptjuggler.com/sdks/php/overview.md): Run prompts and workflows, manage knowledge bases, and verify webhooks from PHP. - [Go SDK](https://docs.promptjuggler.com/sdks/go/overview.md): Run prompts and workflows, manage knowledge bases, and verify webhooks from Go. - [Browser SDK](https://docs.promptjuggler.com/sdks/browser/overview.md): Subscribe to live token streams from your end users' browsers — no API key required, or allowed. - [Overview](https://docs.promptjuggler.com/api/overview.md): Trigger runs, read results, manage knowledge bases. All via REST. - [Get a prompt revision by the prompt’s slug and version](https://docs.promptjuggler.com/api-reference/prompts/get-a-prompt-revision-by-the-prompt’s-slug-and-version.md): Retrieves the full configuration of a prompt revision including model, parameters, tool calls, messages. - [Create and trigger a prompt run](https://docs.promptjuggler.com/api-reference/prompt-runs/create-and-trigger-a-prompt-run.md): Triggers an asynchronous prompt run with the given inputs and returns a run ID and thread ID. Reference the prompt by version number, tag, or `__latest__`. Pass a thread ID to continue an existing conversation. - [Get a prompt run by ID](https://docs.promptjuggler.com/api-reference/prompt-runs/get-a-prompt-run-by-id.md): Retrieves the current state of a prompt run, including status, outputs, token usage, cost, and errors. Poll this endpoint after receiving a webhook notification, or use it to check the status of a run in progress. - [Prompt run finished](https://docs.promptjuggler.com/api-reference/prompt-runs/prompt-run-finished.md): Fired when a prompt run completes or fails. Contains the run ID, status, outputs, and error details. Verify the PromptJuggler-Signature header to authenticate the payload. - [Get a knowledge base by slug](https://docs.promptjuggler.com/api-reference/knowledge-bases/get-a-knowledge-base-by-slug.md): Retrieves a knowledge base with its processing status, document count, chunk count, and a list of all documents. Use this to verify that uploaded documents have finished indexing before relying on them in prompts. - [Upload documents to a knowledge base](https://docs.promptjuggler.com/api-reference/knowledge-bases/upload-documents-to-a-knowledge-base.md): Uploads one or more files to a knowledge base for chunking and embedding. Documents are processed asynchronously. Listen for the knowledgedocument.finished webhook or poll the document endpoint to know when they are searchable. - [Get a knowledge document by ID](https://docs.promptjuggler.com/api-reference/knowledge-bases/get-a-knowledge-document-by-id.md): Retrieves a single document with its processing status, file name, size, and chunk count. Use this to check whether a recently uploaded document has finished indexing. - [Delete a knowledge document](https://docs.promptjuggler.com/api-reference/knowledge-bases/delete-a-knowledge-document.md): Permanently removes a document and all its chunks from the knowledge base. Search results will no longer include content from this document. - [Knowledge document finished](https://docs.promptjuggler.com/api-reference/knowledge-bases/knowledge-document-finished.md): Fired when a single document finishes processing (chunking and embedding). Contains the document ID and final status. The document is searchable once this webhook fires with a successful status. - [Knowledge base finished](https://docs.promptjuggler.com/api-reference/knowledge-bases/knowledge-base-finished.md): Fired when all documents in a knowledge base have finished processing. The entire knowledge base is ready for search at this point. - [Create a streaming credential for a thread](https://docs.promptjuggler.com/api-reference/streaming/create-a-streaming-credential-for-a-thread.md): Returns a short-lived, thread-scoped token your frontend can use to subscribe to live token output over SSE. Call this from your backend with your API key, then hand the token to the browser — the API key itself must never leave your server. The thread does not have to exist yet: mint a token, conne… - [Create and trigger a workflow run](https://docs.promptjuggler.com/api-reference/workflow-runs/create-and-trigger-a-workflow-run.md): Triggers an asynchronous workflow run with the given inputs and returns a run ID and thread ID. Reference the workflow by version number, tag, or `__latest__`. Pass a thread ID to continue an existing conversation across runs. - [Get a workflow run by ID](https://docs.promptjuggler.com/api-reference/workflow-runs/get-a-workflow-run-by-id.md): Retrieves the current state of a workflow run, including status, outputs, aggregated token usage, cost, and errors. Poll this endpoint after receiving a webhook notification, or use it to check the status of a run in progress. - [Workflow run finished](https://docs.promptjuggler.com/api-reference/workflow-runs/workflow-run-finished.md): Fired when a workflow run completes or fails. Contains the run ID, status, outputs, and error details. Verify the PromptJuggler-Signature header to authenticate the payload. ## OpenAPI Specs - [openapi](/openapi.json) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.