Daytona Admin API

Platform-level administration covering runners (compute pools), regions, Docker registry configuration, object storage, jobs, audit logs, and global config. Used by operators of customer-managed compute, by self-hosted open-source deployments, and by Daytona staff for managed-service operations.

OpenAPI Specification

daytona-admin-api-openapi.yml Raw ↑
openapi: 3.1.0
paths:
  /config:
    get:
      operationId: ConfigController_getConfig
      parameters: []
      responses:
        '200':
          description: Daytona configuration
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DaytonaConfiguration'
      summary: Get config
      tags:
      - config
  /shared-regions:
    get:
      operationId: listSharedRegions
      parameters: []
      responses:
        '200':
          description: List of all shared regions
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Region'
      summary: List all shared regions
      tags:
      - regions
  /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
  /jobs:
    get:
      description: Returns a paginated list of jobs for the runner, optionally filtered by status.
      operationId: listJobs
      parameters:
      - name: page
        required: false
        in: query
        description: Page number of the results
        schema:
          minimum: 1
          default: 1
          type: number
      - name: limit
        required: false
        in: query
        description: 'Maximum number of jobs to return (default: 100, max: 500)'
        schema:
          minimum: 1
          maximum: 200
          default: 100
          type: number
      - name: status
        required: false
        in: query
        description: Filter jobs by status
        schema:
          $ref: '#/components/schemas/JobStatus'
      - name: offset
        required: false
        in: query
        description: 'Number of jobs to skip for pagination (default: 0)'
        schema:
          type: number
      responses:
        '200':
          description: List of jobs for the runner
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedJobs'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: List jobs for the runner
      tags:
      - jobs
  /jobs/poll:
    get:
      description: Long poll endpoint for runners to fetch pending jobs. Returns immediately if jobs are available, otherwise
        waits up to timeout seconds.
      operationId: pollJobs
      parameters:
      - name: timeout
        required: false
        in: query
        description: 'Timeout in seconds for long polling (default: 30, max: 60)'
        schema:
          type: number
      - name: limit
        required: false
        in: query
        description: 'Maximum number of jobs to return (default: 10, max: 100)'
        schema:
          type: number
      responses:
        '200':
          description: List of jobs for the runner
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PollJobsResponse'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Long poll for jobs
      tags:
      - jobs
  /jobs/{jobId}:
    get:
      operationId: getJob
      parameters:
      - name: jobId
        required: true
        in: path
        description: ID of the job
        schema:
          type: string
      responses:
        '200':
          description: Job details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Job'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get job details
      tags:
      - jobs
  /jobs/{jobId}/status:
    post:
      operationId: updateJobStatus
      parameters:
      - name: jobId
        required: true
        in: path
        description: ID of the job
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateJobStatus'
      responses:
        '200':
          description: Job status updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Job'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Update job status
      tags:
      - jobs
  /docker-registry:
    post:
      operationId: createRegistry
      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/CreateDockerRegistry'
      responses:
        '201':
          description: The docker registry has been successfully created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DockerRegistry'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Create registry
      tags:
      - docker-registry
    get:
      operationId: listRegistries
      parameters:
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      responses:
        '200':
          description: List of all docker registries
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DockerRegistry'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: List registries
      tags:
      - docker-registry
  /docker-registry/registry-push-access:
    get:
      operationId: getTransientPushAccess
      parameters:
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      - name: regionId
        required: false
        in: query
        description: ID of the region where the snapshot will be available (defaults to organization default region)
        schema:
          type: string
      responses:
        '200':
          description: Temporary registry access has been generated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegistryPushAccessDto'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get temporary registry access for pushing snapshots
      tags:
      - docker-registry
  /docker-registry/{id}:
    get:
      operationId: getRegistry
      parameters:
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      - name: id
        required: true
        in: path
        description: ID of the docker registry
        schema:
          type: string
      responses:
        '200':
          description: The docker registry
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DockerRegistry'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get registry
      tags:
      - docker-registry
    patch:
      operationId: updateRegistry
      parameters:
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      - name: id
        required: true
        in: path
        description: ID of the docker registry
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateDockerRegistry'
      responses:
        '200':
          description: The docker registry has been successfully updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DockerRegistry'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Update registry
      tags:
      - docker-registry
    delete:
      operationId: deleteRegistry
      parameters:
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      - name: id
        required: true
        in: path
        description: ID of the docker registry
        schema:
          type: string
      responses:
        '204':
          description: The docker registry has been successfully deleted.
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Delete registry
      tags:
      - docker-registry
  /admin/runners:
    post:
      operationId: adminCreateRunner
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminCreateRunner'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateRunnerResponse'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Create runner
      tags:
      - admin
    get:
      operationId: adminListRunners
      parameters:
      - name: regionId
        required: false
        in: query
        description: Filter runners by region ID
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RunnerFull'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: List all runners
      tags:
      - admin
  /admin/runners/{id}:
    get:
      operationId: adminGetRunnerById
      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:
      - admin
    delete:
      operationId: adminDeleteRunner
      parameters:
      - name: id
        required: true
        in: path
        description: Runner ID
        schema:
          type: string
      responses:
        '204':
          description: ''
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Delete runner
      tags:
      - admin
  /admin/runners/{id}/scheduling:
    patch:
      operationId: adminUpdateRunnerScheduling
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '204':
          description: ''
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Update runner scheduling status
      tags:
      - admin
  /admin/sandbox/{sandboxId}/recover:
    post:
      operationId: adminRecoverSandbox
      parameters:
      - name: sandboxId
        required: true
        in: path
        description: ID of the sandbox
        schema:
          type: string
      responses:
        '200':
          description: Recovery initiated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Sandbox'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Recover sandbox from error state as an admin
      tags:
      - admin
  /admin/users:
    post:
      operationId: adminCreateUser
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateUser'
      responses:
        '201':
          description: ''
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Create user
      tags:
      - admin
    get:
      operationId: adminListUsers
      parameters: []
      responses:
        '200':
          description: ''
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: List all users
      tags:
      - admin
  /admin/users/{id}/regenerate-key-pair:
    post:
      operationId: adminRegenerateKeyPair
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: ''
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Regenerate user key pair
      tags:
      - admin
  /admin/users/{id}:
    get:
      operationId: adminGetUser
      parameters:
      - name: id
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: User details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get user by ID
      tags:
      - admin
  /admin/webhooks/organizations/{organizationId}/send:
    post:
      operationId: adminSendWebhook
      parameters:
      - name: organizationId
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SendWebhookDto'
      responses:
        '200':
          description: Webhook message sent successfully
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Send a webhook message to an organization
      tags:
      - admin
  /admin/webhooks/organizations/{organizationId}/messages/{messageId}/attempts:
    get:
      operationId: adminGetMessageAttempts
      parameters:
      - name: organizationId
        required: true
        in: path
        schema:
          type: string
      - name: messageId
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: List of delivery attempts
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get delivery attempts for a webhook message
      tags:
      - admin
  /admin/webhooks/status:
    get:
      operationId: adminGetWebhookStatus
      parameters: []
      responses:
        '200':
          description: Webhook service status
          content:
            application/json:
              schema:
                type: object
                properties:
                  enabled:
                    type: boolean
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get webhook service status
      tags:
      - admin
  /admin/webhooks/organizations/{organizationId}/initialize:
    post:
      operationId: adminInitializeWebhooks
      parameters:
      - name: organizationId
        required: true
        in: path
        schema:
          type: string
      responses:
        '201':
          description: Webhooks initialized successfully
        '404':
          description: Organization not found
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Initialize webhooks for an organization
      tags:
      - admin
  /admin/docker-registry/{id}/set-default:
    post:
      operationId: adminSetDefaultRegistry
      parameters:
      - name: id
        required: true
        in: path
        description: ID of the docker registry
        schema:
          type: string
      responses:
        '200':
          description: The docker registry has been set as default.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DockerRegistry'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Set default registry
      tags:
      - admin
  /admin/snapshots/can-cleanup-image:
    get:
      operationId: adminCanCleanupImage
      parameters:
      - name: imageName
        required: true
        in: query
        description: Image name with tag to check
        schema:
          type: string
      responses:
        '200':
          description: Boolean indicating if image can be cleaned up
          content:
            application/json:
              schema:
                type: boolean
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Check if an image can be cleaned up
      tags:
      - admin
  /admin/snapshots/{id}/general:
    patch:
      operationId: adminSetSnapshotGeneralStatus
      parameters:
      - name: id
        required: true
        in: path
        description: Snapshot ID
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SetSnapshotGeneralStatusDto'
      responses:
        '200':
          description: Snapshot general status has been set
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SnapshotDto'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Set snapshot general status
      tags:
      - admin
  /admin/audit:
    get:
      operationId: adminGetAllAuditLogs
      parameters:
      - name: page
        required: false
        in: query
        description: Page number of the results
        schema:
          minimum: 1
          default: 1
          type: number
      - name: limit
        required: false
        in: query
        description: Number of results per page
        schema:
          minimum: 1
          maximum: 200
          default: 100
          type: number
      - name: from
        required: false
        in: query
        description: From date (ISO 8601 format)
        schema:
          format: date-time
          type: string
      - name: to
        required: false
        in: query
        description: To date (ISO 8601 format)
        schema:
          format: date-time
          type: string
      - name: nextToken
        required: false
        in: query
        description: Token for cursor-based pagination. When provided, takes precedence over page parameter.
        schema:
          type: string
      responses:
        '200':
          description: Paginated list of all audit logs
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedAuditLogs'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get all audit logs
      tags:
      - admin
  /audit/organizations/{organizationId}:
    get:
      operationId: getOrganizationAuditLogs
      parameters:
      - name: organizationId
        required: true
        in: path
        description: Organization ID
        schema:
          type: string
      - name: page
        required: false
        in: query
        description: Page number of the results
        schema:
          minimum: 1
          default: 1
          type: number
      - name: limit
        required: false
        in: query
        description: Number of results per page
        schema:
          minimum: 1
          maximum: 200
          default: 100
          type: number
      - name: from
        required: false
        in: query
        description: From date (ISO 8601 format)
        schema:
          format: date-time
          type: string
      - name: to
        required: false
        in: query
        description: To date (ISO 8601 format)
        schema:
          format: date-time
          type: string
      - name: nextToken
        required: false
        in: query
        description: Token for cursor-based pagination. When provided, takes precedence over page parameter.
        schema:
          type: string
      responses:
        '200':
          description: Paginated list of organization audit logs
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedAuditLogs'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get audit logs for organization
      tags:
      - audit
  /object-storage/push-access:
    get:
      operationId: getPushAccess
      parameters:
      - name: X-Daytona-Organization-ID
        in: header
        description: Use with JWT to specify the organization ID
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Temporary storage access has been generated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StorageAccessDto'
      security:
      - bearer: []
      - oauth2:
        - openid
        - profile
        - email
      summary: Get temporary storage access for pushing objects
      tags:
      - object-storage
