openapi: 3.1.0 info: title: Viam Billing Arm Training Jobs API description: 'REST/JSON transcoding of the Viam BillingService gRPC API. Retrieve current-month usage, invoice summaries, invoice PDFs, billing tiers, and the location-level billing organization assignment used by Viam''s "build a robotics business" features. Canonical contract: https://github.com/viamrobotics/api/blob/main/proto/viam/app/v1/billing.proto ' version: '2026.05' contact: name: Viam Support url: https://www.viam.com/contact servers: - url: https://app.viam.com description: Viam production cloud. security: - ApiKeyAuth: [] tags: - name: Training Jobs description: Built-in TFLite trainers and custom containerized trainers. paths: /viam.app.mltraining.v1.MLTrainingService/SubmitTrainingJob: post: summary: Viam Submit Training Job description: Submit a built-in TFLite training job against a dataset. operationId: submitTrainingJob tags: - Training Jobs requestBody: required: true content: application/json: schema: type: object required: - organization_id - dataset_id - model_name - model_type properties: organization_id: type: string dataset_id: type: string model_name: type: string model_version: type: string model_type: type: string enum: - single_label_classification - multi_label_classification - object_detection tags: type: array items: type: string responses: '200': description: Successful response. content: application/json: schema: type: object properties: id: type: string /viam.app.mltraining.v1.MLTrainingService/SubmitCustomTrainingJob: post: summary: Viam Submit Custom Training Job description: Submit a custom containerized training job (registry container) against a dataset. operationId: submitCustomTrainingJob tags: - Training Jobs requestBody: required: true content: application/json: schema: type: object required: - organization_id - dataset_id - registry_item_id - model_name properties: organization_id: type: string dataset_id: type: string registry_item_id: type: string registry_item_version: type: string model_name: type: string model_version: type: string arguments: type: object responses: '200': description: Successful response. /viam.app.mltraining.v1.MLTrainingService/GetTrainingJob: post: summary: Viam Get Training Job description: Retrieve a training job by id. operationId: getTrainingJob tags: - Training Jobs requestBody: required: true content: application/json: schema: type: object required: - id properties: id: type: string responses: '200': description: Successful response. /viam.app.mltraining.v1.MLTrainingService/ListTrainingJobs: post: summary: Viam List Training Jobs description: List training jobs scoped to an organization. operationId: listTrainingJobs tags: - Training Jobs requestBody: required: true content: application/json: schema: type: object required: - organization_id properties: organization_id: type: string status: type: string enum: - unspecified - pending - in_progress - completed - failed - canceled - canceling responses: '200': description: Successful response. /viam.app.mltraining.v1.MLTrainingService/CancelTrainingJob: post: summary: Viam Cancel Training Job description: Cancel a pending or running training job. operationId: cancelTrainingJob tags: - Training Jobs requestBody: required: true content: application/json: schema: type: object required: - id properties: id: type: string responses: '200': description: Successful response. /viam.app.mltraining.v1.MLTrainingService/DeleteCompletedTrainingJob: post: summary: Viam Delete Completed Training Job description: Permanently delete a completed training job and its artifacts. operationId: deleteCompletedTrainingJob tags: - Training Jobs requestBody: required: true content: application/json: schema: type: object required: - id properties: id: type: string responses: '200': description: Successful response. /viam.app.mltraining.v1.MLTrainingService/GetTrainingJobLogs: post: summary: Viam Get Training Job Logs description: Retrieve logs for a training job. operationId: getTrainingJobLogs tags: - Training Jobs requestBody: required: true content: application/json: schema: type: object required: - id properties: id: type: string responses: '200': description: Successful response. /viam.app.mltraining.v1.MLTrainingService/ListSupportedContainers: post: summary: Viam List Supported Containers description: List the container images supported as custom training environments. operationId: listSupportedContainers tags: - Training Jobs requestBody: required: true content: application/json: schema: type: object responses: '200': description: Successful response. components: securitySchemes: ApiKeyAuth: type: apiKey in: header name: key description: Viam API key.