Skip to content

Query Model List Prices ​

Endpoint Path ​

http
GET /api/open/models/list-prices

Request Parameters ​

FieldTypeRequiredDescriptionConstraints
enterprise_idintNoEnterprise IDIf provided, filter by that enterprise's accessible models; otherwise filter by the current personal account
model_namestringNoExact model name matchComma-separated; must match returned model_name
keywordstringNoFuzzy model name search
pageintNoPage numberStarts from 1, default 1; alias p
page_sizeintNoPage sizeDefault 20, max 500

Request Example ​

json
GET 'https://neolink.com/backend/api/open/models/list-prices?enterprise_id=1001&keyword=gpt&page=1&page_size=20'
GET 'https://neolink.com/backend/api/open/models/list-prices?model_name=gpt-4o,doubao-seed-2-1-pro-260628&page=1&page_size=20'

Return Information ​

On success, HTTP 200 with envelope: { "success": true, "message": "", "data": { ... } }.

“Required” means whether the field always appears in a successful response (No = may be omitted, commonly due to omitempty).

FieldTypeRequiredDescription
successboolYesRequest success indicator; true on success, false on failure
messagestringYesStatus message; usually empty on success; localized error text on failure
dataobjectNoBusiness payload; returned only on success; see table below

data (pagination)

FieldTypeRequiredDescription
itemsobject[]YesCurrent page model list prices
totalintYesTotal count after filtering
pageintYesCurrent page number
page_sizeintYesCurrent page size

items[] fields

FieldTypeRequiredDescription
model_namestringYesModel name as shown in the model plaza
supported_endpoint_typesstring[]YesSupported endpoint types; [] if none
max_prompt_tokensintYesMax input tokens
max_completion_tokensintYesMax output tokens
model_ratio_configuredboolYesWhether ratio is explicitly configured
unitstringYesFixed as "M tokens"; only explains the metering unit for sibling ratio unit prices
scenario_statusstringNoScenario table status: ok / partial / unsupported; may be omitted when scenario capability is absent
scenario_dimsobject[]NoBilling dimension definitions; see nested table below
scenariosobject[]NoPer-tier scenario prices; see nested table below
model_ratio_usd / model_ratio_cnystringNoInput list price (four decimals); typically omitted when a usable scenario table exists
completion_ratio_usd / completion_ratio_cnystringNoOutput list price; omitted when output is hidden or a scenario table exists
cache_ratio_usd / cache_ratio_cnystringNoCache hit/read price; omitted when not configured or a scenario table exists
create_cache_ratio_usd / create_cache_ratio_cnystringNoCache create/write price; omitted when not configured or a scenario table exists
image_ratio_usd / image_ratio_cnystringNoImage-related unit price; omitted if not configured
audio_ratio_usd / audio_ratio_cnystringNoAudio input-related unit price; omitted if not configured
audio_completion_ratio_usd / audio_completion_ratio_cnystringNoAudio output-related unit price; omitted if not configured

scenario_status values

ValueMeaningRecommendation
okDimensions fully enumerableDisplay scenario table directly
partialSome factors fixed to baseline or value domain inferredCan display; note the table may not cover all real request combinations
unsupportedCannot derivescenarios empty; use Path B

scenario_dims[]

FieldTypeDescription
keystringDimension key, e.g. extra:resolution, num:input_len
labelstringDisplay name, e.g. Resolution
valuesobject[]Optional values for this dimension; each item has value (machine value, e.g. 1080p) and label (display text, e.g. 1080P)
inferredbooltrue when value domain is inferred
varsstring[]Common on input-length axis: len (full context) / p (billable input)

scenarios[]

FieldTypeDescription
tierstringTier name
matchobjectDimension key → matched value list
linesobject[]Pricing lines for this tier
per_call_usd / cnystringPer-call fixed fee (returned when present)
per_call_usd_rawnumberUnrounded USD fixed fee
freeboolEntire scenario is free

scenarios[].lines[]

