Models
List available models from your configured providers.
Endpoint
GET https://api.transactional.dev/ai/v1/models
Request
Headers
| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer gw_sk_your_key |
Query Parameters
| Parameter | Type | Description |
|---|---|---|
provider | string | Filter by provider (e.g., openai, anthropic) |
Examples
List All Models
curl https://api.transactional.dev/ai/v1/models \
-H "Authorization: Bearer gw_sk_your_key"Filter by Provider
curl "https://api.transactional.dev/ai/v1/models?provider=openai" \
-H "Authorization: Bearer gw_sk_your_key"Response
{
"object": "list",
"data": [
{
"id": "gpt-4o",
"object": "model",
"created": 1706140800,
"owned_by": "openai",
"context_window": 128000,
"max_output": 16384,
"capabilities": ["chat", "function_calling", "vision"],
"pricing": {
"input": 2.50,
"output": 10.00,
"unit": "1M tokens",
"currency": "USD"
}
},
{
"id": "gpt-4o-mini",
"object": "model",
"created": 1706140800,
"owned_by": "openai",
"context_window": 128000,
"max_output": 16384,
"capabilities": ["chat", "function_calling", "vision"],
"pricing": {
"input": 0.15,
"output": 0.60,
"unit": "1M tokens",
"currency": "USD"
}
},
{
"id": "claude-3-5-sonnet",
"object": "model",
"created": 1706140800,
"owned_by": "anthropic",
"context_window": 200000,
"max_output": 8192,
"capabilities": ["chat", "tool_use"],
"pricing": {
"input": 3.00,
"output": 15.00,
"unit": "1M tokens",
"currency": "USD"
}
},
{
"id": "claude-3-haiku",
"object": "model",
"created": 1706140800,
"owned_by": "anthropic",
"context_window": 200000,
"max_output": 4096,
"capabilities": ["chat", "tool_use"],
"pricing": {
"input": 0.25,
"output": 1.25,
"unit": "1M tokens",
"currency": "USD"
}
}
]
}Model Object
| Field | Type | Description |
|---|---|---|
id | string | Model identifier to use in requests |
object | string | Always model |
created | number | Unix timestamp when model was added |
owned_by | string | Provider name |
context_window | number | Maximum context tokens |
max_output | number | Maximum output tokens |
capabilities | array | Supported features |
pricing | object | Pricing information |
Capabilities
| Capability | Description |
|---|---|
chat | Chat completions |
function_calling | Tool/function support |
vision | Image input support |
tool_use | Anthropic tool use |
json_mode | Structured JSON output |
Available Models
OpenAI
| Model | Context | Best For |
|---|---|---|
gpt-4o | 128K | General purpose, quality |
gpt-4o-mini | 128K | Fast, cost-effective |
gpt-4-turbo | 128K | Complex reasoning |
o1 | 200K | Advanced reasoning |
o1-mini | 128K | Fast reasoning |
gpt-3.5-turbo | 16K | Simple tasks |
Anthropic
| Model | Context | Best For |
|---|---|---|
claude-opus-4 | 200K | Most capable |
claude-sonnet-4 | 200K | Balanced |
claude-3-5-sonnet | 200K | General purpose |
claude-3-opus | 200K | Previous flagship |
claude-3-haiku | 200K | Fast, cheap |
Filtering Models
By Provider
Only show OpenAI models:
curl "https://api.transactional.dev/ai/v1/models?provider=openai" \
-H "Authorization: Bearer gw_sk_your_key"By Capability
Filter in your application code:
const response = await fetch('https://api.transactional.dev/ai/v1/models', {
headers: { 'Authorization': `Bearer ${apiKey}` },
});
const { data: models } = await response.json();
// Only models with vision
const visionModels = models.filter(m =>
m.capabilities.includes('vision')
);
// Only models with function calling
const functionModels = models.filter(m =>
m.capabilities.includes('function_calling') ||
m.capabilities.includes('tool_use')
);SDK Examples
TypeScript
import OpenAI from 'openai';
const openai = new OpenAI({
baseURL: 'https://api.transactional.dev/ai/v1',
apiKey: process.env.GATEWAY_API_KEY,
});
const models = await openai.models.list();
for (const model of models.data) {
console.log(`${model.id} (${model.owned_by})`);
}Python
from openai import OpenAI
client = OpenAI(
base_url="https://api.transactional.dev/ai/v1",
api_key=os.environ["GATEWAY_API_KEY"]
)
models = client.models.list()
for model in models.data:
print(f"{model.id} ({model.owned_by})")Notes
- Only models from configured providers are returned
- Add provider API keys in Settings to see their models
- Pricing information is for reference and may change
Next Steps
- Chat Completions - Use these models
- Error Handling - Handle errors
- Providers - Configure providers