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

# List supported provider/model pairs and primitive capabilities.



## OpenAPI

````yaml /openapi.yaml get /v1/training/capabilities
openapi: 3.1.0
info:
  title: Whitney Training API
  version: 0.3.0
  description: >
    Public HTTP API for caller-owned model training on Whitney.


    Authenticate with a Whitney API key (`whitney_test_…` or `whitney_live_…`).

    Create a session and run, submit ordered training and sampling primitives,

    poll durable operations, and retrieve checkpoints, artifacts, usage, and
    cost.


    Every public request uses typed JSON. Token IDs and dense tensor values are

    ordinary JSON arrays validated against strict, provider-neutral schemas.
servers:
  - url: http://localhost:3001
    description: Local API
  - url: https://api.staging.trywhitney.com
    description: Staging API
  - url: https://api.trywhitney.com
    description: Production API
security:
  - WhitneyApiKey: []
tags:
  - name: unified-training
    description: Whitney-owned session, primitive, and operations API.
paths:
  /v1/training/capabilities:
    get:
      tags:
        - unified-training
      summary: List supported provider/model pairs and primitive capabilities.
      operationId: getTrainingCapabilities
      responses:
        '200':
          description: >-
            Every returned provider/model pair is admissible. Validation history
            and known limitations live in the cookbooks.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CapabilitiesResponse'
        default:
          $ref: '#/components/responses/ApiError'
components:
  schemas:
    CapabilitiesResponse:
      type: object
      additionalProperties: false
      required:
        - version
        - admission
        - providers
      properties:
        version:
          type: string
          const: '2026-09-02'
        admission:
          type: object
          additionalProperties: false
          required:
            - new_sessions
          properties:
            new_sessions:
              type: boolean
        providers:
          type: array
          items:
            $ref: '#/components/schemas/ProviderCapability'
    ProviderCapability:
      type: object
      additionalProperties: false
      required:
        - id
        - models
        - operations
        - sampler_operations
      properties:
        id:
          type: string
          enum:
            - modal
            - tinker
        models:
          type: array
          items:
            $ref: '#/components/schemas/CapabilityModel'
        operations:
          type: array
          items:
            type: string
        sampler_operations:
          type: array
          items:
            type: string
    ErrorResponse:
      type: object
      additionalProperties: false
      required:
        - error
      properties:
        error:
          type: object
          additionalProperties: false
          required:
            - code
            - message
          properties:
            code:
              type: string
            message:
              type: string
        request_id:
          type: string
        funding_source:
          type: string
          enum:
            - platform
            - byok
    CapabilityModel:
      type: object
      additionalProperties: false
      required:
        - id
        - model_identity
        - tuning_modes
        - checkpoint_modes
        - artifact_modes
        - operations
        - algorithms
        - resource_profile
      properties:
        id:
          type: string
        model_identity:
          type: object
          additionalProperties: true
        tuning_modes:
          type: array
          items:
            type: string
        checkpoint_modes:
          type: array
          items:
            type: string
        artifact_modes:
          type: array
          items:
            type: string
        operations:
          type: array
          items:
            type: string
        algorithms:
          type: object
          additionalProperties:
            type: object
            additionalProperties: false
            required:
              - required_operations
            properties:
              required_operations:
                type: array
                items:
                  type: string
        resource_profile:
          type:
            - object
            - 'null'
          additionalProperties:
            type: string
  responses:
    ApiError:
      description: Whitney API error envelope.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    WhitneyApiKey:
      type: http
      scheme: bearer
      bearerFormat: whitney_test_|whitney_live_
      description: Whitney-issued API key. No organization-selection header is accepted.

````