Daytona Snapshots API

The snapshots API from Daytona — 6 operation(s) for snapshots.

Operations 8

GET /snapshots List all snapshots #
POST /snapshots Create a new snapshot #
DELETE /snapshots/{id} Delete snapshot #
GET /snapshots/{id} Get snapshot by ID or name #
GET /snapshots/{id}/build-logs Get snapshot build logs #
GET /snapshots/{id}/build-logs-url Get snapshot build logs URL #
POST /snapshots/{id}/activate Activate a snapshot #
POST /snapshots/{id}/deactivate Deactivate a snapshot #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/daytona-io:daytona-io-snapshots-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

daytona-io-snapshots-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: support@daytona.com
    name: Daytona Platforms Inc.
    url: https://www.daytona.io
  description: Daytona AI platform API Docs
  license:
    name: Apache-2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  title: Daytona Snapshots API
  version: '1.0'
servers:
- url: http://localhost:3000
tags:
- name: Snapshots
paths:
  /snapshots:
    get:
      operationId: getAllSnapshots
      parameters:
      - description: Use with JWT to specify the organization ID
        explode: false
        in: header
        name: X-Daytona-Organization-ID
        required: false
        schema:
          type: string
        style: simple
      - description: Page number of the results
        explode: true
        in: query
        name: page
        required: false
        schema:
          default: 1
          minimum: 1
          type: integer
        style: form
      - description: Number of results per page
        explode: true
        in: query
        name: limit
        required: false
        schema:
          default: 100
          maximum: 200
          minimum: 1
          type: integer
        style: form
      - description: Filter by partial name match
        explode: true
        in: query
        name: name
        required: false
        schema:
          example: abc123
          type: string
        style: form
      - description: Filter by the ID of the sandbox the snapshot was created from
        explode: true
        in: query
        name: sourceSandboxId
        required: false
        schema:
          example: sandbox123
          type: string
        style: form
      - description: Field to sort by
        explode: true
        in: query
        name: sort
        required: false
        schema:
          default: lastUsedAt
          enum:
          - name
          - state
          - lastUsedAt
          - createdAt
          type: string
        style: form
      - description: Direction to sort by
        explode: true
        in: query
        name: order
        required: false
        schema:
          default: desc
          enum:
          - asc
          - desc
          type: string
        style: form
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedSnapshots'
          description: Paginated list of all snapshots
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: List all snapshots
      tags:
      - Snapshots
    post:
      operationId: createSnapshot
      parameters:
      - description: Use with JWT to specify the organization ID
        explode: false
        in: header
        name: X-Daytona-Organization-ID
        required: false
        schema:
          type: string
        style: simple
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateSnapshot'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SnapshotDto'
          description: The snapshot has been successfully created.
        '400':
          description: Bad request - Snapshots with tag ":latest" are not allowed
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Create a new snapshot
      tags:
      - Snapshots
  /snapshots/{id}:
    delete:
      operationId: removeSnapshot
      parameters:
      - description: Use with JWT to specify the organization ID
        explode: false
        in: header
        name: X-Daytona-Organization-ID
        required: false
        schema:
          type: string
        style: simple
      - description: Snapshot ID
        explode: false
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      responses:
        '200':
          description: Snapshot has been deleted
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Delete snapshot
      tags:
      - Snapshots
    get:
      operationId: getSnapshot
      parameters:
      - description: Use with JWT to specify the organization ID
        explode: false
        in: header
        name: X-Daytona-Organization-ID
        required: false
        schema:
          type: string
        style: simple
      - description: Snapshot ID or name
        explode: false
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SnapshotDto'
          description: The snapshot
        '404':
          description: Snapshot not found
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get snapshot by ID or name
      tags:
      - Snapshots
  /snapshots/{id}/build-logs:
    get:
      deprecated: true
      description: This endpoint is deprecated. Use `getSnapshotBuildLogsUrl` instead.
      operationId: getSnapshotBuildLogs
      parameters:
      - description: Use with JWT to specify the organization ID
        explode: false
        in: header
        name: X-Daytona-Organization-ID
        required: false
        schema:
          type: string
        style: simple
      - description: Snapshot ID
        explode: false
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - description: Whether to follow the logs stream
        explode: true
        in: query
        name: follow
        required: false
        schema:
          type: boolean
        style: form
      responses:
        '200':
          description: ''
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get snapshot build logs
      tags:
      - Snapshots
  /snapshots/{id}/build-logs-url:
    get:
      operationId: getSnapshotBuildLogsUrl
      parameters:
      - description: Use with JWT to specify the organization ID
        explode: false
        in: header
        name: X-Daytona-Organization-ID
        required: false
        schema:
          type: string
        style: simple
      - description: Snapshot ID
        explode: false
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Url'
          description: The snapshot build logs URL
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get snapshot build logs URL
      tags:
      - Snapshots
  /snapshots/{id}/activate:
    post:
      operationId: activateSnapshot
      parameters:
      - description: Use with JWT to specify the organization ID
        explode: false
        in: header
        name: X-Daytona-Organization-ID
        required: false
        schema:
          type: string
        style: simple
      - description: Snapshot ID
        explode: false
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SnapshotDto'
          description: The snapshot has been successfully activated.
        '400':
          description: Bad request - Snapshot is already active, not in inactive state, or has associated snapshot runners
        '404':
          description: Snapshot not found
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Activate a snapshot
      tags:
      - Snapshots
  /snapshots/{id}/deactivate:
    post:
      operationId: deactivateSnapshot
      parameters:
      - description: Use with JWT to specify the organization ID
        explode: false
        in: header
        name: X-Daytona-Organization-ID
        required: false
        schema:
          type: string
        style: simple
      - description: Snapshot ID
        explode: false
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      responses:
        '204':
          description: The snapshot has been successfully deactivated.
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Deactivate a snapshot
      tags:
      - Snapshots
