openapi: 3.0.3 info: title: TrueFoundry AI Gateway Audio Chat API description: The TrueFoundry AI Gateway API is an OpenAI-compatible proxy layer providing unified access to 1000+ language models across 30+ providers through a single endpoint. It supports chat completions, embeddings, image generation, audio processing, batch operations, file management, content moderation, and model management. The gateway provides centralized authentication, rate limiting, budget controls, observability, and MCP server orchestration. version: 1.0.0 contact: name: TrueFoundry Support url: https://www.truefoundry.com/ email: support@truefoundry.com termsOfService: https://www.truefoundry.com/privacy-policy servers: - url: https://app.truefoundry.com/api/llm description: TrueFoundry AI Gateway (default control plane) - url: https://{control_plane_url}/api/llm description: Self-hosted TrueFoundry control plane variables: control_plane_url: default: app.truefoundry.com description: Your TrueFoundry control plane URL security: - BearerAuth: [] tags: - name: Chat description: Chat completion operations for LLM conversation paths: /chat/completions: post: summary: Create Chat Completion description: Generate chat-based completions using the specified model. Supports streaming, tool calling, and all OpenAI-compatible parameters. Routes to 1000+ LLMs across 30+ providers based on the model identifier. operationId: createChatCompletion tags: - Chat parameters: - name: x-tfy-metadata in: header required: false description: Optional metadata JSON string for request logging schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/ChatCompletionRequest' responses: '200': description: Chat completion result content: application/json: schema: $ref: '#/components/schemas/ChatCompletionResponse' text/event-stream: schema: type: string description: SSE stream of completion chunks when stream=true '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/RateLimited' components: responses: RateLimited: description: Too many requests - rate limit exceeded content: application/json: schema: type: object properties: error: type: object properties: message: type: string type: type: string BadRequest: description: Bad request - invalid parameters content: application/json: schema: type: object properties: error: type: object properties: message: type: string type: type: string code: type: string Unauthorized: description: Unauthorized - invalid or missing API key content: application/json: schema: type: object properties: error: type: object properties: message: type: string type: type: string schemas: ChatCompletionRequest: type: object required: - model - messages properties: model: type: string description: Model identifier (e.g., gpt-4o, claude-3-5-sonnet-20241022, gemini-2.0-flash). Use the provider's model ID as displayed in TrueFoundry's model catalog. messages: type: array description: Conversation history items: type: object required: - role - content properties: role: type: string enum: - system - user - assistant - function - tool - developer content: oneOf: - type: string - type: array name: type: string tool_calls: type: array tool_call_id: type: string tools: type: array description: Tool definitions for function calling items: type: object tool_choice: description: Controls tool usage oneOf: - type: string enum: - none - auto - required - type: object temperature: type: number minimum: 0 maximum: 2 description: Sampling randomness (0=deterministic) top_p: type: number minimum: 0 maximum: 1 top_k: type: integer minimum: 1 n: type: integer minimum: 1 default: 1 stream: type: boolean default: false max_tokens: type: integer minimum: 1 stop: oneOf: - type: string - type: array items: type: string presence_penalty: type: number minimum: -2 maximum: 2 frequency_penalty: type: number minimum: -2 maximum: 2 logprobs: type: boolean user: type: string description: End-user identifier for monitoring ChatCompletionResponse: type: object properties: id: type: string object: type: string enum: - chat.completion created: type: integer format: unix-timestamp model: type: string choices: type: array items: type: object properties: index: type: integer message: type: object properties: role: type: string content: type: string tool_calls: type: array finish_reason: type: string enum: - stop - length - tool_calls - content_filter logprobs: type: object usage: type: object properties: prompt_tokens: type: integer completion_tokens: type: integer total_tokens: type: integer prompt_tokens_details: type: object completion_tokens_details: type: object service_tier: type: string system_fingerprint: type: string securitySchemes: BearerAuth: type: http scheme: bearer description: TrueFoundry API key (JWT format)