Skip to main content

Models

Every POST /v1/worlds request must set model to one of the ids your key can use. There is no default: a missing model (or "default") fails with 400 INVALID_INPUT, and the error lists the models enabled for your key. Discover them with GET /v1/models — each entry includes docs_url.

Endpoints​

EndpointScopePurpose
GET /v1/modelsworlds:readList generation models available to this API key.

List models​

API_KEY="spt_live_..."

curl -s https://api.spaitial.ai/v1/models \
-H "Authorization: Bearer $API_KEY"
{
"models": [
{
"id": "Echo 2",
"description": "Standard image/panorama to 3D Gaussian splat pipeline.",
"is_default": false,
"credit_cost": 160,
"estimated_duration_seconds": 522,
"docs_url": "https://docs.spaitial.ai/api/generation-models#default"
},
{
"id": "Echo HQ",
"description": "Higher-detail, higher-resolution worlds.",
"is_default": false,
"credit_cost": 800,
"estimated_duration_seconds": 3600,
"docs_url": "https://docs.spaitial.ai/api/generation-models#echo-hq"
}
]
}

Pass one of the listed id values (Echo 2, Echo HQ, …) as model.

Public models​

These two are enabled on every developer account unless your account is configured otherwise.

Echo 2​

Echo 2 is the fast, general-purpose pipeline.

FieldValue
API idEcho 2
Best forText, image, or panorama → world
Typical time~8 minutes
Credits160
curl -sX POST https://api.spaitial.ai/v1/worlds \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "Echo 2",
"input": {
"type": "text",
"prompt": "A sunlit Tuscan villa courtyard at golden hour"
}
}'

Echo HQ​

Higher detail and resolution. Same input types as Echo 2; longer runtime and higher credit cost.

FieldValue
API idEcho HQ
Best forHigher-detail / higher-resolution worlds
Typical time~60 minutes
Credits800
curl -sX POST https://api.spaitial.ai/v1/worlds \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "Echo HQ",
"input": {
"type": "text",
"prompt": "A sunlit Tuscan villa courtyard at golden hour"
}
}'

The id is case-sensitive and includes the space: "Echo HQ", not "hq" or "echo-hq".

Using a model​

curl -sX POST https://api.spaitial.ai/v1/worlds \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "Echo HQ",
"title": "Tuscan courtyard",
"input": {
"type": "text",
"prompt": "A sunlit Tuscan villa courtyard at golden hour"
}
}'

See Create a world for the full request body, and Credits and Billing for plan capacity.

Private models​

Some accounts are granted extra models. Those appear in GET /v1/models only after they are granted, and their docs_url points at the matching private docs in the developer portal.