components:
  schemas:
    SnapshotState:
      enum:
      - building
      - pending
      - pulling
      - snapshotting
      - active
      - inactive
      - error
      - build_failed
      - removing
      type: string
    CreateSnapshot:
      example:
        disk: 3
        imageName: ubuntu:22.04
        memory: 1
        buildInfo: ''
        regionId: regionId
        entrypoint: sleep infinity
        name: ubuntu-4vcpu-8ram-100gb
        cpu: 1
        gpu: 0
        gpuType:
        - H100
        sandboxClass: linux-vm
      properties:
        name:
          description: The name of the snapshot
          example: ubuntu-4vcpu-8ram-100gb
          type: string
        imageName:
          description: The image name of the snapshot
          example: ubuntu:22.04
          type: string
        entrypoint:
          description: The entrypoint command for the snapshot
          example: sleep infinity
          items:
            type: string
          type: array
        cpu:
          description: CPU cores allocated to the resulting sandbox
          example: 1
          type: integer
        gpu:
          description: GPU units allocated to the resulting sandbox
          example: 0
          type: integer
        gpuType:
          description: Preferred GPU type for the resulting sandbox.
          example:
          - H100
          items:
            $ref: '#/components/schemas/GpuType'
          type: array
        memory:
          description: Memory allocated to the resulting sandbox in GB
          example: 1
          type: integer
        disk:
          description: Disk space allocated to the sandbox in GB
          example: 3
          type: integer
        buildInfo:
          allOf:
          - $ref: '#/components/schemas/CreateBuildInfo'
          description: Build information for the snapshot
        regionId:
          description: ID of the region where the snapshot will be available. Defaults to organization default region if not specified.
          type: string
        sandboxClass:
          allOf:
          - $ref: '#/components/schemas/SandboxClass'
          description: Target sandbox class. Determines which runners can host sandboxes created from this snapshot.
          example: linux-vm
      required:
      - name
      type: object
    CreateBuildInfo:
      properties:
        dockerfileContent:
          description: The Dockerfile content used for the build
          example: 'FROM node:14

            WORKDIR /app

            COPY . .

            RUN npm install

            CMD ["npm", "start"]'
          type: string
        contextHashes:
          description: The context hashes used for the build
          example:
          - hash1
          - hash2
          items:
            type: string
          type: array
      required:
      - dockerfileContent
      type: object
    BuildInfo:
      properties:
        dockerfileContent:
          description: The Dockerfile content used for the build
          example: 'FROM node:14

            WORKDIR /app

            COPY . .

            RUN npm install

            CMD ["npm", "start"]'
          type: string
        contextHashes:
          description: The context hashes used for the build
          example:
          - hash1
          - hash2
          items:
            type: string
          type: array
        createdAt:
          description: The creation timestamp
          format: date-time
          type: string
        updatedAt:
          description: The last update timestamp
          format: date-time
          type: string
        snapshotRef:
          description: The snapshot reference
          example: daytonaio/sandbox:latest
          type: string
      required:
      - createdAt
      - snapshotRef
      - updatedAt
      type: object
    PaginatedSnapshots:
      example:
        total: 2
        totalPages: 9
        page: 7
        items:
        - imageName: imageName
          buildInfo: ''
          cpu: 6.027456183070403
          regionIds:
          - regionIds
          - regionIds
          gpu: 1.4658129805029452
          organizationId: organizationId
          general: true
          createdAt: '2000-01-23T04:56:07.000Z'
          disk: 5.637376656633329
          ref: daytonaio/sandbox:latest
          size: 0.8008281904610115
          mem: 5.962133916683182
          lastUsedAt: '2000-01-23T04:56:07.000Z'
          entrypoint:
          - entrypoint
          - entrypoint
          errorReason: errorReason
          sourceSandboxId: sandbox123
          name: name
          id: id
          state: ''
          initialRunnerId: runner123
          gpuType: H100
          updatedAt: '2000-01-23T04:56:07.000Z'
          sandboxClass: linux-vm
        - imageName: imageName
          buildInfo: ''
          cpu: 6.027456183070403
          regionIds:
          - regionIds
          - regionIds
          gpu: 1.4658129805029452
          organizationId: organizationId
          general: true
          createdAt: '2000-01-23T04:56:07.000Z'
          disk: 5.637376656633329
          ref: daytonaio/sandbox:latest
          size: 0.8008281904610115
          mem: 5.962133916683182
          lastUsedAt: '2000-01-23T04:56:07.000Z'
          entrypoint:
          - entrypoint
          - entrypoint
          errorReason: errorReason
          sourceSandboxId: sandbox123
          name: name
          id: id
          state: ''
          initialRunnerId: runner123
          gpuType: H100
          updatedAt: '2000-01-23T04:56:07.000Z'
          sandboxClass: linux-vm
      properties:
        items:
          items:
            $ref: '#/components/schemas/SnapshotDto'
          type: array
        total:
          type: integer
        page:
          type: integer
        totalPages:
          type: integer
      required:
      - items
      - page
      - total
      - totalPages
      type: object
    SnapshotDto:
      example:
        imageName: imageName
        buildInfo: ''
        cpu: 6.027456183070403
        regionIds:
        - regionIds
        - regionIds
        gpu: 1.4658129805029452
        organizationId: organizationId
        general: true
        createdAt: '2000-01-23T04:56:07.000Z'
        disk: 5.637376656633329
        ref: daytonaio/sandbox:latest
        size: 0.8008281904610115
        mem: 5.962133916683182
        lastUsedAt: '2000-01-23T04:56:07.000Z'
        entrypoint:
        - entrypoint
        - entrypoint
        errorReason: errorReason
        sourceSandboxId: sandbox123
        name: name
        id: id
        state: ''
        initialRunnerId: runner123
        gpuType: H100
        updatedAt: '2000-01-23T04:56:07.000Z'
        sandboxClass: linux-vm
      properties:
        id:
          type: string
        organizationId:
          type: string
        general:
          type: boolean
        name:
          type: string
        imageName:
          type: string
        state:
          allOf:
          - $ref: '#/components/schemas/SnapshotState'
        size:
          type:
          - number
          - 'null'
        entrypoint:
          items:
            type: string
          type:
          - array
          - 'null'
        cpu:
          type: number
        gpu:
          type: number
        gpuType:
          allOf:
          - $ref: '#/components/schemas/GpuType'
          description: The GPU type assigned to the snapshot
          example: H100
        mem:
          type: number
        disk:
          type: number
        errorReason:
          type:
          - string
          - 'null'
        createdAt:
          format: date-time
          type: string
        updatedAt:
          format: date-time
          type: string
        lastUsedAt:
          format: date-time
          type:
          - string
          - 'null'
        buildInfo:
          allOf:
          - $ref: '#/components/schemas/BuildInfo'
          description: Build information for the snapshot
        regionIds:
          description: IDs of regions where the snapshot is available
          items:
            type: string
          type: array
        initialRunnerId:
          description: The initial runner ID of the snapshot
          example: runner123
          type: string
        ref:
          description: The snapshot reference
          example: daytonaio/sandbox:latest
          type: string
        sourceSandboxId:
          description: The ID of the sandbox the snapshot was created from
          example: sandbox123
          type:
          - string
          - 'null'
        sandboxClass:
          description: The sandbox class of the snapshot
          enum:
          - linux-vm
          - container
          - windows
          example: linux-vm
          type: string
          x-enum-varnames:
          - LINUX_VM
          - CONTAINER
          - WINDOWS
      required:
      - cpu
      - createdAt
      - disk
      - entrypoint
      - errorReason
      - general
      - gpu
      - id
      - lastUsedAt
      - mem
      - name
      - size
      - sourceSandboxId
      - state
      - updatedAt
      type: object
    Url:
      example:
        url: url
      properties:
        url:
          description: URL response
          type: string
      required:
      - url
      type: object
    GpuType:
      enum:
      - H100
      - H200
      - B300
      - RTX-PRO-6000
      - RTX-4090
      - RTX-5090
      - MI355X
      type: string
      x-enum-varnames:
      - H100
      - H200
      - B300
      - RTX_PRO_6000
      - RTX_4090
      - RTX_5090
      - MI355X
    SandboxClass:
      enum:
      - linux-vm
      - container
      - windows
      type: string
      x-enum-varnames:
      - LINUX_VM
      - CONTAINER
      - WINDOWS
  securitySchemes:
    bearer:
      bearerFormat: JWT
      description: API Key access
      scheme: bearer
      type: http
    oauth2:
      openIdConnectUrl: http://localhost:3000/.well-known/openid-configuration
      type: openIdConnect
x-provenance:
  method: harvested
  publisher: Daytona
  source: https://www.daytona.io/docs/openapi.json
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)