Together Models API

Lists hundreds of available models with metadata, capabilities, context window, and pricing.

OpenAPI Specification

together-ai-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Together APIs
  description: The Together REST API. Please see https://docs.together.ai for more details.
  version: 2.0.0
  termsOfService: https://www.together.ai/terms-of-service
  contact:
    name: Together Support
    url: https://www.together.ai/contact
  license:
    name: MIT
    url: https://github.com/togethercomputer/openapi/blob/main/LICENSE
servers:
  - url: https://api.together.ai/v1
security:
  - bearerAuth: []
paths:
  /deployments:
    get:
      description: Get a list of all deployments in your project
      summary: Get the list of deployments
      tags:
        - Deployments
      responses:
        '200':
          description: List of deployments
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeploymentListResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            deployments = client.beta.jig.list()
            print(deployments)
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const deployments = await client.beta.jig.list();
            console.log(deployments);
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const deployments = await client.beta.jig.list();
            console.log(deployments);
        - lang: Shell
          label: cURL
          source: |
            curl -X GET \
                  -H "Authorization: Bearer $TOGETHER_API_KEY" \
                  https://api.together.ai/v1/deployments
    post:
      description: Create a new deployment with specified configuration
      summary: Create a new deployment
      tags:
        - Deployments
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            deployment = client.beta.jig.deploy(
              name="my-deployment",
              gpu_type="h100-80gb",
              image="registry.together.ai/proj_abcdefg1234567890/my-image:latest"
            )
            print(deployment)
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const deployment = await client.beta.jig.deploy({
              name: "my-deployment",
              gpu_type: "h100-80gb",
              image: "registry.together.ai/proj_abcdefg1234567890/my-image:latest"
            });
            console.log(deployment);
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const deployment = await client.beta.jig.deploy({
              name: "my-deployment",
              gpu_type: "h100-80gb",
              image: "registry.together.ai/proj_abcdefg1234567890/my-image:latest"
            });
            console.log(deployment);
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateDeploymentRequest'
        description: Deployment configuration
        required: true
      responses:
        '200':
          description: Deployment created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeploymentResponseItem'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
  /deployments/{id}:
    delete:
      description: Delete an existing deployment
      summary: Delete a deployment
      tags:
        - Deployments
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Deployment ID or name
            type: string
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            deployment = client.beta.jig.destroy("my-deployment")
            print(deployment)
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const deployment = await client.beta.jig.destroy("my-deployment");
            console.log(deployment);
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const deployment = await client.beta.jig.destroy("my-deployment");
            console.log(deployment);
        - lang: Shell
          label: cURL
          source: |
            curl -X DELETE \
                  -H "Authorization: Bearer $TOGETHER_API_KEY" \
                  https://api.together.ai/v1/deployments/my-deployment
      responses:
        '200':
          description: Deployment deleted successfully
          content:
            application/json:
              schema:
                type: object
        '404':
          description: Deployment not found
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
    get:
      description: Retrieve details of a specific deployment by its ID or name
      summary: Get a deployment by ID or name
      tags:
        - Deployments
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Deployment ID or name
            type: string
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            deployment = client.beta.jig.retrieve("my-deployment")
            print(deployment)
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const deployment = await client.beta.jig.retrieve("my-deployment");
            console.log(deployment);
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const deployment = await client.beta.jig.retrieve("my-deployment");
            console.log(deployment);
      responses:
        '200':
          description: Deployment details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeploymentResponseItem'
        '404':
          description: Deployment not found
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
    patch:
      description: Update an existing deployment configuration
      summary: Update a deployment
      tags:
        - Deployments
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            deployment = client.beta.jig.update("my-deployment", gpu_count=2)
            print(deployment)
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: >
            import Together from "together-ai";

            const client = new Together();


            const deployment = await client.beta.jig.update("my-deployment", {
            gpu_count: 2 });

            console.log(deployment);
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: >
            import Together from "together-ai";

            const client = new Together();


            const deployment = await client.beta.jig.update("my-deployment", {
            gpu_count: 2 });

            console.log(deployment);
        - lang: Shell
          label: cURL
          source: |
            curl -X PATCH \
                  -H "Authorization: Bearer $TOGETHER_API_KEY" \
                  --data '{ "gpu_count": 2 }' \
                  https://api.together.ai/v1/deployments/my-deployment
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Deployment ID or name
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateDeploymentRequest'
        description: Updated deployment configuration
        required: true
      responses:
        '200':
          description: Deployment updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeploymentResponseItem'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                type: object
        '404':
          description: Deployment not found
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
  /deployments/{id}/logs:
    get:
      description: Retrieve logs from a deployment, optionally filtered by replica ID.
      summary: Get logs for a deployment
      tags:
        - Deployments
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            deployment = client.beta.jig.logs("my-deployment")
            print(deployment)
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const deployment = await client.beta.jig.logs("my-deployment");
            console.log(deployment);
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const deployment = await client.beta.jig.logs("my-deployment");
            console.log(deployment);
        - lang: Shell
          label: cURL
          source: |
            curl -X GET \
                  -H "Authorization: Bearer $TOGETHER_API_KEY" \
                  https://api.together.ai/v1/deployments/my-deployment/logs
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Deployment ID or name
            type: string
        - name: replica_id
          in: query
          required: false
          schema:
            description: Replica ID to filter logs
            type: string
      responses:
        '200':
          description: Deployment logs
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeploymentLogs'
        '404':
          description: Deployment not found
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
  /deployments/secrets:
    get:
      description: Retrieve all secrets in your project
      summary: Get the list of project secrets
      tags:
        - Secrets
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            secrets = client.beta.jig.secrets.list()
            print(secrets)
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const secrets = await client.beta.jig.secrets.list();
            console.log(secrets);
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const secrets = await client.beta.jig.secrets.list();
            console.log(secrets);
      responses:
        '200':
          description: List of secrets
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListSecretsResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
    post:
      description: Create a new secret to store sensitive configuration values
      summary: Create a new secret
      tags:
        - Secrets
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            client.beta.jig.secrets.create(name="my-secret", value="my-value")
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: >
            import Together from "together-ai";

            const client = new Together();


            await client.beta.jig.secrets.create({ name: "my-secret", value:
            "my-value" });
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: >
            import Together from "together-ai";

            const client = new Together();


            await client.beta.jig.secrets.create({ name: "my-secret", value:
            "my-value" });
        - lang: Shell
          label: cURL
          source: |
            curl -X POST \
                  -H "Authorization: Bearer $TOGETHER_API_KEY" \
                  --data '{ "name": "my-secret", "value": "my-value" }' \
                  https://api.together.ai/v1/deployments/secrets
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateSecretRequest'
        description: Secret configuration
        required: true
      responses:
        '200':
          description: Secret created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SecretResponseItem'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
  /deployments/secrets/{id}:
    delete:
      description: Delete an existing secret
      summary: Delete a secret
      tags:
        - Secrets
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            client.beta.jig.secrets.delete("my-secret")
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            await client.beta.jig.secrets.delete("my-secret");
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            await client.beta.jig.secrets.delete("my-secret");
        - lang: Shell
          label: cURL
          source: |
            curl -X DELETE \
                  -H "Authorization: Bearer $TOGETHER_API_KEY" \
                  https://api.together.ai/v1/deployments/secrets/my-secret
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Secret ID or name
            type: string
      responses:
        '200':
          description: Secret deleted successfully
          content:
            application/json:
              schema:
                type: object
        '404':
          description: Secret not found
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
    get:
      description: Retrieve details of a specific secret by its ID or name
      summary: Get a secret by ID or name
      tags:
        - Secrets
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            secret = client.beta.jig.secrets.retrieve("my-secret")
            print(secret)
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const secret = await client.beta.jig.secrets.retrieve("my-secret");
            console.log(secret);
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const secret = await client.beta.jig.secrets.retrieve("my-secret");
            console.log(secret);
        - lang: Shell
          label: cURL
          source: |
            curl -X GET \
                  -H "Authorization: Bearer $TOGETHER_API_KEY" \
                  https://api.together.ai/v1/deployments/secrets/my-secret
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Secret ID or name
            type: string
      responses:
        '200':
          description: Secret details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SecretResponseItem'
        '404':
          description: Secret not found
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
    patch:
      description: Update an existing secret's value or metadata
      summary: Update a secret
      tags:
        - Secrets
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            client.beta.jig.secrets.update("my-secret", value="my-new-value")
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: >
            import Together from "together-ai";

            const client = new Together();


            await client.beta.jig.secrets.update("my-secret", { value:
            "my-new-value" });
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: >
            import Together from "together-ai";

            const client = new Together();


            await client.beta.jig.secrets.update("my-secret", { value:
            "my-new-value" });
        - lang: Shell
          label: cURL
          source: |
            curl -X PATCH \
                  -H "Authorization: Bearer $TOGETHER_API_KEY" \
                  --data '{ "value": "my-new-value" }' \
                  https://api.together.ai/v1/deployments/secrets/my-secret
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Secret ID or name
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateSecretRequest'
        description: Updated secret configuration
        required: true
      responses:
        '200':
          description: Secret updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SecretResponseItem'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                type: object
        '404':
          description: Secret not found
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
  /deployments/storage/{filename}:
    get:
      description: Download a file by redirecting to a signed URL
      summary: Download a file
      tags:
        - DeploymentsStorage
      parameters:
        - name: filename
          in: path
          required: true
          schema:
            description: Filename
            type: string
      responses:
        '307':
          description: Redirect to signed download URL
          content:
            application/json:
              schema:
                type: string
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                additionalProperties:
                  type: string
                type: object
        '404':
          description: File not found
          content:
            application/json:
              schema:
                additionalProperties:
                  type: string
                type: object
        '500':
          description: Internal error
          content:
            application/json:
              schema:
                additionalProperties:
                  type: string
                type: object
  /deployments/storage/volumes:
    get:
      description: Retrieve all volumes in your project
      summary: Get the list of project volumes
      tags:
        - DeploymentsVolumes
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            volumes = client.beta.jig.storage.volumes.list()
            print(volumes)
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const volumes = await client.beta.jig.storage.volumes.list();
            console.log(volumes);
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: |
            import Together from "together-ai";
            const client = new Together();

            const volumes = await client.beta.jig.storage.volumes.list();
            console.log(volumes);
        - lang: Shell
          label: cURL
          source: |
            curl -X GET \
                  -H "Authorization: Bearer $TOGETHER_API_KEY" \
                  https://api.together.ai/v1/deployments/storage/volumes
      responses:
        '200':
          description: List of volumes
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListVolumesResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
    post:
      description: Create a new volume to preload files in deployments
      summary: Create a new volume
      tags:
        - DeploymentsVolumes
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            from together import Together
            client = Together()

            volumes = client.beta.jig.volumes.create(name="my-volume")
            print(volumes)
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: >
            import Together from "together-ai";

            const client = new Together();


            const volumes = await client.beta.jig.volumes.create({ name:
            "my-volume" });

            console.log(volumes);
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: >
            import Together from "together-ai";

            const client = new Together();


            const volumes = await client.beta.jig.volumes.create({ name:
            "my-volume" });

            console.log(volumes);
        - lang: Shell
          label: cURL
          source: |
            curl -X POST \
                  -H "Authorization: Bearer $TOGETHER_API_KEY" \
                  --data '{ "name": "my-volume" }' \
                  https://api.together.ai/v1/deployments/storage/volumes
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateVolumeRequest'
        description: Volume configuration
        required: true
      responses:
        '200':
          description: Volume created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VolumeResponseItem'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
  /deployments/storage/volumes/{id}:
    delete:
      description: Delete an existing volume
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Volume ID or name
            type: string
      responses:
        '200':
          description: Volume deleted successfully
          content:
            application/json:
              schema:
                type: object
        '404':
          description: Volume not found
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
      summary: Delete a volume
      tags:
        - Volumes
    get:
      description: Retrieve details of a specific volume by its ID or name
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Volume ID or name
            type: string
      responses:
        '200':
          description: Volume details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VolumeResponseItem'
        '404':
          description: Volume not found
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
      summary: Get a volume by ID or name
      tags:
        - Volumes
    patch:
      description: Update an existing volume's configuration or contents
      parameters:
        - name: id
          in: path
          required: true
          schema:
            description: Volume ID or name.
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateVolumeRequest'
        description: Updated volume configuration
        required: true
      responses:
        '200':
          description: Volume updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VolumeResponseItem'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                type: object
        '404':
          description: Volume not found
          content:
            application/json:
              schema:
                type: object
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                type: object
      summary: Update a volume
      tags:
        - Volumes
  /voices:
    get:
      tags:
        - Voices
      summary: Fetch available voices for each model
      description: Fetch available voices for each model
      operationId: fetchVoices
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListVoicesResponse'
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            # Docs for v1 can be found by changing the above selector ^
            from together import Together
            import os

            client = Together(
                api_key=os.environ.get("TOGETHER_API_KEY"),
            )

            response = client.audio.voices.list()

            print(response.data)
        - lang: Python
          label: Together AI SDK (v1)
          source: |
            from together import Together
            import os

            client = Together(
                api_key=os.environ.get("TOGETHER_API_KEY"),
            )

            response = client.audio.voices.list()

            print(response.data)
        - lang: TypeScript
          label: Together AI SDK (TypeScript)
          source: |
            import Together from "together-ai";

            const client = new Together({
              apiKey: process.env.TOGETHER_API_KEY,
            });

            const response = await client.audio.voices.list()

            console.log(response.data);
        - lang: JavaScript
          label: Together AI SDK (JavaScript)
          source: |
            import Together from "together-ai";

            const client = new Together({
              apiKey: process.env.TOGETHER_API_KEY,
            });

            const response = await client.audio.voices.list()

            console.log(response.data);
  /videos/{id}:
    get:
      tags:
        - Video
      summary: Fetch video metadata
      description: Fetch video metadata
      servers:
        - url: https://api.together.ai/v2
      operationId: retrieveVideo
      x-codeSamples:
        - lang: Python
          label: Together AI SDK (v2)
          source: |
            # Docs for v1 can be found by changing the above selector ^
            from together import Together
            import os

            client = Together(
                api_key=os.environ.get("TOGETHER_API_KEY"),
            )

            response = client.videos.retrieve(video_id)

            print(response.id)
        - lang: Python
          label: Together AI SDK (v1)
          source: |
            from together import Together
            import os

            client = Together(
                api_key=os.environ.get("TOGETHER_API_KEY"),
            )

            response = client.videos.retrieve(video_id)

            print(response.id)
        - lang: TypeScript
          label: Together 

# --- truncated at 32 KB (463 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/together-ai/refs/heads/main/openapi/together-ai-openapi.yml