FieldTypeDescription
keystringe.g. p / c / out_sec
labelstringe.g. Input / Output
unitstringMetering unit for this line (authoritative on scenario path)
amount_usd / amount_cnystringFour-decimal display price
amount_usd_rawnumberUnrounded USD value (for very low unit prices)
outputboolWhether output side
segmentsobject[]Segmented pricing (optional)
freeboolThis line is explicitly configured as free

scenarios[].lines[].segments[]

FieldTypeDescription
fromnumberSegment start
tonumberSegment end; may be omitted for last segment
unboundedboolLast segment has no upper bound
amount_usd / amount_cnystringSegment unit price
amount_usd_rawnumberUnrounded USD value

How to Get USD / CNY Prices (Required Reading) ​

Path A: Usable Scenario Table (Preferred) ​

Condition: scenario_status is ok or partial, and scenarios is non-empty.

  • Render filters from scenario_dims
  • Match current dimension values with scenarios[].match
  • Read lines[].amount_usd / amount_cny from the matched tier
  • Use lines[].unit for units (e.g. CNY/M tokens, CNY/sec, CNY/image, CNY/M chars); do not use top-level unit
  • Sibling model_ratio_* / cache_ratio_* etc. are not emitted in this case, to avoid dual sources of truth

Path B: No Usable Scenario Table (Standard Volume Billing) ​

Condition: no usable scenarios, model_ratio_configured == true, and fields such as model_ratio_usd are present.

  • Input: model_ratio_usd / model_ratio_cny
  • Output: completion_ratio_usd / completion_ratio_cny (if present)
  • Cache hit/read: cache_ratio_usd / cache_ratio_cny (if present)
  • Cache create: create_cache_ratio_usd / create_cache_ratio_cny (if present)
  • Image/audio: image_ratio_* / audio_ratio_* / audio_completion_ratio_* (if present)
  • Unit: top-level unit = "M tokens" (per million tokens)
  • Amount: four-decimal string, e.g. "5.0000"; CNY already converted by system exchange rate

Path C: No Price ​

model_ratio_configured == false and no usable scenarios → no *_ratio_*, no usable scenarios. Means no publishable list price (do not treat as free).

Response Example ​

Standard volume billing (Path B)

json
{
  "success": true,
  "message": "",
  "data": {
    "items": [
      {
        "model_name": "doubao-seed-2-1-pro-260628",
        "supported_endpoint_types": ["openai"],
        "max_prompt_tokens": 128000,
        "max_completion_tokens": 16384,
        "scenario_status": "unsupported",
        "scenarios": [],
        "model_ratio_usd": "0.8571",
        "model_ratio_cny": "6.0000",
        "completion_ratio_usd": "4.2857",
        "completion_ratio_cny": "30.0000",
        "cache_ratio_usd": "0.1714",
        "cache_ratio_cny": "1.2000",
        "create_cache_ratio_usd": "0.0024",
        "create_cache_ratio_cny": "0.0170",
        "model_ratio_configured": true,
        "unit": "M tokens"
      }
    ],
    "total": 1,
    "page": 1,
    "page_size": 20
  }
}

With scenario table (Path A, excerpt)

json
{
  "model_name": "doubao-seedance-2-0-260128",
  "scenario_status": "ok",
  "scenario_dims": [
    {
      "key": "extra:resolution",
      "label": "分辨率",
      "values": [{ "value": "720p", "label": "720p" }]
    }
  ],
  "scenarios": [
    {
      "tier": "480p/720p-不含视频输入",
      "match": { "extra:resolution": ["480p", "720p"] },
      "lines": [
        {
          "key": "c",
          "label": "输出",
          "unit": "元/百万tokens",
          "amount_usd": "6.5714",
          "amount_cny": "46.0000",
          "amount_usd_raw": 6.5714285714,
          "output": true
        }
      ]
    }
  ],
  "model_ratio_configured": true,
  "unit": "M tokens"
}

Other Notes ​

  • List is ordered by publish/create time descending; filter scope aligns with /api/pricing/accessible.
  • List prices do not include user/enterprise group discounts.
  • Failures are typically auth failures (e.g. AK/SK 401); successful business responses still use the success envelope.