Get the Model List of AceDataCloud Platform

Returns all available LLM / image / video / audio / embedding / reordering models on the platform — returns in a flat view compatible with OpenAI /v1/models style, compatible with OpenAI SDK. A Proxy service typically corresponds to dozens or even hundreds of models.

Applicable scenarios:

  • Render "model selection dropdown" in your product.
  • Perform model availability checks at the routing layer.
  • Sync to LiteLLM / OpenRouter style middleware.

ℹ️ This interface belongs to the AceDataCloud Platform Management API, with a unified prefix of https://platform.acedata.cloud/api/v1/.

Interface Overview

Item Content
Method GET
URL https://platform.acedata.cloud/api/v1/models/
Authentication ❌ Public

Authentication Description

This interface is completely public, no account token or login state required.

💡 However: if an account token is included, the response will be filtered based on the services you have applied for, returning only the models you can call.

Query Parameters

Parameter Type Required Default Description
service_id UUID No Filter by service
tag string No Filter by tag (e.g., chat, embedding, image, video, tts)
limit integer No 100 Number of items per page, maximum 200
offset integer No 0 Offset
ordering string No Sorting field

Request Examples

cURL

# All models
curl 'https://platform.acedata.cloud/api/v1/models/?limit=200' \
  -H 'accept: application/json'

# Only view chat types
curl 'https://platform.acedata.cloud/api/v1/models/?tag=chat&limit=200' \
  -H 'accept: application/json'

Python

import requests

resp = requests.get(
    "https://platform.acedata.cloud/api/v1/models/",
    headers={"accept": "application/json"},
    params={"tag": "chat", "limit": 200},
    timeout=10,
)
data = resp.json()
print(f"Total {data['count']} chat models")
for m in data["items"][:20]:
    print(f"  {m['id']:50s}  ${m.get('prompt_price') or 0:.6f}/1K in, ${m.get('completion_price') or 0:.6f}/1K out")

Node.js

const r = await fetch('https://platform.acedata.cloud/api/v1/models/?limit=200')
const { count, items } = await r.json()
console.log(`Total ${count} models`)

Response Example (HTTP 200)

{
  "count": 187,
  "items": [
    {
      "id": "gpt-4.1",
      "object": "model",
      "owned_by": "openai",
      "service_id": "38ecf158-36f2-42f2-8e7f-6786cdfc2452",
      "service_alias": "openai",
      "service_title": "OpenAI",
      "context_window": 1048576,
      "max_output_tokens": 32768,
      "prompt_price": 0.000002,
      "completion_price": 0.000008,
      "cached_prompt_price": 0.0000005,
      "tags": ["chat", "vision", "tool_call"],
      "created_at": 1733616000
    }
  ]
}

ℹ️ Field names are also compatible with OpenAI's official /v1/models response (id, object, owned_by), and can be directly fed to the OpenAI SDK.

Response Field Description

Field Type Description
id string Model ID (e.g., gpt-4.1, claude-sonnet-4, midjourney, veo-3)
object string Always "model" (OpenAI compatible field)
owned_by string Owner of the model (openai / anthropic / google / meta / xai...)
service_id UUID The platform service ID to which this model is attached
service_alias string Service alias
service_title string Service title
context_window integer Context window length (Token count, specific to LLM)
max_output_tokens integer Maximum output Token count per request
prompt_price number null
completion_price number null
cached_prompt_price number null
tags array Model capability tags: chat / vision / tool_call / audio / embedding / rerank / image / video / tts / stt etc.
created_at integer Model launch time (Unix timestamp in seconds, OpenAI compatible field)

Error Handling

HTTP code Meaning
400 invalid Invalid parameter

Practical Tips

  • OpenAI SDK Compatible: The response from this interface can be directly used as a replacement source for client.models.list() in the OpenAI Python SDK.
  • Prices are per Token: Not per thousand Tokens — this differs from the "per 1M tokens" shown in OpenAI's official pricing table. Remember to multiply by 1,000,000 when converting.
  • null price indicates billing by call count: Typically for image / video / audio models, each call is billed by a fixed number of Credits. See the package table in Creating AceDataCloud Platform Recharge Orders.
  • Filter actual callable models: Including an account token will return only the models under the services you have applied for.