From 98f2cd8b0ce04975a38c3b54982a4f516359dc17 Mon Sep 17 00:00:00 2001
From: "mintlify[bot]" <109931778+mintlify[bot]@users.noreply.github.com>
Date: Fri, 2 Oct 2026 20:45:51 +0000
Subject: [PATCH 01/12] Updated mintlify pages
- Updated docs.json
Mintlify-Source: dashboard-editor
---
docs.json | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/docs.json b/docs.json
index d4b9fe14..330d20ed 100644
--- a/docs.json
+++ b/docs.json
@@ -68,6 +68,10 @@
"get-started/early-access"
]
},
+ {
+ "group": "Runpod SDK",
+ "pages": []
+ },
{
"group": "Flash",
"pages": [
From f97ff5c187e6ccdb41d7906bee907cfc1811f9ce Mon Sep 17 00:00:00 2001
From: "mintlify[bot]" <109931778+mintlify[bot]@users.noreply.github.com>
Date: Fri, 2 Oct 2026 20:46:58 +0000
Subject: [PATCH 02/12] Updated mintlify pages
- Created sdk/overview.mdx
- Updated docs.json
Mintlify-Source: dashboard-editor
---
docs.json | 4 +-
sdk/overview.mdx | 277 +++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 280 insertions(+), 1 deletion(-)
create mode 100644 sdk/overview.mdx
diff --git a/docs.json b/docs.json
index 330d20ed..f3dc7a59 100644
--- a/docs.json
+++ b/docs.json
@@ -70,7 +70,9 @@
},
{
"group": "Runpod SDK",
- "pages": []
+ "pages": [
+ "sdk/overview"
+ ]
},
{
"group": "Flash",
diff --git a/sdk/overview.mdx b/sdk/overview.mdx
new file mode 100644
index 00000000..ab61a077
--- /dev/null
+++ b/sdk/overview.mdx
@@ -0,0 +1,277 @@
+---
+title: "Runpod Python SDK"
+sidebarTitle: "Overview"
+description: "Use the runpod Python package to define GPU functions, deploy apps, call endpoints, build Serverless workers, and manage Runpod resources from one SDK."
+---
+
+{/* TODO(DOCS-504): Publish only after runpod-python PR #534 is merged and released to PyPI. Confirm the release version number with Ezekiel Wotring and add it to the Requirements note below. */}
+
+The `runpod` Python package is the single SDK for building on Runpod. It includes the decorator-based app SDK that was previously shipped as Flash, the `rp` command-line interface, the client for calling existing Serverless endpoints, the Serverless worker SDK, and the API wrapper for managing Pods and other resources.
+
+```python
+import runpod
+
+app = runpod.App("hello")
+
+@app.queue(gpu="H100", dependencies=["torch"])
+def hello():
+ import torch
+ return {"gpu": torch.cuda.get_device_name(0)}
+
+@runpod.local_entrypoint
+def main():
+ print(hello.remote())
+```
+
+Run the file with `rp flash dev main.py`. The `hello` function runs on a Runpod GPU, and `main` runs on your machine.
+
+
+ Flash is now part of the Runpod SDK. If you have existing code that uses the `runpod-flash` package, it continues to work. See [What changed](/sdk/whats-changed) for how the old Flash commands and imports map to the unified SDK.
+
+
+## Get started
+
+
+
+ Install the SDK and run a function on a GPU.
+
+
+
+ Map Flash commands and imports to the unified SDK.
+
+
+
+ Use the `rp` CLI to log in, develop, and deploy.
+
+
+
+## Install
+
+The SDK requires Python 3.10 or higher.
+
+```bash
+pip install runpod
+
+# If using uv:
+uv add runpod
+```
+
+Installing the package also installs the `rp` CLI. The same CLI is available under the longer name `runpod`.
+
+## Authenticate
+
+Log in once to store your credentials:
+
+```bash
+rp login
+```
+
+This opens your browser to approve access. Credentials are saved to `~/.runpod/config.toml` and are shared by the SDK and the CLI. See [`rp login`](/sdk/cli#rp-login) for other options, including named profiles.
+
+
+ You can also set the `RUNPOD_API_KEY` environment variable. This is the only environment variable the SDK reads for authentication.
+
+
+## What's in the SDK
+
+The `runpod` package covers four areas. Each one is independent, so you can use any of them on its own.
+
+| Area | Use it to | Main entry points |
+| --- | --- | --- |
+| Apps | Define functions and classes in Python that run on Runpod GPUs or CPUs, then deploy them as endpoints. | `runpod.App`, `@app.queue`, `@app.task`, `@app.api`, `rp flash` |
+| Endpoint client | Call a Serverless endpoint that already exists, by ID. | `runpod.Endpoint` |
+| Serverless worker | Write the handler that runs inside a custom Serverless worker container. | `runpod.serverless.start` |
+| API wrapper | Create and manage Pods, endpoints, templates, and other resources. | `runpod.create_pod`, `runpod.get_pods`, and related functions |
+
+## Apps
+
+An app is a collection of Python functions and classes that run on Runpod. Create one with `runpod.App`, then attach resources to it with decorators. Each decorator defines a different kind of remote compute.
+
+### Resource types
+
+| Decorator | What it creates | Use it for |
+| --- | --- | --- |
+| `@app.queue` | An autoscaling, queue-based Serverless endpoint. | Inference, batch jobs, and other request/response work. |
+| `@app.task` | One ephemeral Pod per call. The Pod provisions, runs to completion, and terminates. | Training, fine-tuning, and other long-running jobs. |
+| `@app.api` | A load-balanced Serverless endpoint that serves a Python class over HTTP. | Web services and APIs with multiple routes. |
+
+The following example defines one of each:
+
+```python
+import runpod
+from runpod import App, Model, NetworkVolume, Secret
+
+app = App("inference")
+
+models = NetworkVolume("models", size=100)
+llama = Model("meta-llama/Llama-3.1-8B-Instruct")
+
+# Autoscaling job queue on H100s, scales to zero when idle
+@app.queue(
+ gpu="H100",
+ workers=(0, 3),
+ dependencies=["vllm"],
+ mounts={"/runpod-volume": models},
+ model=llama,
+ env={"HF_TOKEN": Secret("hf-token")},
+)
+def chat(prompt: str):
+ import vllm
+
+ llm = vllm.LLM(model=str(llama.path))
+ return llm.generate(prompt)
+
+# One ephemeral Pod per call
+@app.task(gpu="H100", gpu_count=2, mounts={"/models": models})
+def finetune(steps: int = 1000):
+ ...
+ return {"loss": 0.1}
+
+# Load-balanced HTTP service
+@app.api(cpu="cpu3c-1-2")
+class Counter:
+ @runpod.init
+ def setup(self):
+ self.count = 0
+
+ @runpod.post("/bump")
+ async def bump(self, body: dict):
+ self.count += body.get("by", 1)
+ return {"count": self.count}
+
+ @runpod.get("/value")
+ async def value(self):
+ return {"count": self.count}
+```
+
+In this example:
+
+- `chat` runs on an autoscaling queue endpoint with between 0 and 3 workers. Model weights are cached on the network volume, and the `HF_TOKEN` environment variable is read from a Runpod secret.
+- `finetune` provisions a two-GPU Pod for each call and terminates it when the function returns.
+- `Counter` is served over HTTP. The method marked with `@runpod.init` runs once when each worker starts, and methods marked with `@runpod.get` and `@runpod.post` become routes. Workers keep state in memory between requests.
+
+{/* TODO(DOCS-504): Document the full parameter list for @app.queue, @app.task, and @app.api (gpu, cpu, gpu_count, workers, dependencies, mounts, model, env, image, datacenter, max_concurrency). Source: runpod/apps/spec.py and runpod/apps/app.py on the feat/apps-sdk branch. Confirm whether GPU and CPU type enums exist (runpod/apps/gpu.py) or only strings. */}
+
+### Call remote functions
+
+Decorated functions keep their Python identity. You call them through methods that control where and how they run:
+
+| Call | Behavior |
+| --- | --- |
+| `fn.remote(...)` | Runs the function on Runpod and blocks until the result is ready. |
+| `await fn.remote.aio(...)` | The async form of `.remote()`. |
+| `fn.spawn(...)` | Submits the work and returns a `Job` handle immediately, without waiting for the result. |
+| `fn.stream(...)` | Streams results back as the function produces them. |
+| `fn.local(...)` | Runs the function in your local Python process. Remote storage isn't mounted. |
+
+For HTTP services defined with `@app.api`, call routes through the class, for example `Counter.post("/bump", {"by": 3})` or `Counter.get("/value")`.
+
+{/* TODO(DOCS-504): Add a short example for .stream() and for working with the Job object returned by .spawn() (status, output, cancel). Source: runpod/apps/job.py and examples/apps/streaming.py. */}
+
+### Local entrypoints
+
+Mark the function that drives your app with `@runpod.local_entrypoint`. It runs on your machine and is the entry point for `rp flash dev`:
+
+```python
+@runpod.local_entrypoint
+def main():
+ print(chat.remote("Why is the sky blue?")) # Blocks for the result
+ job = finetune.spawn(steps=500) # Returns a Job immediately
+```
+
+App discovery imports your modules synchronously. Keep blocking work inside an entrypoint or a remote function, not at the top level of a module.
+
+### Storage
+
+Attach storage with the `mounts` parameter, which maps a path on the worker to a volume:
+
+- `NetworkVolume(name_or_id, size=50, datacenter=None, create=True)` references a [network volume](/storage/network-volumes) in a single datacenter. The app chooses a datacenter that works for every resource sharing the volume.
+- `GlobalVolume(name_or_id, create=True)` references global storage that isn't tied to a datacenter.
+
+Both types look up a volume by name or ID and create it if it doesn't exist. Set `create=False` to require an existing volume.
+
+Mount rules depend on the resource type:
+
+- `@app.task` supports one network volume and one global volume, mounted at different paths that don't overlap.
+- `@app.queue` and `@app.api` support one volume, mounted at `/runpod-volume`. Global volumes require a GPU endpoint.
+
+Inside a remote function, `volume.path` returns the path where the volume is mounted. Read `.path` inside remote functions, not at the top level of a module.
+
+### Develop and deploy
+
+Use the `rp flash` commands to iterate on an app and ship it:
+
+```bash
+rp flash dev main.py # Live dev session: edit, re-run, logs stream back
+rp flash deploy # Deploy production endpoints
+```
+
+A dev session creates temporary endpoints and deletes them when you press Ctrl-C. See the [CLI reference](/sdk/cli) for all commands.
+
+## Endpoint client
+
+To call a Serverless endpoint that already exists, such as one you deployed from the console or with `rp flash deploy`, use `runpod.Endpoint` with the endpoint ID. This class works the same way it did before the Flash consolidation.
+
+```python
+import runpod
+
+endpoint = runpod.Endpoint("ENDPOINT_ID")
+
+# Wait for the result
+result = endpoint.run_sync({"prompt": "Hello"})
+print(result)
+
+# Or submit a job and check on it later
+run_request = endpoint.run({"prompt": "Hello"})
+print(run_request.status())
+print(run_request.output())
+```
+
+By default, the client uses the API key from `rp login`, `RUNPOD_API_KEY`, or `runpod.api_key`. To use a different key for one endpoint, pass it to the constructor: `runpod.Endpoint("ENDPOINT_ID", api_key="API_KEY")`. A key passed to the constructor takes precedence over the global key.
+
+See [Send API requests](/serverless/endpoints/send-requests) for more examples.
+
+## Serverless worker
+
+If you build your own worker container, use `runpod.serverless.start` to register the handler that processes jobs:
+
+```python
+import runpod
+
+def handler(job):
+ job_input = job["input"]
+ return {"output": job_input}
+
+runpod.serverless.start({"handler": handler})
+```
+
+This part of the SDK is unchanged. See [Handler functions](/serverless/workers/handler-functions) to learn more.
+
+## API wrapper
+
+The SDK includes functions for managing Runpod resources through the REST API:
+
+```python
+import runpod
+
+pods = runpod.get_pods()
+pod = runpod.create_pod("test", "runpod/stack", "NVIDIA GeForce RTX 4090")
+runpod.stop_pod(pod["id"])
+runpod.terminate_pod(pod["id"])
+```
+
+{/* TODO(DOCS-504): CON-597 and CON-598 (Done) add resource classes such as runpod.Pod, runpod.Volume, runpod.Template, and runpod.Registry with create/list/get class methods. CON-599 (Ready, not shipped) will add a DeprecationWarning to the flat functions above, pointing at the class methods. Confirm the shipped class API and whether it is part of the first release, then document it here and update the example. Also confirm how runpod.Model (Hugging Face model reference in apps) relates to the Model class from CON-598. */}
+
+## Limitations
+
+- CPU resources are restricted to the `EU-RO-1` datacenter.
+- Apps can scale workers quickly across several endpoints, so you may reach your account's worker limit. Contact [Runpod support](https://www.runpod.io/contact) to raise it.
+
+{/* TODO(DOCS-504): Confirm Windows support for apps and the rp CLI (CON-1036, CON-1037 in Backlog). Flash previously required WSL2 on Windows. Also review open gaps in SLS-488 that may need a limitation here before launch, especially SLS-644 (fixed 300 s .remote() timeout), SLS-645 (~300 s request cap on @app.api), SLS-647 (no command deletes a volume; volumes keep billing after an app is deleted), and SLS-648 (datacenter enum gaps for volumes). */}
+
+## Next steps
+
+- [Run your first function](/sdk/quickstart) with the SDK quickstart.
+- [See what changed](/sdk/whats-changed) if you're coming from Flash.
+- [Learn about the runtime](/sdk/runtime) that runs your code on workers.
+- [Browse the examples](https://github.com/runpod/runpod-python/tree/main/examples/apps) in the runpod-python repository.
From f73c0c8614d9a1c71f258c7087005dd2a7bd9419 Mon Sep 17 00:00:00 2001
From: "mintlify[bot]" <109931778+mintlify[bot]@users.noreply.github.com>
Date: Fri, 2 Oct 2026 20:47:28 +0000
Subject: [PATCH 03/12] Updated mintlify pages
- Created sdk/quickstart.mdx
- Updated docs.json
Mintlify-Source: dashboard-editor
---
docs.json | 3 +-
sdk/quickstart.mdx | 143 +++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 145 insertions(+), 1 deletion(-)
create mode 100644 sdk/quickstart.mdx
diff --git a/docs.json b/docs.json
index f3dc7a59..1ce430e6 100644
--- a/docs.json
+++ b/docs.json
@@ -71,7 +71,8 @@
{
"group": "Runpod SDK",
"pages": [
- "sdk/overview"
+ "sdk/overview",
+ "sdk/quickstart"
]
},
{
diff --git a/sdk/quickstart.mdx b/sdk/quickstart.mdx
new file mode 100644
index 00000000..d8988b52
--- /dev/null
+++ b/sdk/quickstart.mdx
@@ -0,0 +1,143 @@
+---
+title: "Get started with the Runpod SDK"
+sidebarTitle: "Quickstart"
+description: "Install the runpod Python package, log in with the rp CLI, and run your first function on a Runpod GPU in a few minutes, then deploy it as an endpoint."
+---
+
+{/* TODO(DOCS-504): This page supersedes CON-617 (unified getting-started doc). Run every step end to end against the released package before publishing, and paste real output into the output blocks. */}
+
+This quickstart takes you from installing the Runpod SDK to running a function on a cloud GPU. You'll write a small app, run it in a live development session, and deploy it as a Serverless endpoint.
+
+## Requirements
+
+- A [Runpod account](/accounts-billing/manage-accounts) with a verified email address.
+- [Python 3.10 or higher](https://www.python.org/downloads/).
+
+## Step 1: Install the SDK
+
+Create a project directory and a virtual environment, then install the `runpod` package:
+
+```bash
+mkdir hello-runpod && cd hello-runpod
+python -m venv .venv
+source .venv/bin/activate
+pip install runpod
+
+# If using uv:
+uv init && uv add runpod
+```
+
+Installing the package also installs the `rp` CLI.
+
+## Step 2: Log in
+
+Authenticate with your Runpod account:
+
+```bash
+rp login
+
+# If using uv:
+uv run rp login
+```
+
+This opens your browser so you can approve access. Your credentials are saved to `~/.runpod/config.toml`, and both the SDK and the CLI use them from then on.
+
+
+ To skip the browser, run `rp login --api-key API_KEY` with a key from the [API keys page](https://console.runpod.io/user/settings), or set the `RUNPOD_API_KEY` environment variable.
+
+
+## Step 3: Write your app
+
+Create a file called `main.py` with the following code:
+
+```python
+import runpod
+
+app = runpod.App("quickstart")
+
+@app.queue(gpu="H100", workers=(0, 3), dependencies=["torch"])
+def matrix_multiply(size: int):
+ # Import packages inside the function so they load on the worker
+ import torch
+
+ a = torch.rand(size, size, device="cuda")
+ b = torch.rand(size, size, device="cuda")
+ c = a @ b
+
+ return {
+ "size": size,
+ "mean": c.mean().item(),
+ "gpu": torch.cuda.get_device_name(0),
+ }
+
+@runpod.local_entrypoint
+def main():
+ result = matrix_multiply.remote(2000)
+ print(f"Matrix size: {result['size']}x{result['size']}")
+ print(f"Result mean: {result['mean']:.4f}")
+ print(f"GPU used: {result['gpu']}")
+```
+
+This code does three things:
+
+- `runpod.App("quickstart")` creates an app to hold your resources.
+- `@app.queue(...)` turns `matrix_multiply` into an autoscaling queue endpoint on H100 GPUs that scales between 0 and 3 workers and installs `torch` on each worker.
+- `@runpod.local_entrypoint` marks `main` as the code that runs on your machine. Calling `matrix_multiply.remote(2000)` sends the work to Runpod and waits for the result.
+
+
+ Import installed packages such as `torch` inside the remote function body, not at the top of the file. Top-level imports run on your machine, where the package may not be installed.
+
+
+{/* TODO(DOCS-504): Confirm the accepted gpu string values and whether there's an "any available GPU" option equivalent to Flash's GpuGroup.ANY. If there is, use it here so the quickstart doesn't fail when H100s are scarce. */}
+
+## Step 4: Run a live development session
+
+Start a development session:
+
+```bash
+rp flash dev main.py
+```
+
+The CLI creates a temporary endpoint, runs `main`, and streams worker logs back to your terminal. The first run takes longer while Runpod provisions a worker and installs dependencies:
+
+{/* TODO(DOCS-504): Replace with real output from rp flash dev. */}
+
+```text
+Matrix size: 2000x2000
+Result mean: 500.0412
+GPU used: NVIDIA H100 80GB HBM3
+```
+
+Edit `main.py`, for example by changing `2000` to `4000`, and run it again. Later runs reuse the warm worker, so they return much faster.
+
+When you're done, press Ctrl-C. The session waits for the running entrypoint to finish and then deletes the temporary endpoints.
+
+## Step 5: Deploy your app
+
+When your app works the way you want, deploy it:
+
+```bash
+rp flash deploy
+```
+
+This creates production endpoints that stay up after you close your terminal. List your deployed apps with:
+
+```bash
+rp flash app list
+```
+
+{/* TODO(DOCS-504): Show how to get the deployed endpoint ID or URL from the deploy output, then add a short runpod.Endpoint("ENDPOINT_ID").run_sync(...) call so the quickstart ends with a first call to a deployed endpoint. */}
+
+## Clean up
+
+To delete the endpoints you deployed, run:
+
+```bash
+rp flash undeploy --app quickstart
+```
+
+## Next steps
+
+- [Learn what's in the SDK](/sdk/overview), including tasks, HTTP services, and storage.
+- [Review the CLI commands](/sdk/cli).
+- [Call an existing endpoint](/serverless/endpoints/send-requests) with `runpod.Endpoint`.
From b67ba15a2ba4969dece8694b3567cd6c876c6fcf Mon Sep 17 00:00:00 2001
From: "mintlify[bot]" <109931778+mintlify[bot]@users.noreply.github.com>
Date: Fri, 2 Oct 2026 20:47:52 +0000
Subject: [PATCH 04/12] Updated mintlify pages
- Created sdk/cli.mdx
- Updated docs.json
Mintlify-Source: dashboard-editor
---
docs.json | 3 +-
sdk/cli.mdx | 143 ++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 145 insertions(+), 1 deletion(-)
create mode 100644 sdk/cli.mdx
diff --git a/docs.json b/docs.json
index 1ce430e6..80656f4f 100644
--- a/docs.json
+++ b/docs.json
@@ -72,7 +72,8 @@
"group": "Runpod SDK",
"pages": [
"sdk/overview",
- "sdk/quickstart"
+ "sdk/quickstart",
+ "sdk/cli"
]
},
{
diff --git a/sdk/cli.mdx b/sdk/cli.mdx
new file mode 100644
index 00000000..a10eb6f6
--- /dev/null
+++ b/sdk/cli.mdx
@@ -0,0 +1,143 @@
+---
+title: "rp CLI reference"
+sidebarTitle: "CLI reference"
+description: "Reference for the rp CLI that ships with the runpod Python package: log in, scaffold apps, run live dev sessions, deploy, and manage SSH keys and Pods."
+---
+
+{/* TODO(DOCS-504): Source is docs/cli/references/command_line_interface.md on runpod-python feat/apps-sdk. Confirm flags for each command with `rp --help` on the released version, and confirm whether rp flash build and rp flash update exist. */}
+
+The `rp` CLI is installed with the `runpod` Python package. Use it to authenticate, develop and deploy apps, and work with Pods and SSH keys. The same CLI is also available under the name `runpod`, so `rp flash deploy` and `runpod flash deploy` are equivalent.
+
+
+ The `rp` CLI is separate from [`runpodctl`](/runpodctl/overview), which is a standalone binary with a different set of commands.
+
+
+## Command summary
+
+```bash
+# Auth
+rp login
+
+# Apps
+rp flash init my-app
+rp flash dev main.py
+rp flash deploy
+rp flash app list
+rp flash env list --app my-app
+rp flash undeploy --app my-app
+
+# SSH
+rp ssh add
+rp ssh list
+rp ssh POD_ID
+
+# Pods
+rp pod list
+rp pod create
+rp pod connect POD_ID
+```
+
+App lifecycle commands live under `rp flash`. Account, SSH, and Pod commands live at the root. Run `rp --help` or `rp COMMAND --help` for details on any command.
+
+## rp login
+
+Authenticate with Runpod and save your credentials to `~/.runpod/config.toml`:
+
+```bash
+rp login # Approve access in your browser
+rp login --api-key API_KEY # Store a key directly
+rp login --profile staging # Save credentials to a named profile
+```
+
+Use `--profile PROFILE_NAME` with either login method to update only that profile. The default profile is `default`.
+
+## rp flash init
+
+Scaffold a new app project:
+
+```bash
+rp flash init my-app
+```
+
+## rp flash dev
+
+Run a live development session for the app defined in a file:
+
+```bash
+rp flash dev main.py
+```
+
+The session creates temporary endpoints, runs the function marked with `@runpod.local_entrypoint`, and streams worker logs back to your terminal. Edit your code and re-run to iterate.
+
+When you press Ctrl-C, the session waits for the running entrypoint to finish and then deletes its endpoints. If cleanup fails, the command exits with an error and lists the endpoint IDs you need to delete.
+
+
+ App discovery imports your modules synchronously. Keep blocking work inside an entrypoint or a remote function. If discovery hangs on an import, interrupt it with Ctrl-C.
+
+
+## rp flash deploy
+
+Build and deploy the app in the current project:
+
+```bash
+rp flash deploy
+```
+
+This creates production endpoints for every resource in the app.
+
+## rp flash app
+
+List the apps you've deployed:
+
+```bash
+rp flash app list
+```
+
+## rp flash env
+
+List the environments for an app:
+
+```bash
+rp flash env list --app my-app
+```
+
+## rp flash undeploy
+
+Delete the endpoints for an app's environment:
+
+```bash
+rp flash undeploy --app my-app
+```
+
+
+ Undeploying an app doesn't delete network volumes it created. Volumes continue to incur storage charges until you delete them from the [Storage page](https://console.runpod.io/user/storage) in the console.
+
+
+{/* TODO(DOCS-504): The warning above reflects SLS-647 (open). Remove or update it if a volume delete command ships before launch. */}
+
+## rp ssh
+
+Manage SSH keys on your account and connect to Pods:
+
+```bash
+rp ssh add # Add a key to your account
+rp ssh list # List the keys on your account
+rp ssh POD_ID # Open a terminal on a Pod
+```
+
+`rp ssh add` generates a new key if you don't pass one. To use an existing key, pass `--key` or `--key-file`. Keys are stored in `~/.runpod/ssh/`.
+
+## rp pod
+
+Work with Pods:
+
+```bash
+rp pod list
+rp pod create
+rp pod connect POD_ID # Same as rp ssh POD_ID
+```
+
+## Next steps
+
+- [Get started with the SDK](/sdk/quickstart).
+- [See how Flash CLI commands map to rp](/sdk/whats-changed#cli-commands).
From a53bde39962c1cdc0b6b7644b9d9899c1d25978f Mon Sep 17 00:00:00 2001
From: "mintlify[bot]" <109931778+mintlify[bot]@users.noreply.github.com>
Date: Fri, 2 Oct 2026 20:48:11 +0000
Subject: [PATCH 05/12] Updated mintlify pages
- Created sdk/whats-changed.mdx
- Updated docs.json
Mintlify-Source: dashboard-editor
---
docs.json | 3 +-
sdk/whats-changed.mdx | 143 ++++++++++++++++++++++++++++++++++++++++++
2 files changed, 145 insertions(+), 1 deletion(-)
create mode 100644 sdk/whats-changed.mdx
diff --git a/docs.json b/docs.json
index 80656f4f..cc2860f6 100644
--- a/docs.json
+++ b/docs.json
@@ -73,7 +73,8 @@
"pages": [
"sdk/overview",
"sdk/quickstart",
- "sdk/cli"
+ "sdk/cli",
+ "sdk/whats-changed"
]
},
{
diff --git a/sdk/whats-changed.mdx b/sdk/whats-changed.mdx
new file mode 100644
index 00000000..68f2d6b8
--- /dev/null
+++ b/sdk/whats-changed.mdx
@@ -0,0 +1,143 @@
+---
+title: "What changed: Flash is now part of the Runpod SDK"
+sidebarTitle: "What changed"
+description: "See where Flash commands, imports, and features live now that Flash is part of the runpod Python package, and when the standalone Flash repo will be archived."
+---
+
+{/* TODO(DOCS-504): This is a "where things live now" page, not a migration guide (per DOCS-504). Have Ezekiel Wotring review every row of the mapping tables before publishing. */}
+
+Flash, the Python SDK for running code on Runpod from decorated functions, is now part of the `runpod` Python package. There's now one SDK, one package to install, and one CLI. This page shows where each part of Flash lives now.
+
+
+ **Your existing Flash code keeps working.** The `runpod-flash` package is still available, and `from runpod_flash import Endpoint` continues to work unchanged. You don't need to change anything today. New features land only in the `runpod` package.
+
+
+## Summary
+
+- **One package.** Install `runpod` instead of `runpod-flash`. The app SDK, the endpoint client, the Serverless worker SDK, and the API wrapper all ship together.
+- **One CLI.** Flash commands now run as `rp flash COMMAND`. Account and Pod commands, such as `rp login`, live at the root of the same CLI.
+- **One login.** `rp login` saves credentials to `~/.runpod/config.toml`, which the whole SDK reads. `RUNPOD_API_KEY` is the only environment variable for authentication.
+- **An app-based API.** Instead of decorating functions with `@Endpoint`, you create a `runpod.App` and attach resources to it with `@app.queue`, `@app.api`, or the new `@app.task`.
+- **A separate runtime.** The code that runs on workers now lives in its own package, `runpod-sdk-runtime`, so it can be released independently of the SDK. See [Runtime](/sdk/runtime).
+
+## Install and authenticate
+
+| Before (Flash) | Now (Runpod SDK) |
+| --- | --- |
+| `pip install runpod-flash` | `pip install runpod` |
+| `uv tool install runpod-flash` | `uv add runpod` |
+| `flash login` | `rp login` |
+| Python 3.10 to 3.13 | Python 3.10 or higher |
+
+## CLI commands
+
+| Before (Flash) | Now (Runpod SDK) |
+| --- | --- |
+| `flash login` | `rp login` |
+| `flash init PROJECT_NAME` | `rp flash init PROJECT_NAME` |
+| `flash dev` | `rp flash dev main.py` |
+| `flash deploy` | `rp flash deploy` |
+| `flash app list` | `rp flash app list` |
+| `flash env list` | `rp flash env list --app APP_NAME` |
+| `flash undeploy ENDPOINT_NAME` | `rp flash undeploy --app APP_NAME` |
+| `flash build` | {/* TODO(DOCS-504): confirm */} To be confirmed |
+| `flash update` | Update the package with `pip install --upgrade runpod`. |
+
+The `rp` CLI is also available as `runpod`, so `runpod flash deploy` works too. See the [CLI reference](/sdk/cli) for details.
+
+{/* TODO(DOCS-504): Confirm whether the old `flash` command is still installed by runpod-flash after the freeze (CON-603) and whether it prints a pointer to `rp flash`. */}
+
+## Imports and code
+
+| Before (Flash) | Now (Runpod SDK) |
+| --- | --- |
+| `from runpod_flash import Endpoint` | `import runpod`, then `app = runpod.App("APP_NAME")` |
+| `@Endpoint(name=..., gpu=...)` on a function (queue-based) | `@app.queue(gpu=...)` |
+| `api = Endpoint(...)` with `@api.get` and `@api.post` routes (load-balanced) | `@app.api(...)` on a class, with `@runpod.get`, `@runpod.post`, and `@runpod.init` on its methods |
+| No equivalent | `@app.task(...)`: one ephemeral Pod per call |
+| `await my_function(x)` | `my_function.remote(x)` or `await my_function.remote.aio(x)` |
+| `asyncio.gather(...)` to fire off work | `my_function.spawn(x)` returns a `Job` without waiting |
+| No equivalent | `my_function.local(x)` runs in your local process |
+| `if __name__ == "__main__": asyncio.run(main())` | `@runpod.local_entrypoint` on `main`, run with `rp flash dev main.py` |
+| `GpuType.NVIDIA_...` and `GpuGroup.ANY` | `gpu="H100"` and other GPU strings {/* TODO(DOCS-504): confirm accepted values and whether enums exist */} |
+| `NetworkVolume(name=..., size=..., datacenter=...)` with `volume=vol` | `runpod.NetworkVolume(...)` with `mounts={"/runpod-volume": vol}` |
+| No equivalent | `runpod.GlobalVolume(...)` for storage that isn't tied to a datacenter |
+| `env={"HF_TOKEN": "..."}` | `env={"HF_TOKEN": runpod.Secret("SECRET_NAME")}` to read from a Runpod secret |
+| `Endpoint(id="ENDPOINT_ID")` to call an existing endpoint | `runpod.Endpoint("ENDPOINT_ID")` (unchanged) |
+| `Endpoint(image="IMAGE")` to deploy a custom image | `image="IMAGE"` on a resource decorator {/* TODO(DOCS-504): confirm; blocked by SLS-631 */} |
+
+Here's the same queue-based function written both ways.
+
+With Flash:
+
+```python
+import asyncio
+from runpod_flash import Endpoint, GpuType
+
+@Endpoint(name="hello-gpu", gpu=GpuType.NVIDIA_GEFORCE_RTX_4090, dependencies=["torch"])
+async def hello():
+ import torch
+ return {"gpu": torch.cuda.get_device_name(0)}
+
+print(asyncio.run(hello()))
+```
+
+With the Runpod SDK:
+
+```python
+import runpod
+
+app = runpod.App("hello-gpu")
+
+@app.queue(gpu="RTX 4090", dependencies=["torch"])
+def hello():
+ import torch
+ return {"gpu": torch.cuda.get_device_name(0)}
+
+@runpod.local_entrypoint
+def main():
+ print(hello.remote())
+```
+
+{/* TODO(DOCS-504): Confirm the GPU string for RTX 4090. */}
+
+Run the new version with `rp flash dev main.py`.
+
+## What stays the same
+
+- `runpod.Endpoint("ENDPOINT_ID")` and its `run`, `run_sync`, `status`, and `output` methods work exactly as before.
+- `runpod.serverless.start` and the rest of the Serverless worker SDK are unchanged.
+- API wrapper functions such as `runpod.create_pod` and `runpod.get_pods` still work.
+- Endpoints you already deployed with Flash keep running. Nothing is redeployed or deleted.
+
+{/* TODO(DOCS-504): CON-599 will add a one-time DeprecationWarning to the flat API wrapper functions, pointing at class methods such as runpod.Pod.create. If it ships with this release, add a row here and a sentence explaining the warning. */}
+
+## Before you move existing Flash projects
+
+You don't have to move existing projects to the unified SDK. If you choose to, test each project in a dev session first, because a few Flash patterns behave differently in the new app API:
+
+{/* TODO(DOCS-504): These items come from the SLS-488 gap evaluation (2026-09-25). Re-check each one before publishing and delete any that are fixed: SLS-634 multi-file project layout, SLS-635 @remote classes, SLS-636 route path/query parameters on @app.api, SLS-637 no equivalent for template= and id= on resources. */}
+
+- Projects split across multiple files.
+- Classes used as remote resources.
+- Path and query parameters on HTTP routes.
+- Resources that reference an existing template or endpoint by ID.
+
+## Flash repository deprecation timeline
+
+The standalone [runpod/flash](https://github.com/runpod/flash) repository is deprecated and will be archived. Archiving makes the repository read-only. It doesn't remove the `runpod-flash` package from PyPI, and it doesn't affect endpoints you've already deployed.
+
+{/* TODO(DOCS-504): Archive date is still TBD (open question on DOCS-504). Fill in the dates below and make sure the wording matches the deprecation notice in the runpod/flash README exactly. */}
+
+| Date | What happens |
+| --- | --- |
+| DATE_TBD | Flash is part of the `runpod` package. The runpod/flash repository shows a deprecation notice. The `runpod-flash` package is frozen: it keeps working but gets no new features. |
+| DATE_TBD | The runpod/flash repository is archived and becomes read-only. |
+
+The Flash pages in these docs stay online for reference, with a notice pointing to the Runpod SDK docs.
+
+## Next steps
+
+- [Get started with the Runpod SDK](/sdk/quickstart).
+- [Read the SDK overview](/sdk/overview).
+- [Learn where the runtime lives](/sdk/runtime).
From 96d8dd540a53eafb98788b4e06bed17a119f638e Mon Sep 17 00:00:00 2001
From: "mintlify[bot]" <109931778+mintlify[bot]@users.noreply.github.com>
Date: Fri, 2 Oct 2026 20:48:31 +0000
Subject: [PATCH 06/12] Updated mintlify pages
- Created sdk/runtime.mdx
- Updated docs.json
Mintlify-Source: dashboard-editor
---
docs.json | 3 ++-
sdk/runtime.mdx | 43 +++++++++++++++++++++++++++++++++++++++++++
2 files changed, 45 insertions(+), 1 deletion(-)
create mode 100644 sdk/runtime.mdx
diff --git a/docs.json b/docs.json
index cc2860f6..4116439c 100644
--- a/docs.json
+++ b/docs.json
@@ -74,7 +74,8 @@
"sdk/overview",
"sdk/quickstart",
"sdk/cli",
- "sdk/whats-changed"
+ "sdk/whats-changed",
+ "sdk/runtime"
]
},
{
diff --git a/sdk/runtime.mdx b/sdk/runtime.mdx
new file mode 100644
index 00000000..fbac2a55
--- /dev/null
+++ b/sdk/runtime.mdx
@@ -0,0 +1,43 @@
+---
+title: "Runpod SDK runtime"
+sidebarTitle: "Runtime"
+description: "Learn what the runpod-sdk-runtime package does, where its source lives, and when you need to think about it separately from the runpod Python SDK."
+---
+
+{/* TODO(DOCS-504): Blocked on SLS-631: runpod-sdk-runtime is not yet published to PyPI (runpod-workers/sdk-runtime is at 0.0.0 with no releases). Confirm the package name, repository, and the RUNPOD_RUNTIME_PACKAGE_SPEC behavior with Ezekiel Wotring once it is released. */}
+
+When you run an app built with the Runpod SDK, two pieces of code are involved:
+
+- **The SDK** (`runpod`) runs on your machine. It defines your app, talks to the Runpod API, and powers the `rp` CLI.
+- **The runtime** (`runpod-sdk-runtime`) runs on each worker. It loads your code, binds storage and other resources, and executes your functions when requests arrive.
+
+The runtime used to ship inside the SDK. It now lives in its own repository, [runpod-workers/sdk-runtime](https://github.com/runpod-workers/sdk-runtime), and is released as a separate package. This lets Runpod ship runtime fixes and update worker images without requiring you to upgrade the SDK, and the reverse.
+
+## How the runtime gets onto workers
+
+You don't install the runtime yourself. Runpod handles it in one of two ways, depending on how your resource is configured:
+
+- **Default images.** Runpod's worker images come with the runtime already installed and cached on Runpod machines, so workers start without an extra install step.
+- **Custom images.** If you set `image=` on a resource, the worker installs `runpod-sdk-runtime` when it starts. Your image needs Python and `pip`, and the worker needs network access to the package index.
+
+{/* TODO(DOCS-504): Confirm minimum requirements for a custom image (Python version, pip, base OS). Confirm that CON-682 (cache runtime images on all machines) means default images need no install step. */}
+
+## When you need the runtime separately
+
+Most users never interact with the runtime directly. You might need to think about it in these cases:
+
+- **You use a custom container image.** The image must be able to install `runpod-sdk-runtime` at startup. If the install fails, the worker can't start and requests time out.
+- **You need a specific runtime version.** For example, to pick up a fix before it reaches the default images, or to pin a known-good version.
+- **You're debugging worker startup.** Worker logs that mention the runtime or its bootstrap step come from this package, not from your code or the SDK.
+- **You want to read or contribute to the worker-side code.** It lives in the [runpod-workers/sdk-runtime](https://github.com/runpod-workers/sdk-runtime) repository, not in runpod-python.
+
+{/* TODO(DOCS-504): Document how users pin a runtime version (the shim reads RUNPOD_RUNTIME_PACKAGE_SPEC per SLS-631). Confirm whether this is a supported, user-facing setting before documenting it. */}
+
+## Serverless workers you build yourself
+
+The runtime is only used by apps defined with `runpod.App`. If you build your own worker container with a handler function and `runpod.serverless.start`, you don't need the runtime. Keep installing the `runpod` package in your image as before. See [Handler functions](/serverless/workers/handler-functions).
+
+## Next steps
+
+- [Read the SDK overview](/sdk/overview).
+- [See what changed](/sdk/whats-changed) when Flash became part of the SDK.
From ab982cb9421bd9705c09cbfabfe151eb3f9c1b78 Mon Sep 17 00:00:00 2001
From: lgunreddi
Date: Fri, 2 Oct 2026 16:49:36 -0400
Subject: [PATCH 07/12] Updated mintlify pages
- Updated flash/overview.mdx
Mintlify-Source: dashboard-editor
---
flash/overview.mdx | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/flash/overview.mdx b/flash/overview.mdx
index 887582a8..80dc1867 100644
--- a/flash/overview.mdx
+++ b/flash/overview.mdx
@@ -3,10 +3,15 @@ title: "Overview"
sidebarTitle: "Overview"
description: "Build autoscaling AI/ML apps using local code with Runpod Flash. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
mode: "wide"
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
Flash is a Python SDK for developing cloud-native AI apps where you define everything—hardware, remote functions, and dependencies—using local code.
```python
@@ -120,4 +125,4 @@ flash --help
Create HTTP endpoints with load balancing.
-
\ No newline at end of file
+
From d6a58cdc89bf74bf7b6589354a1b8b96e4ed7c42 Mon Sep 17 00:00:00 2001
From: lgunreddi
Date: Fri, 2 Oct 2026 16:50:55 -0400
Subject: [PATCH 08/12] Updated mintlify pages
- Updated flash/quickstart.mdx
- Updated flash/pricing.mdx
- Updated flash/windows-wsl2.mdx
- Updated flash/troubleshooting.mdx
- Updated flash/create-endpoints.mdx
- Updated flash/cli/overview.mdx
- Updated flash/execution-model.mdx
Mintlify-Source: dashboard-editor
---
flash/cli/overview.mdx | 7 +++-
flash/create-endpoints.mdx | 5 +++
flash/execution-model.mdx | 5 +++
flash/pricing.mdx | 5 +++
flash/quickstart.mdx | 5 +++
flash/troubleshooting.mdx | 76 +++++++++++++++++++++++++-------------
flash/windows-wsl2.mdx | 5 +++
7 files changed, 81 insertions(+), 27 deletions(-)
diff --git a/flash/cli/overview.mdx b/flash/cli/overview.mdx
index b0b2c6f6..b8475fa1 100644
--- a/flash/cli/overview.mdx
+++ b/flash/cli/overview.mdx
@@ -3,8 +3,13 @@ title: "CLI overview"
sidebarTitle: "Overview"
description: "Learn how to use the Flash CLI for local development and deployment. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
tag: "BETA"
+canonical: "https://docs.runpod.io/sdk/cli"
---
+
+ The Flash CLI is now part of the `rp` CLI that ships with the [Runpod SDK](/sdk/overview). This page documents the standalone `flash` command from the `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [`rp` CLI](/sdk/cli). To see how `flash` commands map to `rp flash`, see [What changed](/sdk/whats-changed#cli-commands).
+
+
The Flash CLI provides commands for initializing projects, running local development servers, building deployment artifacts, and managing your applications on Runpod Serverless.
Before using the CLI, make sure you've [installed Flash](/flash/overview#install-flash).
@@ -110,4 +115,4 @@ flash undeploy ENDPOINT_NAME
# Remove all endpoints
flash undeploy --all
-```
\ No newline at end of file
+```
diff --git a/flash/create-endpoints.mdx b/flash/create-endpoints.mdx
index b2ce31ea..45158319 100644
--- a/flash/create-endpoints.mdx
+++ b/flash/create-endpoints.mdx
@@ -2,10 +2,15 @@
title: "Create endpoints"
sidebarTitle: "Create endpoints"
description: "Learn how to create and configure hardware and scaling behavior with the Flash Endpoint class. Review configuration and usage details for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
import { WorkerTooltip, ServerlessTooltip } from "/snippets/tooltips.jsx";
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
In Flash, endpoints are the bridge between your local Python functions and Runpod's cloud infrastructure. When you decorate a function with `@Endpoint`, you're marking it to run remotely on Runpod instead of your local machine:
```python
diff --git a/flash/execution-model.mdx b/flash/execution-model.mdx
index f980f240..356a62a6 100644
--- a/flash/execution-model.mdx
+++ b/flash/execution-model.mdx
@@ -2,10 +2,15 @@
title: "Execution model"
sidebarTitle: "Execution model"
description: "Understand how Flash executes your code on Runpod's infrastructure. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
import { MachineTooltip } from "/snippets/tooltips.jsx";
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
Flash runs your Python functions on remote GPU/CPU workers while you maintain local control flow. This page explains what happens when you call an `@Endpoint` function.
## What runs where
diff --git a/flash/pricing.mdx b/flash/pricing.mdx
index e9af307c..4be47b6e 100644
--- a/flash/pricing.mdx
+++ b/flash/pricing.mdx
@@ -2,8 +2,13 @@
title: "Pricing"
sidebarTitle: "Pricing"
description: "Understand Flash pricing and optimize your costs. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
Flash follows the same pricing model as [Runpod Serverless](/serverless/pricing). You pay per second of compute time, with no charges when your code isn't running. Pricing depends on the GPU or CPU type you configure for your endpoints.
## How pricing works
diff --git a/flash/quickstart.mdx b/flash/quickstart.mdx
index ba7a3a61..37b472b5 100644
--- a/flash/quickstart.mdx
+++ b/flash/quickstart.mdx
@@ -2,8 +2,13 @@
title: "Get started with Flash"
sidebarTitle: "Quickstart"
description: "Run your first GPU workload with Flash in less than 5 minutes. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/quickstart"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK quickstart](/sdk/quickstart). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
This quickstart gets you running GPU workloads on Runpod in minutes. You'll execute a function on a remote GPU and see the results immediately.
## Requirements
diff --git a/flash/troubleshooting.mdx b/flash/troubleshooting.mdx
index cb6da5a0..28279566 100644
--- a/flash/troubleshooting.mdx
+++ b/flash/troubleshooting.mdx
@@ -2,8 +2,13 @@
title: "Troubleshooting"
sidebarTitle: "Troubleshooting"
description: "Monitor, debug, and troubleshoot Flash deployments. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
This guide covers how to monitor your Flash deployments, debug issues, and resolve common errors.
## Monitoring and debugging
@@ -72,7 +77,8 @@ async def process(data: dict) -> dict:
### API key not set
**Error:**
-```
+
+```text
No Runpod API key found. Set one with:
flash login # interactive setup
@@ -121,7 +127,8 @@ Get a key: https://docs.runpod.io/get-started/api-keys
### Corrupted credentials file
**Error:**
-```
+
+```text
Error: ~/.runpod/config.toml is corrupted and cannot be parsed.
Run 'flash login' to re-authenticate, or delete the file and retry.
```
@@ -138,7 +145,8 @@ flash login
### Invalid route configuration
**Error:**
-```
+
+```text
Load-balanced endpoints require route decorators
```
@@ -164,7 +172,8 @@ async def health_check() -> dict:
### Invalid HTTP method
**Error:**
-```
+
+```text
method must be one of {'GET', 'POST', 'PUT', 'DELETE', 'PATCH'}
```
@@ -175,7 +184,8 @@ method must be one of {'GET', 'POST', 'PUT', 'DELETE', 'PATCH'}
### Invalid path format
**Error:**
-```
+
+```text
path must start with '/'
```
@@ -194,7 +204,8 @@ path must start with '/'
### Duplicate routes
**Error:**
-```
+
+```text
Duplicate route 'POST /process' in endpoint 'my-api'
```
@@ -207,7 +218,8 @@ Duplicate route 'POST /process' in endpoint 'my-api'
### Unsupported Python version
**Error:**
-```
+
+```text
Local Python 3.9 is not supported by Flash workers (supported: 3.10, 3.11, 3.12, 3.13).
Pass --python-version, declare python_version on a resource config, or run flash from a supported interpreter.
```
@@ -234,7 +246,6 @@ You have three options:
# Using pyenv
pyenv install 3.12
pyenv local 3.12
-
# Or using uv
uv venv --python 3.12
source .venv/bin/activate
@@ -247,13 +258,14 @@ Python 3.12 is recommended for best performance with no cold-start overhead. Pyt
### Local module could not be resolved
**Error:**
-```
+
+```text
endpoint.py: relative import (level=1, module='helpers') could not be resolved to a local file under /path/to/project
```
Or, for an ignore-excluded import:
-```
+```text
Shipped code imports local modules that the build ignore rules (.gitignore or built-in defaults) exclude:
utils/helpers.py (imported by endpoint.py)
@@ -279,7 +291,8 @@ For how Flash resolves and bundles local imports, see [Import local modules](/fl
### Tarball too large
**Error:**
-```
+
+```text
Tarball exceeds maximum size. File size: 1.6GB, Max: 1.5GB
```
@@ -294,7 +307,8 @@ Tarball exceeds maximum size. File size: 1.6GB, Max: 1.5GB
### Invalid tarball format
**Error:**
-```
+
+```text
File is not a valid gzip file. Expected magic bytes (31, 139)
```
@@ -310,7 +324,8 @@ flash build
### SSL certificate verification failed
**Error:**
-```
+
+```text
SSL certificate verification failed. This usually means Python cannot find your system's CA certificates.
```
@@ -339,7 +354,8 @@ Transient SSL errors (like connection resets) are automatically retried during u
### Resource provisioning failed
**Error:**
-```
+
+```text
Failed to provision resources: [error details]
```
@@ -361,7 +377,8 @@ Failed to provision resources: [error details]
### Endpoint not deployed
**Error:**
-```
+
+```text
Endpoint URL not available - endpoint may not be deployed
```
@@ -378,7 +395,8 @@ Endpoint URL not available - endpoint may not be deployed
### Execution timeout
**Error:**
-```
+
+```text
Execution timeout on [endpoint] after [N]s
```
@@ -402,7 +420,8 @@ Execution timeout on [endpoint] after [N]s
### Connection failed
**Error:**
-```
+
+```text
Failed to connect to endpoint [name] ([url])
```
@@ -417,7 +436,8 @@ Failed to connect to endpoint [name] ([url])
### HTTP errors from endpoint
**Error:**
-```
+
+```text
HTTP error from endpoint [name]: 500 - Internal Server Error
```
@@ -443,7 +463,8 @@ HTTP error from endpoint [name]: 500 - Internal Server Error
### Serialization errors
**Error:**
-```
+
+```text
Failed to deserialize result: [error]
```
@@ -457,7 +478,6 @@ Failed to deserialize result: [error]
```python
# Correct
return {"result": tensor.tolist()}
-
# Incorrect - tensor is not serializable
return {"result": tensor}
```
@@ -467,7 +487,8 @@ Failed to deserialize result: [error]
### Payload too large
**Error:**
-```
+
+```text
Payload size X MB exceeds limit of 10.0 MB
```
@@ -487,7 +508,6 @@ Payload size X MB exceeds limit of 10.0 MB
2. **Compress data before sending**: For data that must be passed directly, use compression:
```python
import gzip
-
compressed = gzip.compress(data.tobytes())
# Pass compressed bytes instead
```
@@ -497,7 +517,8 @@ Payload size X MB exceeds limit of 10.0 MB
### Local module payload too large
**Error:**
-```
+
+```text
Inline module payload is X bytes, over the 8388608-byte live-serverless cap.
Use `flash deploy` for endpoints with large local dependencies.
```
@@ -518,7 +539,8 @@ See [Live execution size limit](/flash/create-endpoints#live-execution-size-limi
### Deserialization timeout
**Error:**
-```
+
+```text
Deserialization timed out after 30s
```
@@ -529,7 +551,8 @@ Deserialization timed out after 30s
### Circuit breaker open
**Error:**
-```
+
+```text
Circuit breaker is open. Retry in [N] seconds
```
@@ -579,7 +602,8 @@ Circuit breaker is open. Retry in [N] seconds
### Module not found
**Error (in worker logs):**
-```
+
+```text
ModuleNotFoundError: No module named 'transformers'
```
diff --git a/flash/windows-wsl2.mdx b/flash/windows-wsl2.mdx
index 5ee08f7c..6325932a 100644
--- a/flash/windows-wsl2.mdx
+++ b/flash/windows-wsl2.mdx
@@ -2,8 +2,13 @@
title: "Use Flash on Windows"
sidebarTitle: "Windows prerequisites"
description: "Set up WSL2 with Ubuntu to run Flash on Windows. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
Flash runs natively on macOS and Linux. On Windows, you can run Flash through Windows Subsystem for Linux (WSL2), which provides a full Linux environment on your machine.
## Requirements
From 8ea5d836b5589a86b911c9987fab6369dbb8206b Mon Sep 17 00:00:00 2001
From: lgunreddi
Date: Fri, 2 Oct 2026 13:53:43 -0700
Subject: [PATCH 09/12] Updated mintlify pages
- Updated flash/custom-docker-images.mdx
- Updated flash/configuration/storage.mdx
- Updated flash/configuration/gpu-types.mdx
- Updated flash/configuration/cpu-types.mdx
- Updated flash/configuration/parameters.mdx
- Updated flash/configuration/best-practices.mdx
- Updated flash/apps/overview.mdx
- Updated flash/apps/build-app.mdx
- Updated flash/apps/initialize-project.mdx
- Updated flash/apps/customize-app.mdx
- Updated flash/apps/local-testing.mdx
- Updated flash/apps/apps-and-environments.mdx
- Updated flash/apps/deploy-apps.mdx
- Updated flash/apps/requests.mdx
- Updated flash/cli/init.mdx
- Updated flash/cli/login.mdx
- Updated flash/cli/dev.mdx
- Updated flash/cli/build.mdx
- Updated flash/cli/deploy.mdx
- Updated flash/cli/env.mdx
Mintlify-Source: dashboard-editor
---
flash/apps/apps-and-environments.mdx | 7 ++++++-
flash/apps/build-app.mdx | 5 +++++
flash/apps/customize-app.mdx | 5 +++++
flash/apps/deploy-apps.mdx | 5 +++++
flash/apps/initialize-project.mdx | 5 +++++
flash/apps/local-testing.mdx | 5 +++++
flash/apps/overview.mdx | 5 +++++
flash/apps/requests.mdx | 5 +++++
flash/cli/build.mdx | 7 ++++++-
flash/cli/deploy.mdx | 5 +++++
flash/cli/dev.mdx | 5 +++++
flash/cli/env.mdx | 5 +++++
flash/cli/init.mdx | 5 +++++
flash/cli/login.mdx | 5 +++++
flash/configuration/best-practices.mdx | 7 ++++++-
flash/configuration/cpu-types.mdx | 5 +++++
flash/configuration/gpu-types.mdx | 5 +++++
flash/configuration/parameters.mdx | 5 +++++
flash/configuration/storage.mdx | 5 +++++
flash/custom-docker-images.mdx | 5 +++++
20 files changed, 103 insertions(+), 3 deletions(-)
diff --git a/flash/apps/apps-and-environments.mdx b/flash/apps/apps-and-environments.mdx
index 63ab6d62..146cd65b 100644
--- a/flash/apps/apps-and-environments.mdx
+++ b/flash/apps/apps-and-environments.mdx
@@ -2,8 +2,13 @@
title: "Apps and environments"
sidebarTitle: "Apps and environments"
description: "Understanding Flash's two-level deployment structure for organizing projects and managing deployments."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
Flash uses a two-level organizational structure for deployments: **apps** and **environments**. Understanding this structure helps you organize projects, manage multiple deployment stages, and isolate resources effectively.
## Flash apps
@@ -167,4 +172,4 @@ uv run flash env list
Deleting an app or environment is irreversible. All endpoints and configuration are permanently removed.
-
\ No newline at end of file
+
diff --git a/flash/apps/build-app.mdx b/flash/apps/build-app.mdx
index dfac947d..67aee9de 100644
--- a/flash/apps/build-app.mdx
+++ b/flash/apps/build-app.mdx
@@ -2,8 +2,13 @@
title: "Build a Flash app"
sidebarTitle: "Build a Flash app"
description: "Create a Flash app, test it locally, and deploy it to production. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
Flash apps let you build APIs to serve AI/ML workloads on Runpod Serverless. This guide walks you through the process of building a Flash app from scratch, from project initialization and local testing to production deployment.
diff --git a/flash/apps/customize-app.mdx b/flash/apps/customize-app.mdx
index 5bae29c5..55c5b3a3 100644
--- a/flash/apps/customize-app.mdx
+++ b/flash/apps/customize-app.mdx
@@ -2,10 +2,15 @@
title: "Customize your Flash app"
sidebarTitle: "Customize your app"
description: "Modify the Flash project template to build your application. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
import { LoadBalancingEndpointsTooltip, QueueBasedEndpointsTooltip } from "/snippets/tooltips.jsx";
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
After running `flash init`, you have a working project template with example and . This guide shows you how to customize the template to build your application.
## Endpoint types
diff --git a/flash/apps/deploy-apps.mdx b/flash/apps/deploy-apps.mdx
index 7fe26307..4040880c 100644
--- a/flash/apps/deploy-apps.mdx
+++ b/flash/apps/deploy-apps.mdx
@@ -2,8 +2,13 @@
title: "Deploy Flash apps to Runpod"
sidebarTitle: "Deploy to Runpod"
description: "Build and deploy your Flash app for production serving. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
When you're satisfied with your endpoint functions and ready to move to production, use `flash deploy` to build and deploy your Flash application:
```bash
diff --git a/flash/apps/initialize-project.mdx b/flash/apps/initialize-project.mdx
index 4a07e642..a0301088 100644
--- a/flash/apps/initialize-project.mdx
+++ b/flash/apps/initialize-project.mdx
@@ -2,10 +2,15 @@
title: "Initialize a Flash app project"
sidebarTitle: "Initialize a project"
description: "Use flash init to create a new Flash project with a ready-to-use structure. Review configuration and usage details for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
import { LoadBalancingEndpointsTooltip, QueueBasedEndpointsTooltip } from "/snippets/tooltips.jsx";
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
The `flash init` command creates a new Flash project with a complete project structure, including example and , and configuration files. This gives you a working starting point for building Flash applications.
Use `flash init` whenever you want to start a new Flash project, fully configured for you to run `flash dev` and `flash deploy`.
diff --git a/flash/apps/local-testing.mdx b/flash/apps/local-testing.mdx
index 4ecfbbed..96185ad0 100644
--- a/flash/apps/local-testing.mdx
+++ b/flash/apps/local-testing.mdx
@@ -2,8 +2,13 @@
title: "Test Flash apps locally"
sidebarTitle: "Test locally"
description: "Use flash dev to test your Flash application locally before deploying. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
The `flash dev` command starts a local development server that lets you test your Flash application before deploying to production. The development server runs locally and updates automatically as you edit files.
When you call a `@Endpoint` function, Flash sends the latest function code to Serverless workers on Runpod, so your changes are reflected immediately.
diff --git a/flash/apps/overview.mdx b/flash/apps/overview.mdx
index b8e32cfe..8c2dc75b 100644
--- a/flash/apps/overview.mdx
+++ b/flash/apps/overview.mdx
@@ -2,10 +2,15 @@
title: "Overview"
sidebarTitle: "Overview"
description: "Understand the Flash app development lifecycle. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
import { ServerlessTooltip } from "/snippets/tooltips.jsx";
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
A Flash app is a collection of endpoints deployed to Runpod.
diff --git a/flash/apps/requests.mdx b/flash/apps/requests.mdx
index df5fc730..afc1e112 100644
--- a/flash/apps/requests.mdx
+++ b/flash/apps/requests.mdx
@@ -2,8 +2,13 @@
title: "Send API requests to deployed endpoints"
sidebarTitle: "Send API requests"
description: "Call your deployed Flash endpoints using HTTP requests for queue-based and load-balanced configurations."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
After deploying your Flash app with `flash deploy`, you can call your endpoints directly via HTTP. The request format depends on whether you're using queue-based or load-balanced configurations.
## Authentication
diff --git a/flash/cli/build.mdx b/flash/cli/build.mdx
index 3241a5d0..d4c9ac6f 100644
--- a/flash/cli/build.mdx
+++ b/flash/cli/build.mdx
@@ -2,8 +2,13 @@
title: "build"
sidebarTitle: "build"
description: "Build a deployment-ready Flash application artifact without deploying, with controls for dependencies, exclusions, and output files."
+canonical: "https://docs.runpod.io/sdk/cli"
---
+
+ The Flash CLI is now part of the `rp` CLI that ships with the [Runpod SDK](/sdk/overview). This page documents the standalone `flash` command from the `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [`rp` CLI](/sdk/cli). To see how `flash` commands map to `rp flash`, see [What changed](/sdk/whats-changed#cli-commands).
+
+
Build a deployment-ready artifact for your Flash application without deploying. Use this for more control over the build process or to inspect the artifact before deploying.
```bash
@@ -83,7 +88,7 @@ Local (non-pip) modules that your endpoints import are bundled automatically, pr
If shipped code imports a local module that an ignore rule excludes (for example, a `test_*.py` sibling or a file under `tests/`), the build fails with a `LocalModuleResolutionError` instead of silently overriding your ignore rules or shipping a broken artifact. Flash names each excluded file and the file that imports it:
-```
+```text
Shipped code imports local modules that the build ignore rules (.gitignore or built-in defaults) exclude:
utils/helpers.py (imported by endpoint.py)
diff --git a/flash/cli/deploy.mdx b/flash/cli/deploy.mdx
index e8b9d881..8ee98c68 100644
--- a/flash/cli/deploy.mdx
+++ b/flash/cli/deploy.mdx
@@ -2,8 +2,13 @@
title: "deploy"
sidebarTitle: "deploy"
description: "Build and deploy a Flash application to Runpod Serverless, select an environment, preview the build, and control packaged dependencies."
+canonical: "https://docs.runpod.io/sdk/cli"
---
+
+ The Flash CLI is now part of the `rp` CLI that ships with the [Runpod SDK](/sdk/overview). This page documents the standalone `flash` command from the `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [`rp` CLI](/sdk/cli). To see how `flash` commands map to `rp flash`, see [What changed](/sdk/whats-changed#cli-commands).
+
+
Build and deploy your Flash application to Runpod Serverless endpoints in one step. This is the primary command for getting your application running in the cloud.
```bash
diff --git a/flash/cli/dev.mdx b/flash/cli/dev.mdx
index e4dc9d98..2f894d40 100644
--- a/flash/cli/dev.mdx
+++ b/flash/cli/dev.mdx
@@ -2,8 +2,13 @@
title: "dev"
sidebarTitle: "dev"
description: "Run a local Flash development server, test Endpoint functions on Runpod Serverless, and configure provisioning, ports, and updates."
+canonical: "https://docs.runpod.io/sdk/cli"
---
+
+ The Flash CLI is now part of the `rp` CLI that ships with the [Runpod SDK](/sdk/overview). This page documents the standalone `flash` command from the `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [`rp` CLI](/sdk/cli). To see how `flash` commands map to `rp flash`, see [What changed](/sdk/whats-changed#cli-commands).
+
+
Start the Flash development server for local testing with automatic updates. A local development server provides a unified interface for testing while `@Endpoint` functions execute on Runpod Serverless.
```bash
diff --git a/flash/cli/env.mdx b/flash/cli/env.mdx
index 780fa389..8f827a09 100644
--- a/flash/cli/env.mdx
+++ b/flash/cli/env.mdx
@@ -2,8 +2,13 @@
title: "env"
sidebarTitle: "env"
description: "Create, inspect, list, and delete isolated Flash deployment environments for development, staging, and production applications."
+canonical: "https://docs.runpod.io/sdk/cli"
---
+
+ The Flash CLI is now part of the `rp` CLI that ships with the [Runpod SDK](/sdk/overview). This page documents the standalone `flash` command from the `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [`rp` CLI](/sdk/cli). To see how `flash` commands map to `rp flash`, see [What changed](/sdk/whats-changed#cli-commands).
+
+
Manage deployment environments for Flash applications. Environments are isolated deployment contexts (like `dev`, `staging`, `production`) within a Flash app.
```bash Command
diff --git a/flash/cli/init.mdx b/flash/cli/init.mdx
index a8fe5359..e9f09b55 100644
--- a/flash/cli/init.mdx
+++ b/flash/cli/init.mdx
@@ -2,8 +2,13 @@
title: "init"
sidebarTitle: "init"
description: "Initialize a Flash project with a FastAPI server, example GPU and CPU workers, configuration files, and a ready-to-run directory structure."
+canonical: "https://docs.runpod.io/sdk/cli"
---
+
+ The Flash CLI is now part of the `rp` CLI that ships with the [Runpod SDK](/sdk/overview). This page documents the standalone `flash` command from the `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [`rp` CLI](/sdk/cli). To see how `flash` commands map to `rp flash`, see [What changed](/sdk/whats-changed#cli-commands).
+
+
Create a new Flash project with a ready-to-use template structure including a FastAPI server, example GPU and CPU workers, and configuration files.
```bash
diff --git a/flash/cli/login.mdx b/flash/cli/login.mdx
index 2ae39ddf..2c57d01b 100644
--- a/flash/cli/login.mdx
+++ b/flash/cli/login.mdx
@@ -2,8 +2,13 @@
title: "login"
sidebarTitle: "login"
description: "Authenticate the Flash CLI with Runpod, save your API key locally, and configure browser-based authorization options and timeouts."
+canonical: "https://docs.runpod.io/sdk/cli"
---
+
+ The Flash CLI is now part of the `rp` CLI that ships with the [Runpod SDK](/sdk/overview). This page documents the standalone `flash` command from the `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [`rp` CLI](/sdk/cli). To see how `flash` commands map to `rp flash`, see [What changed](/sdk/whats-changed#cli-commands).
+
+
Authenticate with Runpod and save your API key for all Flash operations, including CLI commands and standalone `@Endpoint` functions.
```bash
diff --git a/flash/configuration/best-practices.mdx b/flash/configuration/best-practices.mdx
index 5f263068..eaddc0f4 100644
--- a/flash/configuration/best-practices.mdx
+++ b/flash/configuration/best-practices.mdx
@@ -2,8 +2,13 @@
title: "Configuration best practices"
sidebarTitle: "Best practices"
description: "Recommended configurations for production, development, and cost optimization. Review configuration and usage details for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
This guide provides best practices for configuring Flash endpoints based on your use case. Recommendations are organized by workload type and optimization goal.
## Production workloads
@@ -167,4 +172,4 @@ Before deploying to production, verify:
- **Storage**: Network volume attached if using large models or datasets
- **Environment variables**: All configuration and secrets passed via `env` parameter
- **Monitoring**: Health check routes implemented (load balancers)
-- **Testing**: Tested locally with `flash dev` before production deployment
\ No newline at end of file
+- **Testing**: Tested locally with `flash dev` before production deployment
diff --git a/flash/configuration/cpu-types.mdx b/flash/configuration/cpu-types.mdx
index fe51dab2..adc3fea1 100644
--- a/flash/configuration/cpu-types.mdx
+++ b/flash/configuration/cpu-types.mdx
@@ -2,8 +2,13 @@
title: "CPU types"
sidebarTitle: "CPU types"
description: "Available CPU instance types for Flash endpoints. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
Flash provides access to CPU-only compute instances for workloads that don't require GPU acceleration. This reference lists all available CPU instance types.
## Using CPU instances
diff --git a/flash/configuration/gpu-types.mdx b/flash/configuration/gpu-types.mdx
index 91889b89..f12670a7 100644
--- a/flash/configuration/gpu-types.mdx
+++ b/flash/configuration/gpu-types.mdx
@@ -2,8 +2,13 @@
title: "GPU types"
sidebarTitle: "GPU types"
description: "Available GPU pools and specific GPU types for Flash endpoints. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
Flash provides access to a wide range of NVIDIA GPUs through both pool-based and specific GPU selection. This page lists all available GPU types and explains how to use them.
## GPU selection methods
diff --git a/flash/configuration/parameters.mdx b/flash/configuration/parameters.mdx
index b1f551b2..1d21635d 100644
--- a/flash/configuration/parameters.mdx
+++ b/flash/configuration/parameters.mdx
@@ -2,8 +2,13 @@
title: "Endpoint parameters"
sidebarTitle: "Parameters"
description: "Complete reference for all Endpoint class parameters. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
This page provides a complete reference for all parameters available on the `Endpoint` class.
## Parameter overview
diff --git a/flash/configuration/storage.mdx b/flash/configuration/storage.mdx
index 51df6fe0..2c571667 100644
--- a/flash/configuration/storage.mdx
+++ b/flash/configuration/storage.mdx
@@ -2,10 +2,15 @@
title: "Storage"
sidebarTitle: "Storage"
description: "Understand container disk and network volume storage for Flash workloads. Review configuration and usage details for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
import { NetworkVolumesTooltip, WorkerContainerDiskTooltip } from "/snippets/tooltips.jsx"
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
Flash workers have access to two types of storage: for temporary data and for persistent, sharable data.
## Container disk
diff --git a/flash/custom-docker-images.mdx b/flash/custom-docker-images.mdx
index 586aacd0..50fb5f94 100644
--- a/flash/custom-docker-images.mdx
+++ b/flash/custom-docker-images.mdx
@@ -2,8 +2,13 @@
title: "Use custom containers with Flash"
sidebarTitle: "Custom containers"
description: "Deploy pre-built Docker images with Flash using Endpoint. Review setup, configuration, deployment, and usage guidance for Runpod Flash."
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
The `@Endpoint` decorator handles most use cases, allowing you to execute arbitrary Python code remotely without managing Docker images.
However, for specialized environments that require custom Docker images, you can use `Endpoint(image=...)` to deploy your own Docker images.
From 3a7e4f22fcf8a79016fec73fca576b3eda931074 Mon Sep 17 00:00:00 2001
From: lgunreddi
Date: Fri, 2 Oct 2026 13:54:07 -0700
Subject: [PATCH 10/12] Updated mintlify pages
- Updated flash/cli/app.mdx
- Updated flash/cli/undeploy.mdx
- Updated flash/cli/update.mdx
- Updated tutorials/flash/image-generation-with-sdxl.mdx
- Updated tutorials/flash/text-generation-with-transformers.mdx
Mintlify-Source: dashboard-editor
---
flash/cli/app.mdx | 5 +++++
flash/cli/undeploy.mdx | 5 +++++
flash/cli/update.mdx | 7 ++++++-
tutorials/flash/image-generation-with-sdxl.mdx | 6 +++++-
tutorials/flash/text-generation-with-transformers.mdx | 4 ++++
5 files changed, 25 insertions(+), 2 deletions(-)
diff --git a/flash/cli/app.mdx b/flash/cli/app.mdx
index 83dc62b0..4ac175bd 100644
--- a/flash/cli/app.mdx
+++ b/flash/cli/app.mdx
@@ -2,8 +2,13 @@
title: "app"
sidebarTitle: "app"
description: "Create, inspect, list, and delete Flash applications that organize deployment environments, build artifacts, and configuration."
+canonical: "https://docs.runpod.io/sdk/cli"
---
+
+ The Flash CLI is now part of the `rp` CLI that ships with the [Runpod SDK](/sdk/overview). This page documents the standalone `flash` command from the `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [`rp` CLI](/sdk/cli). To see how `flash` commands map to `rp flash`, see [What changed](/sdk/whats-changed#cli-commands).
+
+
Manage Flash applications. An app is the top-level container that groups your deployment environments, build artifacts, and configuration.
```bash Command
diff --git a/flash/cli/undeploy.mdx b/flash/cli/undeploy.mdx
index 22761b78..8f2b3085 100644
--- a/flash/cli/undeploy.mdx
+++ b/flash/cli/undeploy.mdx
@@ -2,8 +2,13 @@
title: "undeploy"
sidebarTitle: "undeploy"
description: "List or delete Runpod Serverless endpoints created by Flash, including individual deployments and local development resources."
+canonical: "https://docs.runpod.io/sdk/cli"
---
+
+ The Flash CLI is now part of the `rp` CLI that ships with the [Runpod SDK](/sdk/overview). This page documents the standalone `flash` command from the `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [`rp` CLI](/sdk/cli). To see how `flash` commands map to `rp flash`, see [What changed](/sdk/whats-changed#cli-commands).
+
+
Manage and delete Runpod Serverless endpoints deployed via Flash. Use this command to clean up endpoints created during local development with `flash dev`.
```bash
diff --git a/flash/cli/update.mdx b/flash/cli/update.mdx
index cfad581b..f61debce 100644
--- a/flash/cli/update.mdx
+++ b/flash/cli/update.mdx
@@ -2,8 +2,13 @@
title: "update"
sidebarTitle: "update"
description: "Update the Flash CLI to the latest or a selected version, understand automatic update checks, and configure when those checks run."
+canonical: "https://docs.runpod.io/sdk/cli"
---
+
+ The Flash CLI is now part of the `rp` CLI that ships with the [Runpod SDK](/sdk/overview). This page documents the standalone `flash` command from the `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [`rp` CLI](/sdk/cli). To see how `flash` commands map to `rp flash`, see [What changed](/sdk/whats-changed#cli-commands).
+
+
Update the Flash CLI to the latest version or a specific version. The command fetches version information from PyPI and installs using uv (when available) or pip.
```bash
@@ -34,7 +39,7 @@ Target version to install. If not specified, updates to the latest version avail
Flash checks for newer versions in the background when you run most commands. If an update is available, a notice appears after the command completes:
-```
+```text
A new version of runpod-flash is available: 2.0.0
Run 'flash update' to upgrade.
```
diff --git a/tutorials/flash/image-generation-with-sdxl.mdx b/tutorials/flash/image-generation-with-sdxl.mdx
index 22a15764..9dc11143 100644
--- a/tutorials/flash/image-generation-with-sdxl.mdx
+++ b/tutorials/flash/image-generation-with-sdxl.mdx
@@ -5,10 +5,14 @@ description: "Learn how to use Flash with Stable Diffusion XL to generate high-q
tag: "BETA"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
This tutorial shows you how to build an image generation script using Flash and Stable Diffusion XL (SDXL). You'll learn how to load a pretrained diffusion model on a GPU worker and generate images from text prompts.
-
+ 
## Requirements
diff --git a/tutorials/flash/text-generation-with-transformers.mdx b/tutorials/flash/text-generation-with-transformers.mdx
index 40c9caa7..b889cc78 100644
--- a/tutorials/flash/text-generation-with-transformers.mdx
+++ b/tutorials/flash/text-generation-with-transformers.mdx
@@ -5,6 +5,10 @@ description: "Learn how to use Flash with Hugging Face transformers to build a G
tag: "BETA"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
This tutorial shows you how to build a text generation script using Flash and Hugging Face's transformers library. You'll learn how to load a pretrained language model on a GPU worker and generate text from prompts.
## Requirements
From 6325c24605aaa0748a3751207f01bb123a8688e3 Mon Sep 17 00:00:00 2001
From: lgunreddi
Date: Fri, 2 Oct 2026 13:54:33 -0700
Subject: [PATCH 11/12] Updated mintlify pages
- Updated tutorials/flash/image-generation-with-sdxl.mdx
- Updated tutorials/flash/text-generation-with-transformers.mdx
- Updated tutorials/flash/build-rest-api-with-load-balancer.mdx
- Updated serverless/sdks.mdx
Mintlify-Source: dashboard-editor
---
serverless/sdks.mdx | 2 +-
tutorials/flash/build-rest-api-with-load-balancer.mdx | 5 +++++
tutorials/flash/image-generation-with-sdxl.mdx | 1 +
tutorials/flash/text-generation-with-transformers.mdx | 1 +
4 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/serverless/sdks.mdx b/serverless/sdks.mdx
index 50647dc3..2ac33430 100644
--- a/serverless/sdks.mdx
+++ b/serverless/sdks.mdx
@@ -6,7 +6,7 @@ description: "Install and configure the Serverless SDK for Python, JavaScript, o
## Python
-The Python SDK requires Python 3.10 or higher.
+The Python SDK requires Python 3.10 or higher. The same `runpod` package also includes the app SDK (formerly Flash) and the `rp` CLI. See the [Runpod SDK overview](/sdk/overview) for everything the package can do.
### Install
diff --git a/tutorials/flash/build-rest-api-with-load-balancer.mdx b/tutorials/flash/build-rest-api-with-load-balancer.mdx
index 033e2c5e..cbacebf5 100644
--- a/tutorials/flash/build-rest-api-with-load-balancer.mdx
+++ b/tutorials/flash/build-rest-api-with-load-balancer.mdx
@@ -3,8 +3,13 @@ title: "Build a REST API with Flash"
sidebarTitle: "Build a REST API"
description: "Learn how to build a production-ready REST API using Flash load-balanced endpoints with custom HTTP routes."
tag: "BETA"
+canonical: "https://docs.runpod.io/sdk/overview"
---
+
+ Flash is now part of the [Runpod SDK](/sdk/overview). This page documents the standalone `runpod-flash` package, which keeps working but no longer gets new features. For new projects, use the [Runpod SDK](/sdk/overview). To see how Flash commands and imports map to the SDK, see [What changed](/sdk/whats-changed).
+
+
This tutorial shows you how to build a REST API using Flash load-balanced endpoints. You'll create a multi-route API that handles text processing, demonstrates both CPU and GPU endpoints, and deploys to production.
## Requirements
diff --git a/tutorials/flash/image-generation-with-sdxl.mdx b/tutorials/flash/image-generation-with-sdxl.mdx
index 9dc11143..852e7e08 100644
--- a/tutorials/flash/image-generation-with-sdxl.mdx
+++ b/tutorials/flash/image-generation-with-sdxl.mdx
@@ -3,6 +3,7 @@ title: "Generate images with Flash and SDXL"
sidebarTitle: "Generate images with SDXL"
description: "Learn how to use Flash with Stable Diffusion XL to generate high-quality images from text prompts. Follow the implementation steps in this Runpod tutorial."
tag: "BETA"
+canonical: "https://docs.runpod.io/sdk/overview"
---
diff --git a/tutorials/flash/text-generation-with-transformers.mdx b/tutorials/flash/text-generation-with-transformers.mdx
index b889cc78..27bc94b2 100644
--- a/tutorials/flash/text-generation-with-transformers.mdx
+++ b/tutorials/flash/text-generation-with-transformers.mdx
@@ -3,6 +3,7 @@ title: "Generate text with Flash and transformers"
sidebarTitle: "Generate text with transformers"
description: "Learn how to use Flash with Hugging Face transformers to build a GPU-accelerated text generation application."
tag: "BETA"
+canonical: "https://docs.runpod.io/sdk/overview"
---
From 7c8f5a83ca2e278cd5e3245c60ceb35dbc22755d Mon Sep 17 00:00:00 2001
From: lgunreddi
Date: Fri, 2 Oct 2026 14:02:02 -0700
Subject: [PATCH 12/12] Updated mintlify pages
- Updated sdk/cli.mdx
Mintlify-Source: dashboard-editor
---
sdk/cli.mdx | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sdk/cli.mdx b/sdk/cli.mdx
index a10eb6f6..f0202c9d 100644
--- a/sdk/cli.mdx
+++ b/sdk/cli.mdx
@@ -110,7 +110,7 @@ rp flash undeploy --app my-app
```
- Undeploying an app doesn't delete network volumes it created. Volumes continue to incur storage charges until you delete them from the [Storage page](https://console.runpod.io/user/storage) in the console.
+ Undeploying an app doesn't delete network volumes it created. Volumes continue to incur storage charges until you delete them. See [Network volumes](/storage/network-volumes) to learn how to delete a volume.
{/* TODO(DOCS-504): The warning above reflects SLS-647 (open). Remove or update it if a volume delete command ships before launch. */}