{"openapi":"3.1.0","info":{"title":"Together AI dedicated endpoints, deployments, analytics and instance types (your key) API","version":"0.1.0","description":"Together AI dedicated endpoints, deployments, analytics and instance types (your key) lets an AI assistant read your own Together AI Dedicated Inference data through the Together AI Dedicated Inference API with a key you supply (API key). Read-only: 12 tools (list_endpoints, get_endpoint, list_endpoint_events, get_endpoint_analytics, list_deployments, get_deployment, list_deployment_adapters,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-together-dedicated-inference.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-together-dedicated-inference/docs"},"termsOfService":"https://connectorbay.com/byok-together-dedicated-inference/terms"},"servers":[{"url":"https://byok-together-dedicated-inference.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-together-dedicated-inference/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/list_endpoints":{"post":{"operationId":"list_endpoints","summary":"List the dedicated inference endpoints of a project with type, visibility, traffic split and a summary of each deploymen","description":"List the dedicated inference endpoints of a project with type, visibility, traffic split and a summary of each deployment (model, hardware, state, replicas). Use for \"Which dedicated endpoints do I have on Together AI and are they ready\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Together project id (starts with proj_). Shown on the API key's settings page and returned as project_id by Together's whoami endpoint.","maxLength":200,"title":"Project Id","type":"string"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging cursor: the next_cursor value of the previous page.","title":"After"},"order_by":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Sort order, for example 'createdAt desc'.","title":"Order By"},"filter":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Filter expression for the list.","title":"Filter"}},"required":["project_id"],"title":"list_endpointsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_endpoint":{"post":{"operationId":"get_endpoint","summary":"Get one dedicated endpoint with its traffic split and deployment summaries. Use for \"Show the traffic split of one of my","description":"Get one dedicated endpoint with its traffic split and deployment summaries. Use for \"Show the traffic split of one of my Together AI dedicated endpoints\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Together project id (starts with proj_). Shown on the API key's settings page and returned as project_id by Together's whoami endpoint.","maxLength":200,"title":"Project Id","type":"string"},"endpoint_id":{"description":"Endpoint id, as returned by list_endpoints.","maxLength":200,"title":"Endpoint Id","type":"string"}},"required":["project_id","endpoint_id"],"title":"get_endpointArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_endpoint_events":{"post":{"operationId":"list_endpoint_events","summary":"List an endpoint's audit and lifecycle events (scaling, provisioning, errors), newest first. Use for \"Why did my Togethe","description":"List an endpoint's audit and lifecycle events (scaling, provisioning, errors), newest first. Use for \"Why did my Together AI dedicated endpoint scale or fail recently\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Together project id (starts with proj_). Shown on the API key's settings page and returned as project_id by Together's whoami endpoint.","maxLength":200,"title":"Project Id","type":"string"},"endpoint_id":{"description":"Endpoint id, as returned by list_endpoints.","maxLength":200,"title":"Endpoint Id","type":"string"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging cursor: the next_cursor value of the previous page.","title":"After"},"min_level":{"anyOf":[{"enum":["LEVEL_DEBUG","LEVEL_INFO","LEVEL_WARN","LEVEL_ERROR"],"type":"string"},{"type":"null"}],"default":null,"description":"Only events at this level or higher.","title":"Min Level"},"since":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only events after this time (RFC 3339).","title":"Since"},"until":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Only events before this time (RFC 3339).","title":"Until"}},"required":["project_id","endpoint_id"],"title":"list_endpoint_eventsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_endpoint_analytics":{"post":{"operationId":"get_endpoint_analytics","summary":"Get aggregated request counts, latency percentiles, throughput, error rate, GPU utilization and token totals for an endp","description":"Get aggregated request counts, latency percentiles, throughput, error rate, GPU utilization and token totals for an endpoint over a time range. Reads metrics only; no inference is run. Use for \"What is the latency and error rate of my Together AI dedicated endpoint this week\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Together project id (starts with proj_). Shown on the API key's settings page and returned as project_id by Together's whoami endpoint.","maxLength":200,"title":"Project Id","type":"string"},"endpoint_id":{"description":"Endpoint id, as returned by list_endpoints.","maxLength":200,"title":"Endpoint Id","type":"string"},"deployment_id":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Only this deployment of the endpoint.","title":"Deployment Id"},"start_time":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"Start of the range (RFC 3339).","title":"Start Time"},"end_time":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":null,"description":"End of the range (RFC 3339).","title":"End Time"}},"required":["project_id","endpoint_id"],"title":"get_endpoint_analyticsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_deployments":{"post":{"operationId":"list_deployments","summary":"List the deployments of an endpoint with model, hardware, state, replica counts, autoscaling bounds, runtime engine and ","description":"List the deployments of an endpoint with model, hardware, state, replica counts, autoscaling bounds, runtime engine and placement. Use for \"Which deployments run behind my Together AI dedicated endpoint\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Together project id (starts with proj_). Shown on the API key's settings page and returned as project_id by Together's whoami endpoint.","maxLength":200,"title":"Project Id","type":"string"},"endpoint_id":{"description":"Endpoint id, as returned by list_endpoints.","maxLength":200,"title":"Endpoint Id","type":"string"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging cursor: the next_cursor value of the previous page.","title":"After"},"order_by":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Sort order, for example 'createdAt desc'.","title":"Order By"},"filter":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Filter expression for the list.","title":"Filter"}},"required":["project_id","endpoint_id"],"title":"list_deploymentsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_deployment":{"post":{"operationId":"get_deployment","summary":"Get one deployment's configuration, autoscaling policy, placement, runtime information and provisioning status. Use for ","description":"Get one deployment's configuration, autoscaling policy, placement, runtime information and provisioning status. Use for \"What autoscaling settings does one of my Together AI deployments have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Together project id (starts with proj_). Shown on the API key's settings page and returned as project_id by Together's whoami endpoint.","maxLength":200,"title":"Project Id","type":"string"},"endpoint_id":{"description":"Endpoint id, as returned by list_endpoints.","maxLength":200,"title":"Endpoint Id","type":"string"},"deployment_id":{"description":"Deployment id, as returned by list_deployments.","maxLength":200,"title":"Deployment Id","type":"string"}},"required":["project_id","endpoint_id","deployment_id"],"title":"get_deploymentArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_deployment_adapters":{"post":{"operationId":"list_deployment_adapters","summary":"List the LoRA adapters attached to a deployment with their load state per cluster. Use for \"Which LoRA adapters are load","description":"List the LoRA adapters attached to a deployment with their load state per cluster. Use for \"Which LoRA adapters are loaded on my Together AI deployment\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Together project id (starts with proj_). Shown on the API key's settings page and returned as project_id by Together's whoami endpoint.","maxLength":200,"title":"Project Id","type":"string"},"endpoint_id":{"description":"Endpoint id, as returned by list_endpoints.","maxLength":200,"title":"Endpoint Id","type":"string"},"deployment_id":{"description":"Deployment id, as returned by list_deployments.","maxLength":200,"title":"Deployment Id","type":"string"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging cursor: the next_cursor value of the previous page.","title":"After"}},"required":["project_id","endpoint_id","deployment_id"],"title":"list_deployment_adaptersArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_organization_endpoints":{"post":{"operationId":"list_organization_endpoints","summary":"List endpoints shared with every project of an organization. Use for \"Which Together AI dedicated endpoints are shared a","description":"List endpoints shared with every project of an organization. Use for \"Which Together AI dedicated endpoints are shared across my organization\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"organization_id":{"description":"Together organization id, returned by Together's whoami endpoint.","maxLength":200,"title":"Organization Id","type":"string"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging cursor: the next_cursor value of the previous page.","title":"After"},"order_by":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Sort order, for example 'createdAt desc'.","title":"Order By"},"filter":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Filter expression for the list.","title":"Filter"}},"required":["organization_id"],"title":"list_organization_endpointsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_placement_profiles":{"post":{"operationId":"list_placement_profiles","summary":"List the reusable placement profiles of a project: ordered region preferences that decide where deployments may run. Use","description":"List the reusable placement profiles of a project: ordered region preferences that decide where deployments may run. Use for \"Which placement profiles are configured in my Together AI project\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Together project id (starts with proj_). Shown on the API key's settings page and returned as project_id by Together's whoami endpoint.","maxLength":200,"title":"Project Id","type":"string"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging cursor: the next_cursor value of the previous page.","title":"After"}},"required":["project_id"],"title":"list_placement_profilesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_instance_types":{"post":{"operationId":"list_instance_types","summary":"List the GPU instance types available for dedicated inference with GPU type, count, memory, price per hour in cents and ","description":"List the GPU instance types available for dedicated inference with GPU type, count, memory, price per hour in cents and regional availability. Use for \"What GPU hardware can I deploy a Together AI dedicated endpoint on and what does it cost per hour\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging cursor: the next_cursor value of the previous page.","title":"After"}},"title":"list_instance_typesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_ab_experiments":{"post":{"operationId":"list_ab_experiments","summary":"List the A/B traffic experiments of an endpoint with control and variant deployments and their traffic percentages. Use ","description":"List the A/B traffic experiments of an endpoint with control and variant deployments and their traffic percentages. Use for \"Is an A/B test running on my Together AI dedicated endpoint\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Together project id (starts with proj_). Shown on the API key's settings page and returned as project_id by Together's whoami endpoint.","maxLength":200,"title":"Project Id","type":"string"},"endpoint_id":{"description":"Endpoint id, as returned by list_endpoints.","maxLength":200,"title":"Endpoint Id","type":"string"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging cursor: the next_cursor value of the previous page.","title":"After"}},"required":["project_id","endpoint_id"],"title":"list_ab_experimentsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_shadow_experiments":{"post":{"operationId":"list_shadow_experiments","summary":"List the shadow experiments of an endpoint, which mirror sampled traffic to target deployments, with state and targets. ","description":"List the shadow experiments of an endpoint, which mirror sampled traffic to target deployments, with state and targets. Use for \"Are any shadow experiments mirroring traffic on my Together AI endpoint\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"project_id":{"description":"Together project id (starts with proj_). Shown on the API key's settings page and returned as project_id by Together's whoami endpoint.","maxLength":200,"title":"Project Id","type":"string"},"endpoint_id":{"description":"Endpoint id, as returned by list_endpoints.","maxLength":200,"title":"Endpoint Id","type":"string"},"limit":{"anyOf":[{"maximum":200,"minimum":1,"type":"integer"},{"type":"null"}],"default":50,"description":"How many records to return (default 50).","title":"Limit"},"after":{"anyOf":[{"maxLength":500,"type":"string"},{"type":"null"}],"default":null,"description":"Paging cursor: the next_cursor value of the previous page.","title":"After"},"include_targets":{"anyOf":[{"type":"boolean"},{"type":"null"}],"default":null,"description":"True to include the target deployments of each experiment.","title":"Include Targets"}},"required":["project_id","endpoint_id"],"title":"list_shadow_experimentsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}