---
title: "List sandboxes"
method: GET
path: "/sandboxes"
tags: ["Sandboxes"]
---

# List sandboxes

`GET /sandboxes`

## Request

- Base URL: `https://api.render.com/v1`
- URL: `https://api.render.com/v1/sandboxes`
- Auth: HTTP bearer

List sandboxes for a single workspace. Sandboxes are scoped to the region of
their workspace's sandbox group, so one workspace must be named per request.

## Query parameters

- `ownerId` string, required
- `sandboxGroupId` string
- `cursor` string
- `limit` integer: Defaults to 20
- `status` string[]

## Response `200`

OK

- SandboxWithCursor[]
  - `sandbox` Schema, required (unresolved $ref)
  - `cursor` string, required

## Other responses

- `400`: The request could not be understood by the server.
- `401`: Authorization information is missing or invalid.
- `403`: You do not have permissions for the requested resource. If a scoped API token does not satisfy the endpoint's minimum scope requirements, the response has code insufficient_token_scope and its message lists all minimum required scopes. Broader scopes that include their permissions also satisfy the requirements. Passing this check does not guarantee access to the requested resource or to conditional operations.
- `404`: Unable to find the requested resource.
- `429`: Rate limit has been surpassed. Rate-limited endpoints also return `RateLimit-Limit`, `RateLimit-Remaining`, and `RateLimit-Reset` on successful responses so clients can track their remaining quota.
- `500`: An unexpected server error has occurred.
- `503`: Server currently unavailable.

## Changes

- **2026-11-03** `6ac5d3d47362`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/render/apis/render-public-api/changes/sandboxes/get.md)

---

[API](https://skmtc.dev/render/apis/render-public-api.md) - [All operations](https://skmtc.dev/render/apis/render-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/render/apis/render-public-api/revisions/6ac5d3d47362?raw)
