Skip to Content

List the SynapseX models on the API

This page shows you how to read the SynapseX model catalog at runtime and which id to try first. At the end you will have a list of model ids printed from your own code, instead of a table copied out of documentation that may already be stale.

The endpoint

GET https://platform.synapsex.ai/api/v1/models

Authenticate with your key. The response is OpenAI-shaped:

{ "object": "list", "data": [ { "id": "synapsex-forge-code-14b-v1", "object": "model", "owned_by": "synapsex", "context_window": 256000 } ] }

Each entry carries id, object, owned_by and context_window.

What this list is, and what it is not

/models returns the SynapseX model catalog. It is not filtered down to the models your key is allowed to call. An id can appear here and still be refused with HTTP 403 when you send it to /chat/completions. Treat the response as a catalog, not as a permission list.

Read it at runtime anyway, rather than hard-coding a table out of documentation: availability is controlled server-side and can change without a client update, and the catalog is not the same list the SynapseX Chat interface shows.

Which model should you start with?

Start with:

synapsex-forge-code-14b-v1

It is the safest first id to try on the API. If a call is refused with an HTTP 403 that names the model rather than the scope, read the error message — it lists the model ids that are available on the public API. Pick one of those. Do not work through the /models list by trial and error.

List the models

With curl:

export SYNAPSEX_API_KEY=sk-synapsex-YOUR-API-KEY curl -sS https://platform.synapsex.ai/api/v1/models \ -H "Authorization: Bearer $SYNAPSEX_API_KEY"

With the Python SDK:

from synapsex_platform import LLMClient client = LLMClient() # reads SYNAPSEX_API_KEY for model in client.list_models().get("data", []): print(model["id"], model.get("context_window"))

A useful pattern is to check once, at startup, that the id you intend to send is still in the catalog, and fail loudly instead of silently falling back to another id that may not be callable:

PREFERRED = "synapsex-forge-code-14b-v1" catalog = {m["id"] for m in client.list_models().get("data", [])} if PREFERRED not in catalog: raise SystemExit(f"{PREFERRED} is no longer in the SynapseX catalog: {sorted(catalog)}")

How model choice affects cost and speed

In general terms, and without publishing an API price table:

  • Larger context windows cost more per request for the same conversation, because you can — and usually do — send more tokens.
  • Stronger reasoning models cost more per token and are slower; compact models are cheaper and faster.

The practical approach is to default to the smallest model that passes your evaluation, and route only the hard requests to a stronger one. Because the API is stateless, switching models is just changing the model field on the next call.