info:
  title: Daytona Admin API
  description: "Daytona Admin API \u2014 admin, audit, config, runners, docker-registry, regions, object-storage, jobs operations\
    \ on the Daytona AI platform."
  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
tags: []
servers:
- url: https://app.daytona.io/api
  description: Daytona Cloud production API
components:
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http
      description: API Key access
    oauth2:
      type: openIdConnect
      openIdConnectUrl: http://localhost:3000/.well-known/openid-configuration
  schemas:
    Announcement:
      type: object
      properties:
        text:
          type: string
          description: The announcement text
          example: New feature available!
        learnMoreUrl:
          type: string
          description: URL to learn more about the announcement
          example: https://example.com/learn-more
      required:
      - text
    PosthogConfig:
      type: object
      properties:
        apiKey:
          type: string
          description: PostHog API key
          example: phc_abc123
        host:
          type: string
          description: PostHog host URL
          example: https://app.posthog.com
      required:
      - apiKey
      - host
    OidcConfig:
      type: object
      properties:
        issuer:
          type: string
          description: OIDC issuer
          example: https://auth.example.com
        clientId:
          type: string
          description: OIDC client ID
          example: daytona-client
        audience:
          type: string
          description: OIDC audience
          example: daytona-api
      required:
      - issuer
      - clientId
      - audience
    RateLimitEntry:
      type: object
      properties:
        ttl:
          type: number
          description: Rate limit TTL in seconds
          example: 60
        limit:
          type: number
          description: Rate limit max requests
          example: 100
    RateLimitConfig:
      type: object
      properties:
        failedAuth:
          description: Failed authentication rate limit
          allOf:
          - $ref: '#/components/schemas/RateLimitEntry'
        authenticated:
          description: Authenticated rate limit
          allOf:
          - $ref: '#/components/schemas/RateLimitEntry'
        sandboxCreate:
          description: Sandbox create rate limit
          allOf:
          - $ref: '#/components/schemas/RateLimitEntry'
        sandboxLifecycle:
          description: Sandbox lifecyc

# --- truncated at 32 KB (161 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/daytona-io/refs/heads/main/openapi/daytona-admin-api-openapi.yml