> ## Documentation Index
> Fetch the complete documentation index at: https://docs.labelbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List portable environment templates

> Returns reviewed, versioned environment starting points. Copy a definition into managedAgentsCreateEnvironment, bind any organization-specific fields in the form, and verify its setup before starting a session.



## OpenAPI

````yaml /managed-agents/openapi.yaml get /managed-agents/v1/environment-templates
openapi: 3.1.0
info:
  title: Managed Agents API
  version: 0.14.0
  description: >-
    The Recursion Managed Agents REST API. Authenticate with a Recursion API key
    as a bearer token. An organization-scoped key acts in its own organization
    and needs nothing else; a tenant-scoped key must also send
    `x-organization-id` with an organization id or `default`. Field names follow
    each operation's published schema.
servers:
  - url: https://api.recursion.labelbox.com
security:
  - bearerAuth: []
paths:
  /managed-agents/v1/environment-templates:
    get:
      tags:
        - Environments
      summary: List portable environment templates
      description: >-
        Returns reviewed, versioned environment starting points. Copy a
        definition into managedAgentsCreateEnvironment, bind any
        organization-specific fields in the form, and verify its setup before
        starting a session.
      operationId: managedAgentsListEnvironmentTemplates
      parameters:
        - description: >-
            Previously returned ETag. When it still identifies the current
            representation, the response is 304 with no body.
          in: header
          name: If-None-Match
          schema:
            description: >-
              Previously returned ETag. When it still identifies the current
              representation, the response is 304 with no body.
            type: string
        - $ref: '#/components/parameters/RecursionTenantId'
        - $ref: '#/components/parameters/RecursionOrganizationId'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnvironmentTemplateListResponse'
          description: >-
            Reviewed Recursion environment definitions available to prefill a
            new environment.
          headers:
            ETag:
              description: >-
                Weak validator computed over the projected public
                representation.
              schema:
                type: string
              style: simple
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '304':
          description: Not modified; the caller's cached representation is current.
          headers:
            ETag:
              description: >-
                Weak validator computed over the projected public
                representation.
              schema:
                type: string
              style: simple
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '400':
          description: Bad Request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorInvalidRequest'
                x-recursion-error-codes:
                  - invalid_request
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '401':
          description: Unauthorized.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorUnauthorized'
                x-recursion-error-codes:
                  - unauthorized
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '403':
          description: Forbidden.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorForbidden'
                x-recursion-error-codes:
                  - forbidden
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '404':
          description: Not Found.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorNotFound'
                x-recursion-error-codes:
                  - not_found
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '413':
          description: Payload Too Large.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorPayloadTooLarge'
                x-recursion-error-codes:
                  - payload_too_large
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '429':
          headers:
            Retry-After:
              description: When to retry, as delay seconds or an HTTP date.
              schema:
                type: string
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
          description: Too Many Requests.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorRateLimitExceeded'
                x-recursion-error-codes:
                  - rate_limit_exceeded
        '500':
          description: Internal Server Error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorInternalError'
                x-recursion-error-codes:
                  - internal_error
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '502':
          description: A dependent service returned an invalid response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorDependencyFailure'
                x-recursion-error-codes:
                  - bad_gateway
          headers:
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
        '503':
          headers:
            Retry-After:
              description: When to retry, as delay seconds or an HTTP date.
              schema:
                type: string
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
          description: Service Unavailable.
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/ManagedAgentsApiErrorManagedAgentsUnavailable
                  - $ref: >-
                      #/components/schemas/ManagedAgentsApiErrorServiceUnavailable
                discriminator:
                  propertyName: code
                  mapping:
                    managed_agents_unavailable:
                      $ref: >-
                        #/components/schemas/ManagedAgentsApiErrorManagedAgentsUnavailable
                    service_unavailable:
                      $ref: >-
                        #/components/schemas/ManagedAgentsApiErrorServiceUnavailable
                x-recursion-error-codes:
                  - managed_agents_unavailable
                  - service_unavailable
        '504':
          headers:
            Retry-After:
              description: When to retry, as delay seconds or an HTTP date.
              schema:
                type: string
            recursion-organization-id:
              $ref: '#/components/headers/RecursionOrganizationId'
            recursion-tenant-id:
              $ref: '#/components/headers/RecursionTenantId'
          description: A dependent service timed out.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagedAgentsApiErrorDependencyTimeout'
                x-recursion-error-codes:
                  - gateway_timeout
