Daytona runners API

The runners API from Daytona — 9 operation(s) for runners.

Operations 11

POST /runners Create runner #
GET /runners List all runners #
GET /runners/me Get info for authenticated runner #
GET /runners/by-sandbox/{sandboxId} Get runner by sandbox ID #
GET /runners/by-snapshot-ref Get runners by snapshot ref #
GET /runners/{id} Get runner by ID #
DELETE /runners/{id} Delete runner #
GET /runners/{id}/full Get runner by ID #
PATCH /runners/{id}/scheduling Update runner scheduling status #
PATCH /runners/{id}/draining Update runner draining status #
POST /runners/healthcheck Runner healthcheck #

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-runners-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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-runners-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Daytona Runners API
  description: Daytona AI platform API Docs
  version: '1.0'
  contact:
    name: Daytona Platforms Inc.
    url: https://www.daytona.io
    email: support@daytona.com
  license:
    name: Apache-2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: http://localhost:3000
tags:
- name: runners
paths:
  /runners:
    post:
      operationId: createRunner
      parameters:
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRunner'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateRunnerResponse'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Create runner
      tags:
      - runners
    get:
      operationId: listRunners
      parameters:
      - name: regionId
        required: false
        in: query
        description: Filter runners by region ID
        schema:
          type: string
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Runner'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: List all runners
      tags:
      - runners
  /runners/me:
    get:
      operationId: getInfoForAuthenticatedRunner
      parameters: []
      responses:
        '200':
          description: Runner info
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunnerFull'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get info for authenticated runner
      tags:
      - runners
  /runners/by-sandbox/{sandboxId}:
    get:
      operationId: getRunnerBySandboxId
      parameters:
      - name: sandboxId
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunnerFull'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get runner by sandbox ID
      tags:
      - runners
  /runners/by-snapshot-ref:
    get:
      operationId: getRunnersBySnapshotRef
      parameters:
      - name: ref
        required: true
        in: query
        description: Snapshot ref
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RunnerSnapshotDto'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get runners by snapshot ref
      tags:
      - runners
  /runners/{id}:
    get:
      operationId: getRunnerById
      parameters:
      - name: id
        required: true
        in: path
        description: Runner ID
        schema:
          type: string
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Runner'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get runner by ID
      tags:
      - runners
    delete:
      operationId: deleteRunner
      parameters:
      - name: id
        required: true
        in: path
        description: Runner ID
        schema:
          type: string
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      responses:
        '204':
          description: ''
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Delete runner
      tags:
      - runners
  /runners/{id}/full:
    get:
      operationId: getRunnerFullById
      parameters:
      - name: id
        required: true
        in: path
        description: Runner ID
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunnerFull'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get runner by ID
      tags:
      - runners
  /runners/{id}/scheduling:
    patch:
      operationId: updateRunnerScheduling
      parameters:
      - name: id
        required: true
        in: path
        description: Runner ID
        schema:
          type: string
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Runner'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Update runner scheduling status
      tags:
      - runners
  /runners/{id}/draining:
    patch:
      operationId: updateRunnerDraining
      parameters:
      - name: id
        required: true
        in: path
        description: Runner ID
        schema:
          type: string
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Runner'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Update runner draining status
      tags:
      - runners
  /runners/healthcheck:
    post:
      description: Endpoint for version 2 runners to send healthcheck and metrics. Updates lastChecked timestamp and runner metrics.
      operationId: runnerHealthcheck
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RunnerHealthcheck'
      responses:
        '200':
          description: Healthcheck received
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Runner healthcheck
      tags:
      - runners
