openapi: 3.0.3 info: title: remediation.proto Audio Endpoints API version: version not set servers: - url: https://api.together.xyz/v1 security: - bearerAuth: [] tags: - name: Endpoints paths: /endpoints: get: tags: - Endpoints summary: List all endpoints, can be filtered by type description: Returns a list of all endpoints associated with your account. You can filter the results by type (dedicated or serverless). x-codeSamples: - lang: Python label: Together AI SDK (v2) source: "# Docs for v1 can be found by changing the above selector ^\nfrom together import Together\nimport os\n\nclient = Together(\n api_key=os.environ.get(\"TOGETHER_API_KEY\"),\n)\n\nresponse = client.endpoints.list()\n\nfor endpoint in response.data:\n print(endpoint.id)\n" - lang: Python label: Together AI SDK (v1) source: "from together import Together\nimport os\n\nclient = Together(\n api_key=os.environ.get(\"TOGETHER_API_KEY\"),\n)\n\nendpoints = client.endpoints.list()\n\nfor endpoint in endpoints:\n print(endpoint.id)\n" - lang: TypeScript label: Together AI SDK (TypeScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst endpoints = await client.endpoints.list();\n\nfor (const endpoint of endpoints.data) {\n console.log(endpoint);\n}\n" - lang: JavaScript label: Together AI SDK (JavaScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst endpoints = await client.endpoints.list();\n\nfor (const endpoint of endpoints.data) {\n console.log(endpoint);\n}\n" - lang: Shell label: cURL source: "curl \"https://api.together.ai/v1/endpoints\" \\\n -H \"Authorization: Bearer $TOGETHER_API_KEY\" \\\n -H \"Content-Type: application/json\"\n" operationId: listEndpoints parameters: - name: type in: query required: false schema: description: Filter endpoints by type type: string enum: - dedicated - serverless - name: usage_type in: query required: false schema: type: string enum: - on-demand - reserved description: Filter endpoints by usage type - name: mine in: query required: false schema: type: boolean description: If true, return only endpoints owned by the caller responses: '200': description: '200' content: application/json: schema: type: object required: - object - data properties: object: description: The object type, which is always `list`. const: list data: type: array items: $ref: '#/components/schemas/ListEndpoint' example: object: list data: - object: endpoint id: endpoint-5c0c20db-62fe-4f41-8ffc-d9e4ea1a264e name: allenai/OLMo-7B model: allenai/OLMo-7B type: serverless owner: together state: STARTED created_at: '2024-02-28T21:34:35.444Z' '403': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorData' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/ErrorData' post: tags: - Endpoints summary: Create a dedicated endpoint, it will start automatically description: Creates a new dedicated endpoint for serving models. The endpoint will automatically start after creation. You can deploy any supported model on hardware configurations that meet the model's requirements. x-codeSamples: - lang: Python label: Together AI SDK (v2) source: "# Docs for v1 can be found by changing the above selector ^\nfrom together import Together\nimport os\n\nclient = Together(\n api_key=os.environ.get(\"TOGETHER_API_KEY\"),\n)\n\nendpoint = client.endpoints.create(\n model=\"Qwen/Qwen3.5-9B-FP8\",\n hardware=\"1x_nvidia_a100_80gb_sxm\",\n autoscaling={\n \"min_replicas\": 2,\n \"max_replicas\": 5,\n }\n)\n\nprint(endpoint.id)\n" - lang: Python label: Together AI SDK (v1) source: "from together import Together\nimport os\n\nclient = Together(\n api_key=os.environ.get(\"TOGETHER_API_KEY\"),\n)\n\nendpoint = client.endpoints.create(\n model=\"Qwen/Qwen3.5-9B-FP8\",\n hardware=\"1x_nvidia_a100_80gb_sxm\",\n min_replicas=2,\n max_replicas=5,\n)\n\nprint(endpoint.id)\n" - lang: TypeScript label: Together AI SDK (TypeScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst endpoint = await client.endpoints.create({\n model: \"Qwen/Qwen3.5-9B-FP8\",\n hardware: \"1x_nvidia_a100_80gb_sxm\",\n autoscaling: {\n max_replicas: 5,\n min_replicas: 2,\n }\n});\n\nconsole.log(endpoint.id);\n" - lang: JavaScript label: Together AI SDK (JavaScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst endpoint = await client.endpoints.create({\n model: \"Qwen/Qwen3.5-9B-FP8\",\n hardware: \"1x_nvidia_a100_80gb_sxm\",\n autoscaling: {\n max_replicas: 5,\n min_replicas: 2,\n }\n});\n\nconsole.log(endpoint.id);\n" - lang: Shell label: cURL source: "curl -X POST \"https://api.together.ai/v1/endpoints\" \\\n -H \"Authorization: Bearer $TOGETHER_API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\n \"model\": \"Qwen/Qwen3.5-9B-FP8\",\n \"hardware\": \"1x_nvidia_a100_80gb_sxm\",\n \"autoscaling\": {\n \"max_replicas\": 5,\n \"min_replicas\": 2\n }\n }'\n" operationId: createEndpoint requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/CreateEndpointRequest' responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/DedicatedEndpoint' '403': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorData' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/ErrorData' /endpoints/{endpointId}: get: tags: - Endpoints summary: Get endpoint by ID description: Retrieves details about a specific endpoint, including its current state, configuration, and scaling settings. x-codeSamples: - lang: Python label: Together AI SDK (v2) source: "# Docs for v1 can be found by changing the above selector ^\nfrom together import Together\nimport os\n\nclient = Together(\n api_key=os.environ.get(\"TOGETHER_API_KEY\"),\n)\n\nendpoint = client.endpoints.retrieve(\"endpoint-id\")\n\nprint(endpoint.id)\n" - lang: Python label: Together AI SDK (v1) source: "from together import Together\nimport os\n\nclient = Together(\n api_key=os.environ.get(\"TOGETHER_API_KEY\"),\n)\n\nendpoint = client.endpoints.get(\"endpoint-id\")\n\nprint(endpoint.id)\n" - lang: TypeScript label: Together AI SDK (TypeScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst endpoint = await client.endpoints.retrieve(\"endpoint-id\");\n\nconsole.log(endpoint);\n" - lang: JavaScript label: Together AI SDK (JavaScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst endpoint = await client.endpoints.retrieve(\"endpoint-id\");\n\nconsole.log(endpoint);\n" - lang: Shell label: cURL source: "curl \"https://api.together.ai/v1/endpoints/endpoint-id\" \\\n -H \"Authorization: Bearer $TOGETHER_API_KEY\" \\\n -H \"Content-Type: application/json\"\n" operationId: getEndpoint parameters: - name: endpointId in: path required: true schema: type: string description: The ID of the endpoint to retrieve example: endpoint-d23901de-ef8f-44bf-b3e7-de9c1ca8f2d7 responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/DedicatedEndpoint' '403': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorData' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ErrorData' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/ErrorData' patch: tags: - Endpoints summary: Update endpoint, this can also be used to start or stop a dedicated endpoint description: Updates an existing endpoint's configuration. You can modify the display name, autoscaling settings, or change the endpoint's state (start/stop). x-codeSamples: - lang: Python label: Together AI SDK (v2) source: "# Docs for v1 can be found by changing the above selector ^\nfrom together import Together\nimport os\n\nclient = Together(\n api_key=os.environ.get(\"TOGETHER_API_KEY\"),\n)\n\nendpoint = client.endpoints.update(\n \"endpoint-id\",\n state=\"STOPPED\"\n)\n\nprint(endpoint)\n" - lang: Python label: Together AI SDK (v1) source: "from together import Together\nimport os\n\nclient = Together(\n api_key=os.environ.get(\"TOGETHER_API_KEY\"),\n)\n\nendpoint = client.endpoints.update(\n endpoint_id=\"endpoint-id\",\n state=\"STOPPED\"\n)\n\nprint(endpoint)\n" - lang: TypeScript label: Together AI SDK (TypeScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst endpoint = await client.endpoints.update(\"endpoint-id\", {\n state: \"STOPPED\"\n});\n\nconsole.log(endpoint);\n" - lang: JavaScript label: Together AI SDK (JavaScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst endpoint = await client.endpoints.update(\"endpoint-id\", {\n state: \"STOPPED\"\n});\n\nconsole.log(endpoint);\n" - lang: Shell label: cURL source: "curl -X PATCH \"https://api.together.ai/v1/endpoints/endpoint-id\" \\\n -H \"Authorization: Bearer $TOGETHER_API_KEY\" \\\n -H \"Content-Type: application/json\" \\\n -d '{\n \"state\": \"STOPPED\"\n }'\n" operationId: updateEndpoint parameters: - name: endpointId in: path required: true schema: type: string description: The ID of the endpoint to update example: endpoint-d23901de-ef8f-44bf-b3e7-de9c1ca8f2d7 requestBody: required: true content: application/json: schema: type: object properties: display_name: type: string description: A human-readable name for the endpoint example: My Llama3 70b endpoint state: type: string description: The desired state of the endpoint enum: - STARTED - STOPPED example: STARTED autoscaling: $ref: '#/components/schemas/Autoscaling' description: New autoscaling configuration for the endpoint inactive_timeout: type: integer description: The number of minutes of inactivity after which the endpoint will be automatically stopped. Set to 0 to disable automatic timeout. nullable: true example: 60 responses: '200': description: '200' content: application/json: schema: $ref: '#/components/schemas/DedicatedEndpoint' '403': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorData' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ErrorData' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/ErrorData' delete: tags: - Endpoints summary: Delete endpoint description: Permanently deletes an endpoint. This action cannot be undone. x-codeSamples: - lang: Python label: Together AI SDK (v2) source: "# Docs for v1 can be found by changing the above selector ^\nfrom together import Together\nimport os\n\nclient = Together(\n api_key=os.environ.get(\"TOGETHER_API_KEY\"),\n)\n\nendpoint = client.endpoints.delete(\"endpoint-id\")\n\nprint(endpoint)\n" - lang: Python label: Together AI SDK (v1) source: "from together import Together\nimport os\n\nclient = Together(\n api_key=os.environ.get(\"TOGETHER_API_KEY\"),\n)\n\nendpoint = client.endpoints.delete(\n endpoint_id=\"endpoint-id\",\n)\n\nprint(endpoint)\n" - lang: TypeScript label: Together AI SDK (TypeScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst endpoint = await client.endpoints.delete(\"endpoint-id\");\n\nconsole.log(endpoint);\n" - lang: JavaScript label: Together AI SDK (JavaScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst endpoint = await client.endpoints.delete(\"endpoint-id\");\n\nconsole.log(endpoint);\n" - lang: Shell label: cURL source: "curl -X \"DELETE\" \"https://api.together.ai/v1/endpoints/endpoint-id\" \\\n -H \"Authorization: Bearer $TOGETHER_API_KEY\"\n" operationId: deleteEndpoint parameters: - name: endpointId in: path required: true schema: type: string description: The ID of the endpoint to delete example: endpoint-d23901de-ef8f-44bf-b3e7-de9c1ca8f2d7 responses: '204': description: No Content - Endpoint successfully deleted '403': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/ErrorData' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/ErrorData' '500': description: Internal error content: application/json: schema: $ref: '#/components/schemas/ErrorData' /clusters/availability-zones: get: tags: - Endpoints summary: List all available availability zones. description: List all available availability zones. operationId: availabilityZones responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ListAvailibilityZonesResponse' x-codeSamples: - lang: Python label: Together AI SDK (v2) source: "from together import Together\nimport os\n\nclient = Together(\n api_key=os.environ.get(\"TOGETHER_API_KEY\"),\n)\n\nresponse = client.endpoints.list_avzones()\n\nprint(response.avzones)\n" - lang: TypeScript label: Together AI SDK (TypeScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst response = await client.endpoints.listAvzones();\n\nconsole.log(response.avzones);\n" - lang: JavaScript label: Together AI SDK (JavaScript) source: "import Together from \"together-ai\";\n\nconst client = new Together({\n apiKey: process.env.TOGETHER_API_KEY,\n});\n\nconst response = await client.endpoints.listAvzones();\n\nconsole.log(response.avzones);\n" - lang: Shell label: cURL source: "curl \"https://api.together.ai/v1/clusters/availability-zones\" \\\n -H \"Authorization: Bearer $TOGETHER_API_KEY\" \\\n -H \"Content-Type: application/json\"\n" components: schemas: Autoscaling: type: object description: Configuration for automatic scaling of replicas based on demand. required: - min_replicas - max_replicas properties: min_replicas: type: integer format: int32 description: The minimum number of replicas to maintain, even when there is no load examples: - 2 max_replicas: type: integer format: int32 description: The maximum number of replicas to scale up to under load examples: - 5 ListAvailibilityZonesResponse: description: List of unique availability zones type: object required: - avzones properties: avzones: type: array items: type: string ErrorData: type: object required: - error properties: error: type: object properties: message: type: string nullable: false type: type: string nullable: false param: type: string nullable: true default: null code: type: string nullable: true default: null required: - type - message DedicatedEndpoint: type: object description: Details about a dedicated endpoint deployment required: - object - id - name - display_name - model - hardware - type - owner - state - autoscaling - created_at properties: object: description: The object type, which is always `endpoint`. const: endpoint id: type: string description: Unique identifier for the endpoint example: endpoint-d23901de-ef8f-44bf-b3e7-de9c1ca8f2d7 name: type: string description: System name for the endpoint example: devuser/deepseek-ai/DeepSeek-R1-a32b82a1 display_name: type: string description: Human-readable name for the endpoint example: My DeepSeek R1 endpoint model: type: string description: The model deployed on this endpoint example: deepseek-ai/DeepSeek-R1 hardware: type: string description: The hardware configuration used for this endpoint example: 8x_nvidia_h200_140gb_sxm type: type: string enum: - dedicated description: The type of endpoint example: dedicated owner: type: string description: The owner of this endpoint example: devuser state: type: string enum: - PENDING - STARTING - STARTED - STOPPING - STOPPED - ERROR description: Current state of the endpoint example: STARTED autoscaling: $ref: '#/components/schemas/Autoscaling' description: Configuration for automatic scaling of the endpoint created_at: type: string format: date-time description: Timestamp when the endpoint was created example: 2025-02-04 10:43:55.405000+00:00 CreateEndpointRequest: type: object required: - model - hardware - autoscaling properties: display_name: type: string description: A human-readable name for the endpoint example: My Llama3 70b endpoint model: type: string description: The model to deploy on this endpoint example: deepseek-ai/DeepSeek-R1 hardware: type: string description: The hardware configuration to use for this endpoint example: 1x_nvidia_a100_80gb_sxm autoscaling: $ref: '#/components/schemas/Autoscaling' description: Configuration for automatic scaling of the endpoint disable_prompt_cache: deprecated: true type: boolean description: This parameter is deprecated and no longer has any effect. default: false disable_speculative_decoding: type: boolean description: Whether to disable speculative decoding for this endpoint default: false state: type: string description: The desired state of the endpoint enum: - STARTED - STOPPED default: STARTED example: STARTED inactive_timeout: type: integer description: The number of minutes of inactivity after which the endpoint will be automatically stopped. Set to null, omit or set to 0 to disable automatic timeout. nullable: true example: 60 availability_zone: type: string description: Create the endpoint in a specified availability zone (e.g., us-central-4b) ListEndpoint: type: object description: Details about an endpoint when listed via the list endpoint required: - id - object - name - model - type - owner - state - created_at properties: object: description: The object type, which is always `endpoint`. const: endpoint id: type: string description: Unique identifier for the endpoint example: endpoint-d23901de-ef8f-44bf-b3e7-de9c1ca8f2d7 name: type: string description: System name for the endpoint example: allenai/OLMo-7B model: type: string description: The model deployed on this endpoint example: allenai/OLMo-7B type: type: string enum: - serverless - dedicated description: The type of endpoint example: serverless owner: type: string description: The owner of this endpoint example: together state: type: string enum: - PENDING - STARTING - STARTED - STOPPING - STOPPED - ERROR description: Current state of the endpoint example: STARTED created_at: type: string format: date-time description: Timestamp when the endpoint was created example: 2024-02-28 21:34:35.444000+00:00 securitySchemes: bearerAuth: type: http scheme: bearer x-bearer-format: bearer x-default: default