components:
  parameters:
    RecursionTenantId:
      name: x-tenant-id
      in: header
      required: false
      description: >-
        Optional tenant consistency check. When present, it must name the tenant
        bound to the API key, including when x-organization-id is `default`.
      schema:
        type: string
        minLength: 1
    RecursionOrganizationId:
      name: x-organization-id
      in: header
      required: false
      description: >-
        Organization in which to act. Required for a tenant-scoped API key.
        Optional for an organization-scoped key, where it must name that same
        organization. The value may be an organization id or `default`.
      schema:
        type: string
        minLength: 1
  schemas:
    EnvironmentTemplateListResponse:
      additionalProperties: false
      description: >-
        Reviewed Recursion environment definitions available to prefill a new
        environment.
      properties:
        items:
          description: Portable Recursion environment templates, sorted by id.
          items:
            $ref: '#/components/schemas/EnvironmentTemplate'
          type: array
      required:
        - items
      type: object
    ManagedAgentsApiErrorInvalidRequest:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - invalid_request
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorUnauthorized:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - unauthorized
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorForbidden:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - forbidden
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorNotFound:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - not_found
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorPayloadTooLarge:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - payload_too_large
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorRateLimitExceeded:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - rate_limit_exceeded
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorInternalError:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - internal_error
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorDependencyFailure:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - bad_gateway
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorManagedAgentsUnavailable:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - managed_agents_unavailable
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorServiceUnavailable:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - service_unavailable
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    ManagedAgentsApiErrorDependencyTimeout:
      type: object
      properties:
        code:
          type: string
          minLength: 1
          description: Stable machine-readable error code.
          enum:
            - gateway_timeout
        message:
          type: string
          minLength: 1
          description: Human-readable error message.
        details:
          $ref: '#/components/schemas/ManagedAgentsApiErrorDetails'
          description: >-
            Optional structured error details. Reserved transport fields are
            typed; code-specific fields remain forward compatible.
      required:
        - code
        - message
      additionalProperties: false
      description: Standard flat error response.
    EnvironmentTemplate:
      additionalProperties: false
      description: >-
        A reviewed Recursion environment template with a stable id, revision,
        and create definition.
      properties:
        definition:
          $ref: '#/components/schemas/EnvironmentTemplateDefinition'
          description: >-
            Complete standalone managedAgentsCreateEnvironment-compatible
            definition copied into the create form.
        features:
          description: Product switches required to show this template.
          items:
            type: string
          type: array
        icon:
          description: Icon name for the card.
          type: string
        id:
          description: Stable catalog key.
          type: string
        name:
          description: Card title.
          type: string
        revision:
          description: Revision of this reviewed template.
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        summary:
          description: One-line explanation of the starting point.
          type: string
      required:
        - id
        - revision
        - name
        - summary
        - icon
        - features
        - definition
      type: object
    ManagedAgentsApiErrorDetails:
      type: object
      properties:
        field:
          description: >-
            Request field or header responsible for the error, when one can be
            identified.
          type: string
        issues:
          description: >-
            Boundary-validation failures as path-prefixed human-readable
            messages.
          type: array
          items:
            type: string
        requestId:
          description: Request correlation identifier for support and log lookup.
          type: string
        retryable:
          description: >-
            Server advice about failure transience. `true` means transient,
            `false` means non-transient, and absence gives no advice. Automatic
            replay is allowed only when this field is not `false` and the
            operation-specific retry and idempotency contract permits replay.
          type: boolean
      additionalProperties:
        $ref: '#/components/schemas/PlatformSafeJsonValue'
      description: >-
        Optional structured error details. Reserved transport fields are typed;
        code-specific fields remain forward compatible.
    EnvironmentTemplateDefinition:
      additionalProperties: false
      description: Starting definition copied into a create environment form.
      properties:
        computer_use:
          description: >-
            Enable the shared interactive browser display. The server sets
            http_port to 6901; false disables it.
          type: boolean
        config:
          additionalProperties:
            $ref: '#/components/schemas/PlatformSafeJsonValue'
          description: Provider-specific overflow config.
          type: object
        description:
          description: Optional free-text note about what this environment is for.
          type: string
        env_vars:
          additionalProperties:
            type: string
          description: >-
            Environment variables injected into the sandbox. Each name must be
            letters, digits and underscores, not starting with a digit.
          type: object
        http_port:
          description: >-
            TCP port inside the sandbox that the provider exposes for HTTP
            traffic. Omit or send 0 if the workload serves nothing.
          format: int64
          maximum: 65535
          minimum: 0
          type: integer
        idle_stop_after_seconds:
          description: >-
            Seconds of inactivity before compute stops, from 120 through 7200 (2
            hours); omit or send 0 for the provider default. Computer use
            requires 0 or at least 600 seconds.
          format: int64
          maximum: 7200
          minimum: 0
          type: integer
        metadata:
          additionalProperties:
            $ref: '#/components/schemas/PlatformSafeJsonValue'
          description: >-
            Free-form caller-owned JSON stored with the environment and returned
            on reads. Not interpreted by the service.
          type: object
        mounts:
          description: Files staged into the sandbox workspace on create.
          items:
            $ref: '#/components/schemas/EnvironmentMount'
          type: array
        name:
          description: >-
            Human-readable label for the environment. Required, and not blank;
            surrounding whitespace is trimmed.
          maxLength: 256
          type: string
        network_policy:
          additionalProperties:
            $ref: '#/components/schemas/PlatformSafeJsonValue'
          description: >-
            Runs egress policy. Omit to derive deny-all. A nonempty policy
            requires GKE: the runtime selects GKE when placement is omitted, or
            accepts explicit GKE placement. With explicit non-GKE placement,
            send {} for unrestricted egress or change placement to GKE.
          type: object
        privileged:
          description: >-
            Whether the Runs sandbox may use privileged Docker. Defaults to
            false independently of network_policy. Compute creation fails closed
            unless Agent Service can enforce the requested combination.
          type: boolean
        provider:
          description: >-
            Environment runtime: runs (managed agent runner) or docker (local
            development). Any other value is rejected, including the retired
            self_hosted and rma names.
          type: string
        pvc_size_gi:
          description: >-
            Persistent workspace size in GiB, from 1 through 100; omit or send 0
            for the provider default.
          format: int64
          maximum: 100
          minimum: 0
          type: integer
        resources:
          $ref: '#/components/schemas/EnvironmentResourcesRequest'
          description: >-
            Compute sizing: cpu_milli and memory_mib for a CPU environment, or
            one exclusive accelerator for a GPU environment with service-owned
            limits of 8,000 millicores (8 vCPU) and 32,768 MiB (32 GiB) of
            memory.
        scope:
          description: >-
            Visibility of the environment record within the organization.
            organization is the only value; it is also the default when omitted.
          type: string
        secrets:
          additionalProperties:
            type: string
          description: Env-var name -> secret-manager reference (never plaintext).
          type: object
        setup:
          $ref: '#/components/schemas/EnvironmentSetupRequest'
          description: >-
            Setup script run once on fresh compute after the sandbox is
            provisioned, before the agent starts. Verify it with
            managedAgentsCreateEnvironmentSetupRun before starting sessions.
        stopped_delete_after_seconds:
          description: >-
            Seconds a stopped sandbox is retained before deletion, from 3600 (an
            hour) to 2592000 (30 days), after which its workspace is gone. Omit
            or send 0 to use the provider's lifecycle policy.
          format: int64
          minimum: 0
          type: integer
          maximum: 9007199254740991
        template:
          $ref: '#/components/schemas/TemplateRef'
          description: >-
            Reviewed environment template id and revision used to prefill this
            create request.
      required:
        - name
        - provider
        - setup
        - resources
      type: object
      allOf:
        - if:
            properties:
              resources:
                anyOf:
                  - required:
                      - accelerator
                  - required:
                      - cpu_milli
                  - required:
                      - memory_mib
                  - required:
                      - placement
                  - required:
                      - timeout_seconds
            required:
              - resources
          then:
            properties:
              provider:
                const: runs
        - if:
            properties:
              resources:
                properties:
                  accelerator:
                    $ref: '#/components/schemas/PlatformSafeJsonValue'
                required:
                  - accelerator
            required:
              - resources
          then:
            properties:
              provider:
                const: runs
        - if:
            properties:
              network_policy:
                type: object
                minProperties: 1
            required:
              - network_policy
          then:
            properties:
              resources:
                properties:
                  placement:
                    properties:
                      providers:
                        const:
                          - gke
    PlatformSafeJsonValue:
      description: >-
        A JSON value whose integer members stay within the exact ECMAScript
        safe-integer range at every nesting level.
      oneOf:
        - type: 'null'
        - type: boolean
        - type: string
        - type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        - type: number
          not:
            type: integer
        - type: array
          items:
            $ref: '#/components/schemas/PlatformSafeJsonValue'
        - additionalProperties:
            $ref: '#/components/schemas/PlatformSafeJsonValue'
          type: object
    EnvironmentMount:
      additionalProperties: false
      description: >-
        One file or object staged into the sandbox workspace when it is created.
        Use mounts to give an agent input data it should find already on disk at
        the first turn.
      properties:
        mount_path:
          description: >-
            Absolute path inside the sandbox workspace where the source is
            placed.
          type: string
        source:
          description: Object or file to stage, as a URI the service can read.
          type: string
      type: object
    EnvironmentResourcesRequest:
      additionalProperties: false
      description: Caller-supplied environment compute sizing and lifetime constraints.
      properties:
        accelerator:
          $ref: '#/components/schemas/EnvironmentAcceleratorRequest'
          description: Exclusive GPU request. Omit for CPU-only compute.
        cpu_milli:
          type: integer
          format: int64
          anyOf:
            - const: 0
            - minimum: 250
              maximum: 8000
          maximum: 8000
          description: >-
            CPU millicores. Omit or send 0 for the provider default; otherwise
            250 through 8000.
          minimum: -9007199254740991
        memory_mib:
          type: integer
          format: int64
          anyOf:
            - const: 0
            - minimum: 1024
              maximum: 32768
          maximum: 32768
          description: >-
            Memory in MiB. Omit or send 0 for the provider default; otherwise
            1024 through 32768.
          minimum: -9007199254740991
        placement:
          $ref: '#/components/schemas/EnvironmentPlacementRequest'
          description: Optional canonical placement constraints.
        timeout_seconds:
          type: integer
          format: int64
          anyOf:
            - const: 0
            - minimum: 10
              maximum: 86400
          description: >-
            Maximum sandbox lifetime. Omit or send 0 for the provider default;
            otherwise 10 to 86400 seconds.
          minimum: -9007199254740991
          maximum: 9007199254740991
      type: object
      allOf:
        - if:
            required:
              - accelerator
          then:
            properties:
              cpu_milli:
                const: 0
              memory_mib:
                const: 0
    EnvironmentSetupRequest:
      additionalProperties: false
      description: Caller-supplied post-provision setup script and timeout.
      properties:
        script:
          type: string
          pattern: ^[^\u0000]*$
          description: >-
            Bash setup script. UTF-8 encoding must be at most 65,536 bytes and
            contain no NUL.
        timeout_seconds:
          type: integer
          format: int64
          anyOf:
            - const: 0
            - minimum: 10
              maximum: 3600
          description: >-
            Setup timeout. Omit or send 0 for the default; otherwise 10 to 3600
            seconds.
          minimum: -9007199254740991
          maximum: 9007199254740991
      type: object
    TemplateRef:
      description: Reviewed template id and revision copied into this resource.
      properties:
        id:
          description: Stable template id.
          type: string
        revision:
          description: Reviewed catalog revision.
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - id
        - revision
      type: object
      additionalProperties: false
    EnvironmentAcceleratorRequest:
      additionalProperties: false
      description: >-
        One exclusive GPU requested for an environment. The model name must come
        from the deployment catalog.
      properties:
        count:
          type: integer
          format: int64
          enum:
            - 0
            - 1
          description: One accelerator is attached. Omit or send 0 to select that default.
          minimum: -9007199254740991
          maximum: 9007199254740991
        name:
          type: string
          minLength: 1
          description: >-
            Nonempty provider-neutral accelerator model from the deployment
            catalog.
        type:
          type: string
          const: gpu
          description: Accelerator class. Omit to select gpu, or send gpu explicitly.
      type: object
      required:
        - name
    EnvironmentPlacementRequest:
      additionalProperties: false
      description: >-
        Canonical environment placement request. Exactly one supported provider
        is selected; regions, spot capacity, VRAM floors, and caller-supplied
        price limits are not supported.
      properties:
        allow_spot:
          type: boolean
          const: false
          description: Spot capacity is not supported and must be false when sent.
        max_price_per_hour_usd:
          type: number
          format: double
          const: 0
          description: >-
            Caller-supplied price limits are not supported and must be zero when
            sent.
        min_accelerator_vram_gb:
          type: integer
          format: int64
          const: 0
          description: >-
            Caller-supplied VRAM floors are not supported and must be zero when
            sent.
          minimum: -9007199254740991
          maximum: 9007199254740991
        providers:
          type: array
          minItems: 1
          maxItems: 1
          uniqueItems: true
          items:
            type: string
            enum:
              - gke
              - nebius
          description: Exactly one supported compute provider.
        regions:
          type: array
          maxItems: 0
          items:
            type: string
          description: >-
            Region constraints are not supported and this array must be empty
            when sent.
      type: object
      required:
        - providers
  headers:
    RecursionOrganizationId:
      description: Organization id resolved for this request.
      schema:
        type: string
        minLength: 1
    RecursionTenantId:
      description: Tenant id resolved for this request.
      schema:
        type: string
        minLength: 1
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: A Recursion API key, created in the console under API keys.

````