Together AI Compute API

The Compute API from Together AI — 6 operation(s) for compute.

Documentation

Specifications

Other Resources

OpenAPI Specification

together-ai-compute-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: remediation.proto Audio Compute API
  version: version not set
servers:
- url: https://api.together.xyz/v1
security:
- bearerAuth: []
tags:
- name: Compute
paths:
  /compute/clusters/{cluster_id}/instances/{instance_id}/remediations/{remediation_id}:
    get:
      description: Retrieve the status of a specific remdiation on a specific instance in a specific cluster.
      parameters:
      - name: cluster_id
        in: path
        required: true
        schema:
          description: The ID of the cluster.
          type: string
      - name: instance_id
        in: path
        required: true
        schema:
          description: The `instance_id` of the GPU Worker node from the cluster.
          type: string
      - name: remediation_id
        in: path
        required: true
        schema:
          description: The UUID of the specific remediation.
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Remediation'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Compute
  /compute/clusters/{cluster_id}/instances/{instance_id}/remediations/{remediation_id}/approve:
    post:
      description: 'Approves a pending remediation.


        Only remediations with state PENDING_APPROVAL can be approved.


        On APPROVE: state changes to PENDING and the remediation process begins.

        The reviewed_by, review_time, and review_comment fields are populated

        on the remediation after approval.

        '
      parameters:
      - name: cluster_id
        in: path
        required: true
        schema:
          type: string
      - name: instance_id
        in: path
        required: true
        schema:
          type: string
      - name: remediation_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CommentBody'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Remediation'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Compute
  /compute/clusters/{cluster_id}/instances/{instance_id}/remediations/{remediation_id}/cancel:
    post:
      description: 'Cancels a pending remediation.


        Only remediations in PENDING_APPROVAL or PENDING state can be cancelled.

        '
      parameters:
      - name: cluster_id
        in: path
        required: true
        schema:
          type: string
      - name: instance_id
        in: path
        required: true
        schema:
          type: string
      - name: remediation_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Remediation'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Compute
  /compute/clusters/{cluster_id}/instances/{instance_id}/remediations/{remediation_id}/reject:
    post:
      description: 'Rejects a pending remediation.


        Only remediations with state PENDING_APPROVAL can be rejected.


        On REJECT: state changes to CANCELLED.

        The reviewed_by, review_time, and review_comment fields are populated

        on the remediation after rejection.

        '
      parameters:
      - name: cluster_id
        in: path
        required: true
        schema:
          type: string
      - name: instance_id
        in: path
        required: true
        schema:
          type: string
      - name: remediation_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CommentBody'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Remediation'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Compute
  /compute/clusters/{cluster_id}/instances/{optional_instance_id}/remediations:
    get:
      description: 'Lists remediations for an instance or cluster.

        '
      parameters:
      - name: cluster_id
        in: path
        required: true
        schema:
          type: string
      - name: optional_instance_id
        in: path
        required: true
        schema:
          description: 'To list remediations on a specific node, pass the node''s instance ID.

            To list remediations for all nodes in a cluster, pass `-` as a wildcard for the instance ID.

            '
          type: string
      - name: pageSize
        in: query
        required: false
        schema:
          description: Maximum results to return.
          type: integer
      - name: pageToken
        in: query
        required: false
        schema:
          description: Pagination token from previous request.
          type: string
      - name: state
        in: query
        required: false
        schema:
          $ref: '#/components/schemas/v1RemediationStateFilter'
      - name: orderBy
        in: query
        required: false
        schema:
          description: Order by expression.
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1ListRemediationsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Compute
  /compute/clusters/{cluster_id}/instances/{instance_id}/remediations:
    post:
      description: 'Creates a new remediation for an instance.


        Remediations created via the API goes directly to PENDING state.


        Our system may trigger automated remediations that require approval. These remediations are created with PENDING_APPROVAL state.

        The user must call /approve to start the actual remediation process.

        These operations can also be rejected by calling /reject.

        '
      parameters:
      - name: cluster_id
        in: path
        required: true
        schema:
          type: string
      - name: instance_id
        in: path
        required: true
        schema:
          type: string
      - name: remediation_id
        in: query
        required: false
        schema:
          description: User provided ID for idempotency.
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v1Remediation'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v1Remediation'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - Compute
components:
  schemas:
    protobufAny:
      type: object
      description: '`Any` contains an arbitrary serialized protocol buffer message along with a

        URL that describes the type of the serialized message.


        Protobuf library provides support to pack/unpack Any values in the form

        of utility functions or additional generated methods of the Any type.

        '
      properties:
        '@type':
          type: string
          description: 'A URL/resource name that uniquely identifies the type of the serialized

            protocol buffer message. This string must contain at least

            one "/" character. The last segment of the URL''s path must represent

            the fully qualified name of the type (as in

            `path/google.protobuf.Duration`). The name should be in a canonical form

            (e.g., leading "." is not accepted).

            '
      additionalProperties: true
    v1RemediationStateFilter:
      description: 'Filter by state(s). Returns remediations matching any of the specified states.


        - `PENDING_APPROVAL`: Awaiting approval before processing can begin.

        - `PENDING`: Approved and queued for processing.

        - `RUNNING`: Actively being processed.

        - `SUCCEEDED`: Successfully completed.

        - `FAILED`: Failed with an error.

        - `CANCELLED`: Cancelled by user or system.

        - `AUTO_RESOLVED`: The underlying issue was automatically resolved before processing.'
      type: array
      items:
        type: string
        enum:
        - PENDING_APPROVAL
        - PENDING
        - RUNNING
        - SUCCEEDED
        - FAILED
        - CANCELLED
        - AUTO_RESOLVED
    v1RemediationState:
      type: string
      enum:
      - PENDING_APPROVAL
      - PENDING
      - RUNNING
      - SUCCEEDED
      - FAILED
      - CANCELLED
      - AUTO_RESOLVED
      description: 'RemediationState represents the lifecycle state of a remediation.


        - `PENDING_APPROVAL`: Awaiting approval before processing can begin.

        - `PENDING`: Approved and queued for processing.

        - `RUNNING`: Actively being processed.

        - `SUCCEEDED`: Successfully completed.

        - `FAILED`: Failed with an error.

        - `CANCELLED`: Cancelled by user or system.

        - `AUTO_RESOLVED`: The underlying issue was automatically resolved before processing.

        '
    v1RemediationTrigger:
      type: string
      enum:
      - REMEDIATION_TRIGGER_MANUAL
      - REMEDIATION_TRIGGER_AUTOMATED
      description: 'RemediationTrigger specifies how the remediation was triggered.


        - `REMEDIATION_TRIGGER_MANUAL`: A user-initiated remediation (either via web UI or API call).

        - `REMEDIATION_TRIGGER_AUTOMATED`: A system-initiated remediation that requires approval.

        '
    rpcStatus:
      type: object
      required:
      - code
      - message
      - details
      description: 'The `Status` type defines a logical error model that is suitable for

        different programming environments, including REST APIs and RPC APIs. It is

        used by [gRPC](https://github.com/grpc). Each `Status` message contains

        three pieces of data: error code, error message, and error details.


        You can find out more about this error model and how to work with it in the

        [API Design Guide](https://cloud.google.com/apis/design/errors).

        '
      properties:
        code:
          type: integer
          format: int32
          description: 'The status code, which should be an enum value of

            [google.rpc.Code][google.rpc.Code].

            '
        message:
          type: string
          description: 'A developer-facing error message, which should be in English. Any

            user-facing error message should be localized and sent in the

            [google.rpc.Status.details][google.rpc.Status.details] field, or localized

            by the client.

            '
        details:
          type: array
          items:
            $ref: '#/components/schemas/protobufAny'
          description: 'A list of messages that carry the error details.  There is a common set of

            message types for APIs to use.

            '
    v1Remediation:
      type: object
      required:
      - id
      - cluster_id
      - instance_id
      - mode
      - trigger
      - state
      properties:
        id:
          type: string
          readOnly: true
        cluster_id:
          type: string
          readOnly: true
        instance_id:
          type: string
          readOnly: true
        mode:
          $ref: '#/components/schemas/v1RemediationMode'
        trigger:
          $ref: '#/components/schemas/v1RemediationTrigger'
          readOnly: true
        state:
          $ref: '#/components/schemas/v1RemediationState'
          readOnly: true
        reason:
          type: string
          description: User-provided reason for the remediation.
        active_health_check_run_id:
          type: string
          description: Active health check run ID (UUID) that triggered this remediation.
          readOnly: true
        passive_health_check_event_id:
          type: string
          description: Passive health check event ID that triggered this remediation.
          readOnly: true
        requested_by:
          type: string
          description: Who requested the remediation.
          readOnly: true
        create_time:
          type: string
          format: date-time
          description: When the remediation was created.
          readOnly: true
        reviewed_by:
          type: string
          description: Who reviewed the remediation.
          readOnly: true
        review_time:
          type: string
          format: date-time
          description: When the remediation was reviewed.
          readOnly: true
        review_comment:
          type: string
          description: Review comment.
          readOnly: true
        start_time:
          type: string
          format: date-time
          description: When processing started.
          readOnly: true
        end_time:
          type: string
          format: date-time
          description: When the remediation completed.
          readOnly: true
        error_message:
          type: string
          description: Error message if the remediation failed.
          readOnly: true
        update_time:
          type: string
          format: date-time
          description: When the remediation was last updated.
          readOnly: true
    v1RemediationMode:
      type: string
      enum:
      - REMEDIATION_MODE_VM_ONLY
      - REMEDIATION_MODE_HOST_AWARE
      description: 'Remediation mode specifies how the remediation should be performed.


        - `REMEDIATION_MODE_VM_ONLY`: Deletes the VM and provisions a new one on any available host.

        - `REMEDIATION_MODE_HOST_AWARE`: Cordons the host, deletes the VM, and provisions a new one on a different host.

        '
    v1ListRemediationsResponse:
      type: object
      description: ListRemediationsResponse is the response for ListRemediations.
      required:
      - remediations
      - has_next
      properties:
        remediations:
          type: array
          items:
            $ref: '#/components/schemas/v1Remediation'
          description: The list of remediations.
        next_page_token:
          type: string
          description: Token for the next page.
        has_next:
          type: boolean
          description: Indicates if there are more results available.
    CommentBody:
      type: object
      properties:
        comment:
          type: string
          description: Comment explaining the action.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      x-bearer-format: bearer
      x-default: default