Enterprise-grade AI API with intelligent routing, model management, and usage analytics
Access 11+ AI models through a single unified API endpoint
Intelligent request routing for optimal performance and availability
Real-time token tracking and usage insights across all models
Create and manage keys with granular access control per model
ServiceLabs provides a unified OpenAI-compatible API for accessing multiple AI models. All requests use the base URL:
https://router.servicelabs.biz.id/v1
Send your first request in seconds. Select a tab to see the example:
curl https://router.servicelabs.biz.id/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer sv2-your-api-key" \ -d '{ "model": "glm-5.2", "messages": [{"role": "user", "content": "Hello!"}] }'
import requests response = requests.post( "https://router.servicelabs.biz.id/v1/chat/completions", headers={ "Authorization": "Bearer sv2-your-api-key", "Content-Type": "application/json" }, json={ "model": "glm-5.2", "messages": [{"role": "user", "content": "Hello!"}] } ) print(response.json())
const response = await fetch("https://router.servicelabs.biz.id/v1/chat/completions", { method: "POST", headers: { "Authorization": "Bearer sv2-your-api-key", "Content-Type": "application/json" }, body: JSON.stringify({ model: "glm-5.2", messages: [{ role: "user", content: "Hello!" }] }) }); const data = await response.json(); console.log(data);
All API requests require a Bearer token in the Authorization header. API keys start with sv2-.
Authorization: Bearer sv2-your-api-key
You can create and manage API keys from the Dashboard.
List all available models. Returns an OpenAI-compatible model list.
// Response { "object": "list", "data": [ { "id": "glm-5.2", "object": "model", "owned_by": "servicelabs" }, { "id": "minimax-m3", "object": "model", "owned_by": "servicelabs" }, ... ] }
Create a chat completion. Supports all standard OpenAI parameters.
// Request Body { "model": "glm-5.2", "messages": [ { "role": "user", "content": "Hello!" } ], "temperature": 0.7, "max_tokens": 1024 }
// Response (OpenAI format) { "id": "chatcmpl-abc123", "object": "chat.completion", "model": "glm-5.2", "choices": [{ "index": 0, "message": { "role": "assistant", "content": "Hello! How can I help?" }, "finish_reason": "stop" }], "usage": { "prompt_tokens": 8, "completion_tokens": 9, "total_tokens": 17 } }
Set "stream": true to receive Server-Sent Events (SSE). Each chunk is a data: line with a partial delta.
// Request { "model": "glm-5.2", "messages": [{ "role": "user", "content": "Write a poem" }], "stream": true } // Response (SSE stream) data: {"choices":[{"delta":{"content":"Roses"}}]} data: {"choices":[{"delta":{"content":" are"}}]} data: {"choices":[{"delta":{"content":" red"}}]} data: [DONE]
| Model ID | Description | Category |
|---|---|---|
| glm-5.2 | Advanced language model for general tasks | Language |
| minimax-m3 | High-performance multi-modal model | Language |
| kimi-k2.7-code | Specialized code generation model | Code |
| qwen3.7-plus | Enhanced reasoning and analysis | Reasoning |
| deepseek-v4-pro | Professional-grade deep reasoning | Reasoning |
| glm-5.2-cf | Fast edge-optimized language model | Language |
| kimi-k2.6-cf | Lightweight code assistant | Code |
| kimi-k2.7-code-cf | Edge-optimized code model | Code |
| mimo-v2.5-pro | Advanced visual understanding | Vision |
| mimo-v2.5 | Efficient visual analysis | Vision |
| qwen3.7-max | Maximum capability language model | Language |
Rate limits are applied per API key. Limits include:
When a limit is reached, the API returns a 429 Too Many Requests response. Use the dashboard to adjust limits or reset usage.
| Code | Meaning |
|---|---|
| 401 | Invalid or missing API key |
| 403 | Model not allowed for this key |
| 429 | Rate limit exceeded |
| 502 | Upstream service error |
All models are accessible through the unified ServiceLabs API.
Start free. Scale when you need to.
For getting started
For production workloads
For large-scale deployments