Overview

Base URL

All API requests are made to:

https://api.modelstack.cc

Supported API Formats

ModelStack supports multiple API formats so you can use your preferred SDK without changes:

  • OpenAI format - Compatible with OpenAI SDK and most AI tools
  • Anthropic format - Native Claude API format with advanced features

Just change the base URL and API key - no other code changes needed.

Available Endpoints

OpenAI-Compatible Endpoints

MethodEndpointDescription
POST/v1/chat/completionsCreate a chat completion (OpenAI format)
GET/v1/modelsList available models

Anthropic-Compatible Endpoints

MethodEndpointDescription
POST/v1/messagesCreate a message (Anthropic format)
POST/v1/messages/count_tokensCount tokens for a message

Authentication

All requests require an API key passed via the Authorization header:

Authorization: Bearer your_api_key

API keys are created and managed from your dashboard.

Request Format

All requests use JSON. Set the Content-Type header:

Content-Type: application/json

Response Format

Responses follow the OpenAI response format:

json
{
  "id": "chatcmpl-abc123",
  "object": "chat.completion",
  "created": 1699000000,
  "model": "claude-sonnet-4-6",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Hello! How can I help you?"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 10,
    "completion_tokens": 15,
    "total_tokens": 25
  }
}

Streaming

ModelStack supports Server-Sent Events (SSE) streaming. Set "stream": true in your request body to receive incremental responses.

Rate Limits

When you exceed your current rate limit, requests return a 429 Too Many Requests error. Implement exponential backoff and check your dashboard for account details.