List scenes
curl --request GET \
--url https://api.splat-3d.com/v1/scenes \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.splat-3d.com/v1/scenes"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.splat-3d.com/v1/scenes', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"id": "a1b2c3d4e5f6",
"title": "My living room",
"description": "Morning light, north window",
"address": "123 Main St",
"status": "complete",
"training_model": "gsplat",
"preset": "standard",
"is_public": false,
"thumbnail_r2_key": "<string>",
"thumbnail_url": "<string>",
"num_gaussians": 123,
"ssim": 123,
"psnr": 26.1,
"psnr_holdout": 123,
"ssim_holdout": 123,
"training_time_seconds": 233.7,
"spz_size_bytes": 21000000,
"sog_size_bytes": 48000000,
"ply_size_bytes": 460000000,
"processing_stage": "<string>",
"processing_pct": 123,
"processing_started_at": "2026-04-13T12:01:00.000Z",
"processing_completed_at": "2026-04-13T12:10:46.000Z",
"created_at": "2026-04-13T12:00:00.000Z",
"updated_at": "2026-04-13T12:05:00.000Z",
"processing_error": "<string>",
"viewer_url": "<string>",
"download_url": "<string>",
"format": "sog",
"lod_meta_url": "<string>"
}
],
"meta": {
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"next_cursor": "MjAyNi0wNC0xM1QxMjowMDowMC4xMjM0NTYrMDA6MDA",
"has_more": true,
"count": 123
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}Scenes
List scenes
List all scenes for the authenticated user, newest first, with cursor-based pagination. Each item has the shape GET /v1/scenes/{id} returns.
GET
/
v1
/
scenes
List scenes
curl --request GET \
--url https://api.splat-3d.com/v1/scenes \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.splat-3d.com/v1/scenes"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.splat-3d.com/v1/scenes', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": [
{
"id": "a1b2c3d4e5f6",
"title": "My living room",
"description": "Morning light, north window",
"address": "123 Main St",
"status": "complete",
"training_model": "gsplat",
"preset": "standard",
"is_public": false,
"thumbnail_r2_key": "<string>",
"thumbnail_url": "<string>",
"num_gaussians": 123,
"ssim": 123,
"psnr": 26.1,
"psnr_holdout": 123,
"ssim_holdout": 123,
"training_time_seconds": 233.7,
"spz_size_bytes": 21000000,
"sog_size_bytes": 48000000,
"ply_size_bytes": 460000000,
"processing_stage": "<string>",
"processing_pct": 123,
"processing_started_at": "2026-04-13T12:01:00.000Z",
"processing_completed_at": "2026-04-13T12:10:46.000Z",
"created_at": "2026-04-13T12:00:00.000Z",
"updated_at": "2026-04-13T12:05:00.000Z",
"processing_error": "<string>",
"viewer_url": "<string>",
"download_url": "<string>",
"format": "sog",
"lod_meta_url": "<string>"
}
],
"meta": {
"request_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"next_cursor": "MjAyNi0wNC0xM1QxMjowMDowMC4xMjM0NTYrMDA6MDA",
"has_more": true,
"count": 123
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}{
"error": {
"code": "not_found",
"message": "Scene not found.",
"details": [
{
"field": "iterations",
"value": 15000,
"allowed": {
"min": 3000,
"max": 10000
},
"tier": "standard",
"hint": "iterations=15000 requires the quality tier or higher."
}
]
},
"meta": {
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"period": "2026-10",
"limit": 100,
"field": "scenes_created",
"current": 2
}
}Authorizations
API key in format: s3d_...
Query Parameters
meta.next_cursor from the previous page, unchanged. Opaque.
Example:
"MjAyNi0wNC0xM1QxMjowMDowMC4xMjM0NTYrMDA6MDA"
Required range:
1 <= x <= 100Example:
50