evroc Think Models (Shared) API
OpenAI-compatible API for shared models.
Version: 1.0
Contact information:
API Support
support@evroc.dev
/v1/audio/transcriptions
POST
Summary:
Create audio transcription
Description:
Transcribes audio into text using the OpenAI audio transcription API. This endpoint accepts multipart/form-data and proxies requests to the model backend. Required: file (audio file), model (string). Handler-processed optional fields: language (string), response_format (string), prompt (string), temperature (float).
Parameters
| Name | Located in | Description | Required | Schema |
|---|---|---|---|---|
| Authorization | header | Bearer token for API key authentication | Yes | string |
Responses
| Code | Description |
|---|---|
| 200 | Transcription response in OpenAI format with text and usage statistics |
| 400 | Bad request - Invalid form data, missing file, or missing model field |
| 404 | Unknown model |
| 500 | Internal server error or model configuration issue |
| 502 | Failed to connect to model backend |
/v1/chat/completions
POST
Summary:
Create chat completion
Description:
Creates a chat completion response for the given conversation. This endpoint is OpenAI-compatible and proxies requests to the model backend. Required: model (string). Handler-processed optional fields: stream (bool), stream_options.include_usage (bool). All other OpenAI chat completion parameters (messages, temperature, max_tokens, top_p, etc.) are passed through to the backend.
Parameters
| Name | Located in | Description | Required | Schema |
|---|---|---|---|---|
| Authorization | header | Bearer token for API key authentication | Yes | string |
Responses
| Code | Description |
|---|---|
| 200 | Chat completion response in OpenAI format with id, object, created, model, choices array, and usage statistics |
| 400 | Bad request - Invalid JSON or missing model field |
| 404 | Unknown model |
| 500 | Internal server error or model configuration issue |
| 502 | Failed to connect to model backend |
/v1/completions
POST
Summary:
Create text completion
Description:
Creates a completion for the provided prompt using the legacy OpenAI completions API. This endpoint proxies requests to the model backend. Required: model (string), prompt (string/array). Handler-processed optional fields: stream (bool), stream_options.include_usage (bool). Additional parameters are defined by openai.CompletionNewParams and passed to the backend.
Parameters
| Name | Located in | Description | Required | Schema |
|---|---|---|---|---|
| Authorization | header | Bearer token for API key authentication | Yes | string |
Responses
| Code | Description |
|---|---|
| 200 | Completion response in OpenAI format |
| 400 | Bad request - Invalid JSON or missing required fields |
| 404 | Unknown model |
| 500 | Internal server error or model configuration issue |
| 502 | Failed to connect to model backend |
/v1/models
GET
Summary:
List available models
Description:
Fetches and aggregates models from all configured backend endpoints. Returns models in OpenAI format with model ID replaced by alias and owned_by set to 'evroc think platform'. Includes max_model_len when available from backend.
Parameters
| Name | Located in | Description | Required | Schema |
|---|---|---|---|---|
| Authorization | header | Bearer token for API key authentication | Yes | string |
Responses
| Code | Description |
|---|---|
| 200 | List of available models in OpenAI pagination format with object='list' and data array containing model objects (id, object, created, owned_by, max_model_len) |
| 500 | Internal server error - No models configured or no models available |