{"openapi":"3.1.0","info":{"title":"DeepInfra (BYOK) API","version":"0.1.0","description":"DeepInfra (BYOK) lets an AI assistant read your own DeepInfra data through the DeepInfra API with a key you supply (DeepInfra API key). Read-only: 12 tools (get_account, get_rate_limit, list_models, list_featured_models, get_model, list_private_models, list_deployments, get_deployment, get_deployment_stats, list_api_tokens, list_voices, get_live_metrics). The BYOK key travels with each request,...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-deepinfra.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-deepinfra/docs"},"termsOfService":"https://connectorbay.com/byok-deepinfra/terms"},"servers":[{"url":"https://byok-deepinfra.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-deepinfra/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/get_account":{"post":{"operationId":"get_account","summary":"Show the DeepInfra account the key belongs to: user id, name, email, team role and MFA status. Use for \"Which DeepInfra ","description":"Show the DeepInfra account the key belongs to: user id, name, email, team role and MFA status. Use for \"Which DeepInfra account is my API key for\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_accountArguments","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_rate_limit":{"post":{"operationId":"get_rate_limit","summary":"Show the account's request rate limit and tokens-per-minute rate limit. Use for \"What are my DeepInfra rate limits\".","description":"Show the account's request rate limit and tokens-per-minute rate limit. Use for \"What are my DeepInfra rate limits\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_rate_limitArguments","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_models":{"post":{"operationId":"list_models","summary":"List public DeepInfra models with type, description, pricing, maximum tokens and deprecation. Only the first 50 models a","description":"List public DeepInfra models with type, description, pricing, maximum tokens and deprecation. Only the first 50 models are shown; use list_featured_models or get_model to narrow down. Use for \"What models does DeepInfra offer and what do they cost\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_modelsArguments","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_featured_models":{"post":{"operationId":"list_featured_models","summary":"List the featured DeepInfra models with type, description and pricing. Use for \"Which DeepInfra models are featured\".","description":"List the featured DeepInfra models with type, description and pricing. Use for \"Which DeepInfra models are featured\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_featured_modelsArguments","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_model":{"post":{"operationId":"get_model","summary":"Get one DeepInfra model by name with type, description, pricing, tags and visibility. Use for \"What does the DeepInfra m","description":"Get one DeepInfra model by name with type, description, pricing, tags and visibility. Use for \"What does the DeepInfra model meta-llama/Meta-Llama-3.1-8B-Instruct cost\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"model_name":{"description":"Full model name including the owner, for example meta-llama/Meta-Llama-3.1-8B-Instruct.","maxLength":200,"title":"Model Name","type":"string"},"version":{"anyOf":[{"maxLength":100,"type":"string"},{"type":"null"}],"default":null,"description":"Model version to describe; the latest when left out.","title":"Version"}},"required":["model_name"],"title":"get_modelArguments","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_private_models":{"post":{"operationId":"list_private_models","summary":"List the private models you deployed or fine-tuned with type, description and pricing. Use for \"Which private models do ","description":"List the private models you deployed or fine-tuned with type, description and pricing. Use for \"Which private models do I have on DeepInfra\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_private_modelsArguments","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 your custom deployments with model, status, failure reason, GPU configuration and instance counts. Filter by status","description":"List your custom deployments with model, status, failure reason, GPU configuration and instance counts. Filter by status. Use for \"Which of my DeepInfra deployments are running\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"status":{"anyOf":[{"maxLength":200,"type":"string"},{"type":"null"}],"default":null,"description":"Comma-separated statuses to keep: initializing, downloading, deploying, running, updating, stopped, failed, deleted.","title":"Status"}},"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 status, model, GPU configuration, scaling settings and instance counts. Use for \"What is the state ","description":"Get one deployment's status, model, GPU configuration, scaling settings and instance counts. Use for \"What is the state of DeepInfra deployment dep_abc123\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"deploy_id":{"description":"Deployment id as returned by list_deployments.","maxLength":200,"title":"Deploy Id","type":"string"}},"required":["deploy_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/get_deployment_stats":{"post":{"operationId":"get_deployment_stats","summary":"Get a deployment's usage over a period: requests, tokens, total amount, average and 95th percentile time and errors. Use","description":"Get a deployment's usage over a period: requests, tokens, total amount, average and 95th percentile time and errors. Use for \"How many requests and tokens did my DeepInfra deployment dep_abc123 handle in the last day\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"deploy_id":{"description":"Deployment id as returned by list_deployments.","maxLength":200,"title":"Deploy Id","type":"string"},"from_time":{"description":"Start of the period: a unix timestamp or a relative value such as now-24h (units s, m, h, d, w, M).","maxLength":40,"title":"From Time","type":"string"},"to_time":{"anyOf":[{"maxLength":40,"type":"string"},{"type":"null"}],"default":"now","description":"End of the period, same formats; now when left out.","title":"To Time"}},"required":["deploy_id","from_time"],"title":"get_deployment_statsArguments","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_api_tokens":{"post":{"operationId":"list_api_tokens","summary":"List your DeepInfra API tokens with name, id, creation time, allowed IPs and the visible prefix. The secret values are n","description":"List your DeepInfra API tokens with name, id, creation time, allowed IPs and the visible prefix. The secret values are not returned. Use for \"Which API tokens exist on my DeepInfra account\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_api_tokensArguments","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_voices":{"post":{"operationId":"list_voices","summary":"List your custom text-to-speech voices with name, description and timestamps. Use for \"Which custom voices do I have on ","description":"List your custom text-to-speech voices with name, description and timestamps. Use for \"Which custom voices do I have on DeepInfra\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_voicesArguments","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_live_metrics":{"post":{"operationId":"get_live_metrics","summary":"Show platform-wide live DeepInfra performance: tokens per second, time to first token, requests per second and total TFL","description":"Show platform-wide live DeepInfra performance: tokens per second, time to first token, requests per second and total TFLOPS. Use for \"How fast is DeepInfra right now\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"get_live_metricsArguments","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}}}}