# ListSnapshots lists snapshots in the caller's owner scope.


[API catalog](/reference/api/) · [Docker Sandboxes overview](/reference/api/sandboxes/latest/) · [Product manual](https://docs.docker.com/ai/sandboxes-api/) · [OpenAPI specification](/reference/api/sandboxes/api.yaml)

API version: v1


> This API is experimental. Features, interfaces,
> and behavior may change.




`GET /v1/snapshots`

ListSnapshots lists snapshots in the caller's owner scope.

## Connection and access

[API connection and authentication guidance](/reference/api/sandboxes/latest/#authentication)


Server: `https://connect.docker.com/sandboxes`

Effective security: alternatives are OR; schemes within an alternative are AND. An empty array declares no HTTP authentication requirement.

```json
[
  {
    "bearer": []
  }
]
```

## Example request

Replace placeholders and provide the required credentials or request body.

```console
curl \
  --request GET \
  --header "Authorization: Bearer ${TOKEN}" \
  --header 'Accept: application/json' \
  'https://connect.docker.com/sandboxes/v1/snapshots'
```



## Parameters

### sandbox

Location: query. Required: no.

(OPTIONAL) sandbox is the complete resource name, in the form sandboxes/{sandbox}.

```json
{
  "description": "(OPTIONAL) sandbox is the complete resource name, in the form sandboxes/{sandbox}.",
  "in": "query",
  "name": "sandbox",
  "pointer": "/paths/~1v1~1snapshots/get/parameters/0",
  "required": false,
  "schema": {
    "pattern": "^(?:sandboxes/[^/]+)?$",
    "title": "sandbox",
    "type": "string"
  }
}
```

### pageSize

Location: query. Required: no.

page_size is an optional page size.

Omitted or zero uses the backend default. Unless the operation states otherwise, page-size limits and handling of larger requests are backend-specific; use the backend support guide. Continue with nextPageToken until it is empty.

```json
{
  "description": "page_size is an optional page size.\n\nOmitted or zero uses the backend default. Unless the operation states otherwise, page-size limits and handling of larger requests are backend-specific; use the backend support guide. Continue with nextPageToken until it is empty.",
  "in": "query",
  "name": "pageSize",
  "pointer": "/paths/~1v1~1snapshots/get/parameters/1",
  "required": false,
  "schema": {
    "title": "page_size",
    "type": "integer"
  }
}
```

### pageToken

Location: query. Required: no.

page_token is an opaque continuation token.

```json
{
  "description": "page_token is an opaque continuation token.",
  "in": "query",
  "name": "pageToken",
  "pointer": "/paths/~1v1~1snapshots/get/parameters/2",
  "required": false,
  "schema": {
    "title": "page_token",
    "type": "string"
  }
}
```

### filter

Location: query. Required: no.

filter is comma-separated exact-match field=value terms; the portable fields are
name, display_name and uid.

```json
{
  "description": "filter is comma-separated exact-match field=value terms; the portable fields are\nname, display_name and uid.",
  "in": "query",
  "name": "filter",
  "pointer": "/paths/~1v1~1snapshots/get/parameters/3",
  "required": false,
  "schema": {
    "title": "filter",
    "type": "string"
  }
}
```

### orderBy

Location: query. Required: no.

order_by is a single order field with optional direction; the portable fields are
created_at and name.

```json
{
  "description": "order_by is a single order field with optional direction; the portable fields are\ncreated_at and name.",
  "in": "query",
  "name": "orderBy",
  "pointer": "/paths/~1v1~1snapshots/get/parameters/4",
  "required": false,
  "schema": {
    "title": "order_by",
    "type": "string"
  }
}
```

## Request and responses

### Response 200 application/json

Success


Schema:

```json
{
  "$ref": "#/components/schemas/ListSnapshotsResponse"
}
```










### Response default application/json

The structured Error body identifies the failure with a stable code and optional typed details.


Schema:

```json
{
  "$ref": "#/components/schemas/Error"
}
```









Schema example:
```json
{
  "code": "notFound",
  "details": [],
  "message": "sandbox not found"
}
```


## Complete operation contract

```json
{
  "description": "ListSnapshots lists snapshots in the caller's owner scope.",
  "operationId": "listSnapshots",
  "parameters": [
    {
      "description": "(OPTIONAL) sandbox is the complete resource name, in the form sandboxes/{sandbox}.",
      "in": "query",
      "name": "sandbox",
      "required": false,
      "schema": {
        "pattern": "^(?:sandboxes/[^/]+)?$",
        "title": "sandbox",
        "type": "string"
      }
    },
    {
      "description": "page_size is an optional page size.\n\nOmitted or zero uses the backend default. Unless the operation states otherwise, page-size limits and handling of larger requests are backend-specific; use the backend support guide. Continue with nextPageToken until it is empty.",
      "in": "query",
      "name": "pageSize",
      "required": false,
      "schema": {
        "title": "page_size",
        "type": "integer"
      }
    },
    {
      "description": "page_token is an opaque continuation token.",
      "in": "query",
      "name": "pageToken",
      "required": false,
      "schema": {
        "title": "page_token",
        "type": "string"
      }
    },
    {
      "description": "filter is comma-separated exact-match field=value terms; the portable fields are\nname, display_name and uid.",
      "in": "query",
      "name": "filter",
      "required": false,
      "schema": {
        "title": "filter",
        "type": "string"
      }
    },
    {
      "description": "order_by is a single order field with optional direction; the portable fields are\ncreated_at and name.",
      "in": "query",
      "name": "orderBy",
      "required": false,
      "schema": {
        "title": "order_by",
        "type": "string"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ListSnapshotsResponse"
          }
        }
      },
      "description": "Success"
    },
    "default": {
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      },
      "description": "The structured Error body identifies the failure with a stable code and optional typed details."
    }
  },
  "security": [
    {
      "bearer": []
    }
  ],
  "summary": "ListSnapshots lists snapshots in the caller's owner scope.",
  "tags": [
    "Snapshots"
  ],
  "x-sbx-authenticated-only": false,
  "x-sbx-conditional-permissions": [],
  "x-sbx-plane": "control",
  "x-sbx-required-permissions": [
    "snapshotsRead"
  ],
  "x-sbx-serving-surface": "management"
}
```

## Referenced schemas

- [#/components/schemas/Error](/reference/api/sandboxes/latest/schemas/Error/)

- [#/components/schemas/ListSnapshotsResponse](/reference/api/sandboxes/latest/schemas/ListSnapshotsResponse/)




