Skip to content

AI Models ​

Browse available AI models and their capabilities. Currently, only Google Gemini models are active and available to users.

Endpoints ​

MethodPathDescriptionAuthRate Limit
GET/ai/modelsList available modelsJWT + Entitlement60/min
GET/ai/models/:idGet model detailsJWT + Entitlement60/min

Active Models ​

8 Gemini models are currently available:

ModelInput Cost/1K TokensOutput Cost/1K Tokens
gemini-2.5-pro$0.00125$0.01000
gemini-2.5-flash$0.00030$0.00250
gemini-2.5-flash-lite$0.00010$0.00040
gemini-2.0-flash$0.00010$0.00040
gemini-3-pro-preview$0.00200$0.01200
gemini-3-flash-preview$0.00050$0.00300
gemini-3.1-pro-preview$0.00200$0.01200
gemini-3.1-flash-lite-preview$0.00025$0.00150

Switching between models requires a Plus subscription or higher.


GET /ai/models ​

List all available AI models.

Authentication: JWT Bearer token + active AI entitlement required. Rate limit: 60/min

Request ​

Query Parameters ​

ParameterTypeRequiredDescription
namestringNoFilter by model name
providerstringNoFilter by provider (e.g. google)
isActivebooleanNoFilter by active status
minCostPer1kTokensnumberNoMinimum cost filter
maxCostPer1kTokensnumberNoMaximum cost filter
limitnumberNoItems per page
offsetnumberNoPagination offset

Response ​

Response Example ​

json
{
  "data": [
    {
      "modelKey": "gemini-2.5-pro",
      "name": "Gemini 2.5 Pro",
      "provider": "google",
      "capabilities": ["chat", "analysis", "reasoning", "vision"],
      "costPer1kTokens": 0.00125,
      "active": true
    },
    {
      "modelKey": "gemini-2.5-flash",
      "name": "Gemini 2.5 Flash",
      "provider": "google",
      "capabilities": ["chat", "analysis", "reasoning"],
      "costPer1kTokens": 0.00030,
      "active": true
    },
    {
      "modelKey": "gemini-2.5-flash-lite",
      "name": "Gemini 2.5 Flash Lite",
      "provider": "google",
      "capabilities": ["chat", "summarization"],
      "costPer1kTokens": 0.00010,
      "active": true
    },
    {
      "modelKey": "gemini-2.0-flash",
      "name": "Gemini 2.0 Flash",
      "provider": "google",
      "capabilities": ["chat", "summarization"],
      "costPer1kTokens": 0.00010,
      "active": true
    },
    {
      "modelKey": "gemini-3-pro-preview",
      "name": "Gemini 3 Pro (Preview)",
      "provider": "google",
      "capabilities": ["chat", "analysis", "reasoning", "vision"],
      "costPer1kTokens": 0.00200,
      "active": true
    },
    {
      "modelKey": "gemini-3-flash-preview",
      "name": "Gemini 3 Flash (Preview)",
      "provider": "google",
      "capabilities": ["chat", "analysis", "reasoning"],
      "costPer1kTokens": 0.00050,
      "active": true
    },
    {
      "modelKey": "gemini-3.1-pro-preview",
      "name": "Gemini 3.1 Pro (Preview)",
      "provider": "google",
      "capabilities": ["chat", "analysis", "reasoning", "vision"],
      "costPer1kTokens": 0.00200,
      "active": true
    },
    {
      "modelKey": "gemini-3.1-flash-lite-preview",
      "name": "Gemini 3.1 Flash Lite (Preview)",
      "provider": "google",
      "capabilities": ["chat", "summarization"],
      "costPer1kTokens": 0.00025,
      "active": true
    }
  ],
  "meta": {
    "total": 8,
    "limit": 20,
    "offset": 0
  }
}

Response Fields ​

FieldTypeDescription
modelKeystringMachine-readable model key
namestringDisplay name
providerstringProvider name
capabilitiesstring[]Supported capabilities
costPer1kTokensnumberCost in USD per 1,000 input tokens
activebooleanWhether the model is currently available

Code Examples ​

bash
curl https://api.chainabit.com/api/v1/ai/models \
  -H "Authorization: Bearer $TOKEN"
javascript
const res = await fetch(`${BASE_URL}/ai/models`, {
  headers: { Authorization: `Bearer ${TOKEN}` },
});
const { data } = await res.json();
python
import requests

res = requests.get(
    f"{BASE_URL}/ai/models",
    headers={"Authorization": f"Bearer {TOKEN}"},
)
data = res.json()["data"]

GET /ai/models/:id ​

Get detailed information about a specific model, including pricing.

Authentication: JWT Bearer token + active AI entitlement required. Rate limit: 60/min

Request ​

Path params: id — from a GET /ai/models response's data[].id. No query parameters.

Response ​

Response Example ​

json
{
  "data": {
    "id": "cm8model01",
    "modelKey": "gemini-2.5-pro",
    "name": "Gemini 2.5 Pro",
    "provider": "google",
    "capabilities": ["chat", "analysis", "reasoning", "vision"],
    "maxTokens": 8192,
    "contextWindow": 1048576,
    "costPerInputToken": 0.00000125,
    "costPerOutputToken": 0.00001000,
    "active": true,
    "createdAt": "2026-03-01T00:00:00.000Z"
  }
}

Response Fields ​

FieldTypeDescription
idstringModel ID
modelKeystringMachine-readable model key
namestringModel name
providerstringUnderlying provider
capabilitiesstring[]Supported capabilities
maxTokensnumberMaximum output tokens
contextWindownumberContext window size in tokens
costPerInputTokennumberCost per input token (USD)
costPerOutputTokennumberCost per output token (USD)
activebooleanWhether the model is currently available
createdAtstringISO 8601

Code Examples ​

bash
curl https://api.chainabit.com/api/v1/ai/models/<model-id> \
  -H "Authorization: Bearer $TOKEN"
javascript
const res = await fetch(`${BASE_URL}/ai/models/${modelId}`, {
  headers: { Authorization: `Bearer ${TOKEN}` },
});
const { data } = await res.json();
python
import requests

res = requests.get(
    f"{BASE_URL}/ai/models/{model_id}",
    headers={"Authorization": f"Bearer {TOKEN}"},
)
data = res.json()["data"]

Notes ​

  • Only active models are returned by default. Pass isActive=false to include inactive models (none currently exposed to users).
  • Model switching between different capability tiers requires a Plus subscription or higher.
  • AI operations consume credits from your wallet. Credit costs are derived from the model's USD pricing with a platform margin applied.
  • Preview models (*-preview) may be updated or replaced without notice.

Built with purpose.