components:
  schemas:
    Runner:
      type: object
      properties:
        id:
          type: string
          description: The ID of the runner
          example: runner123
        domain:
          type: string
          description: The domain of the runner
          example: runner1.example.com
        apiUrl:
          type: string
          description: The API URL of the runner
          example: https://api.runner1.example.com
        proxyUrl:
          type: string
          description: The proxy URL of the runner
          example: https://proxy.runner1.example.com
        cpu:
          type: number
          description: The CPU capacity of the runner
          example: 8
        memory:
          type: number
          description: The memory capacity of the runner in GiB
          example: 16
        disk:
          type: number
          description: The disk capacity of the runner in GiB
          example: 100
        gpu:
          type: number
          description: The GPU capacity of the runner
          example: 1
        gpuType:
          type: string
          description: The type of GPU
        class:
          description: The class of the runner
          example: small
          allOf:
          - $ref: '#/components/schemas/SandboxClass'
        currentCpuUsagePercentage:
          type: number
          description: Current CPU usage percentage
          example: 45.6
        currentMemoryUsagePercentage:
          type: number
          description: Current RAM usage percentage
          example: 68.2
        currentDiskUsagePercentage:
          type: number
          description: Current disk usage percentage
          example: 33.8
        currentAllocatedCpu:
          type: number
          description: Current allocated CPU
          example: 4000
        currentAllocatedMemoryGiB:
          type: number
          description: Current allocated memory in GiB
          example: 8000
        currentAllocatedDiskGiB:
          type: number
          description: Current allocated disk in GiB
          example: 50000
        currentSnapshotCount:
          type: number
          description: Current snapshot count
          example: 12
        currentStartedSandboxes:
          type: number
          description: Current number of started sandboxes
          example: 5
        availabilityScore:
          type: number
          description: Runner availability score
          example: 85
        region:
          type: string
          description: The region of the runner
          example: us
        name:
          type: string
          description: The name of the runner
          example: runner1
        state:
          description: The state of the runner
          example: initializing
          allOf:
          - $ref: '#/components/schemas/RunnerState'
        lastChecked:
          type: string
          description: The last time the runner was checked
          example: '2024-10-01T12:00:00Z'
        unschedulable:
          type: boolean
          description: Whether the runner is unschedulable
          example: false
        tags:
          description: Tags associated with the runner
          example:
          - gpu
          - us-east
          type: array
          items:
            type: string
        createdAt:
          type: string
          description: The creation timestamp of the runner
          example: '2023-10-01T12:00:00Z'
        updatedAt:
          type: string
          description: The last update timestamp of the runner
          example: '2023-10-01T12:00:00Z'
        version:
          type: string
          description: The version of the runner (deprecated in favor of apiVersion)
          example: '0'
          deprecated: true
        apiVersion:
          type: string
          description: The api version of the runner
          example: '0'
          deprecated: true
        runnerClass:
          description: The class of the runner
          example: container
          allOf:
          - $ref: '#/components/schemas/RunnerClass'
        appVersion:
          type: string
          description: The app version of the runner
          example: v0.0.0-dev
          deprecated: true
      required:
      - id
      - cpu
      - memory
      - disk
      - class
      - region
      - name
      - state
      - unschedulable
      - tags
      - createdAt
      - updatedAt
      - version
      - apiVersion
      - runnerClass
    RegionType:
      type: string
      enum:
      - shared
      - dedicated
      - custom
      description: The type of the region
    SandboxClass:
      type: string
      enum:
      - small
      - medium
      - large
      description: The class of the runner
    RunnerClass:
      type: string
      enum:
      - container
      - vm
      description: The class of the runner
    RunnerHealthMetrics:
      type: object
      properties:
        currentCpuLoadAverage:
          type: number
          description: Current CPU load average
          example: 0.98
        currentCpuUsagePercentage:
          type: number
          description: Current CPU usage percentage
          example: 45.5
        currentMemoryUsagePercentage:
          type: number
          description: Current memory usage percentage
          example: 60.2
        currentDiskUsagePercentage:
          type: number
          description: Current disk usage percentage
          example: 35.8
        currentAllocatedCpu:
          type: number
          description: Currently allocated CPU cores
          example: 8
        currentAllocatedMemoryGiB:
          type: number
          description: Currently allocated memory in GiB
          example: 16
        currentAllocatedDiskGiB:
          type: number
          description: Currently allocated disk in GiB
          example: 100
        currentSnapshotCount:
          type: number
          description: Number of snapshots currently stored
          example: 5
        currentStartedSandboxes:
          type: number
          description: Number of started sandboxes
          example: 10
        cpu:
          type: number
          description: Total CPU cores on the runner
          example: 8
        memoryGiB:
          type: number
          description: Total RAM in GiB on the runner
          example: 16
        diskGiB:
          type: number
          description: Total disk space in GiB on the runner
          example: 100
      required:
      - currentCpuLoadAverage
      - currentCpuUsagePercentage
      - currentMemoryUsagePercentage
      - currentDiskUsagePercentage
      - currentAllocatedCpu
      - currentAllocatedMemoryGiB
      - currentAllocatedDiskGiB
      - currentSnapshotCount
      - currentStartedSandboxes
      - cpu
      - memoryGiB
      - diskGiB
    RunnerState:
      type: string
      enum:
      - initializing
      - ready
      - disabled
      - decommissioned
      - unresponsive
      description: The state of the runner
    RunnerFull:
      type: object
      properties:
        id:
          type: string
          description: The ID of the runner
          example: runner123
        domain:
          type: string
          description: The domain of the runner
          example: runner1.example.com
        apiUrl:
          type: string
          description: The API URL of the runner
          example: https://api.runner1.example.com
        proxyUrl:
          type: string
          description: The proxy URL of the runner
          example: https://proxy.runner1.example.com
        cpu:
          type: number
          description: The CPU capacity of the runner
          example: 8
        memory:
          type: number
          description: The memory capacity of the runner in GiB
          example: 16
        disk:
          type: number
          description: The disk capacity of the runner in GiB
          example: 100
        gpu:
          type: number
          description: The GPU capacity of the runner
          example: 1
        gpuType:
          type: string
          description: The type of GPU
        class:
          description: The class of the runner
          example: small
          allOf:
          - $ref: '#/components/schemas/SandboxClass'
        currentCpuUsagePercentage:
          type: number
          description: Current CPU usage percentage
          example: 45.6
        currentMemoryUsagePercentage:
          type: number
          description: Current RAM usage percentage
          example: 68.2
        currentDiskUsagePercentage:
          type: number
          description: Current disk usage percentage
          example: 33.8
        currentAllocatedCpu:
          type: number
          description: Current allocated CPU
          example: 4000
        currentAllocatedMemoryGiB:
          type: number
          description: Current allocated memory in GiB
          example: 8000
        currentAllocatedDiskGiB:
          type: number
          description: Current allocated disk in GiB
          example: 50000
        currentSnapshotCount:
          type: number
          description: Current snapshot count
          example: 12
        currentStartedSandboxes:
          type: number
          description: Current number of started sandboxes
          example: 5
        availabilityScore:
          type: number
          description: Runner availability score
          example: 85
        region:
          type: string
          description: The region of the runner
          example: us
        name:
          type: string
          description: The name of the runner
          example: runner1
        state:
          description: The state of the runner
          example: initializing
          allOf:
          - $ref: '#/components/schemas/RunnerState'
        lastChecked:
          type: string
          description: The last time the runner was checked
          example: '2024-10-01T12:00:00Z'
        unschedulable:
          type: boolean
          description: Whether the runner is unschedulable
          example: false
        tags:
          description: Tags associated with the runner
          example:
          - gpu
          - us-east
          type: array
          items:
            type: string
        createdAt:
          type: string
          description: The creation timestamp of the runner
          example: '2023-10-01T12:00:00Z'
        updatedAt:
          type: string
          description: The last update timestamp of the runner
          example: '2023-10-01T12:00:00Z'
        version:
          type: string
          description: The version of the runner (deprecated in favor of apiVersion)
          example: '0'
          deprecated: true
        apiVersion:
          type: string
          description: The api version of the runner
          example: '0'
          deprecated: true
        runnerClass:
          description: The class of the runner
          example: container
          allOf:
          - $ref: '#/components/schemas/RunnerClass'
        appVersion:
          type: string
          description: The app version of the runner
          example: v0.0.0-dev
          deprecated: true
        apiKey:
          type: string
          description: The API key for the runner
          example: dtn_1234567890
        regionType:
          description: The region type of the runner
          example: shared
          allOf:
          - $ref: '#/components/schemas/RegionType'
      required:
      - id
      - cpu
      - memory
      - disk
      - class
      - region
      - name
      - state
      - unschedulable
      - tags
      - createdAt
      - updatedAt
      - version
      - apiVersion
      - runnerClass
      - apiKey
    RunnerSnapshotDto:
      type: object
      properties:
        runnerSnapshotId:
          type: string
          description: Runner snapshot ID
          example: 123e4567-e89b-12d3-a456-426614174000
        runnerId:
          type: string
          description: Runner ID
          example: 123e4567-e89b-12d3-a456-426614174000
        runnerDomain:
          type: string
          description: Runner domain
          example: runner.example.com
      required:
      - runnerSnapshotId
      - runnerId
    CreateRunner:
      type: object
      properties:
        regionId:
          type: string
        name:
          type: string
        tags:
          description: Tags to associate with the runner
          example:
          - gpu
          - us-east
          type: array
          items:
            type: string
      required:
      - regionId
      - name
    RunnerHealthcheck:
      type: object
      properties:
        metrics:
          description: Runner metrics
          allOf:
          - $ref: '#/components/schemas/RunnerHealthMetrics'
        serviceHealth:
          description: Health status of individual services on the runner
          type: array
          items:
            $ref: '#/components/schemas/RunnerServiceHealth'
        domain:
          type: string
          description: Runner domain
          example: runner-123.daytona.example.com
        proxyUrl:
          type: string
          description: Runner proxy URL
          example: http://proxy.daytona.example.com:8080
        apiUrl:
          type: string
          description: Runner API URL
          example: http://api.daytona.example.com:8080
        appVersion:
          type: string
          description: Runner app version
          example: v0.0.0-dev
      required:
      - appVersion
    RunnerServiceHealth:
      type: object
      properties:
        serviceName:
          type: string
          description: Name of the service being checked
          example: runner
        healthy:
          type: boolean
          description: Whether the service is healthy
          example: false
        errorReason:
          type: string
          description: Error reason if the service is unhealthy
          example: Cannot connect to the runner
      required:
      - serviceName
      - healthy
    CreateRunnerResponse:
      type: object
      properties:
        id:
          type: string
          description: The ID of the runner
          example: runner123
        apiKey:
          type: string
          description: The API key for the runner
          example: dtn_1234567890
      required:
      - id
      - apiKey
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: API Key access
    oauth2:
      type: openIdConnect
      openIdConnectUrl: http://localhost:3000/.well-known/openid-configuration