Export Theme
The theme and everything reachable from it — its designs, their
recipes, the assets those slot and the assets those reference — as one
self-contained Scenebrew entity container (.sbe, JSON), the file a
Unity project or the standalone Architect imports. Each asset's bytes
ride inline or as an attachment whose uri is this API's
download_asset_file route by digest (/v1/assets/{id}/files/{role}?sha256=),
which keeps resolving after the asset's file is replaced; attachments
decides which. X-Scenebrew-Content-Hash is the container's hash, the
same in every mode. Bytes are exactly what the library wrote — hash the
body to verify. A theme in another project is a 404. Requires the read
scope.
Authorization
apiKey First-party API key (sbk_live_…), presented as a Bearer token.
In: header
Path Parameters
uuidQuery Parameters
How asset bytes travel: full (every attachment inline), by-size (inline up to the server's threshold, else by digest URI), by-role (inline only the roles and slots named), reference (never bytes — URIs only).
"by-size"Value in
- "full"
- "by-size"
- "by-role"
- "reference"
by-role: file roles to inline (mask, height, mesh, …).
by-role: glob patterns over recipe slots to inline (mesh:wall_*).
Response Body
application/vnd.scenebrew.entity+json
application/problem+json
curl -X GET "https://example.com/v1/themes/497f6eca-6276-4993-bfeb-53cbbbba6f08/export"{ "entities": { "0199a1c0-0000-7000-8000-000000000001": { "designs": [ { "kind": "design", "uuid": "0199a1c0-0000-7000-8000-000000000002" } ], "kind": "theme", "name": "Default tilemap", "uuid": "0199a1c0-0000-7000-8000-000000000001" }, "0199a1c0-0000-7000-8000-000000000002": { "kind": "design", "name": "Tilemap terrain", "recipes": [ { "kind": "recipe", "uuid": "0199a1c0-0000-7000-8000-000000000003" } ], "uuid": "0199a1c0-0000-7000-8000-000000000002" }, "0199a1c0-0000-7000-8000-000000000003": { "kind": "recipe", "name": "Blockout tiles", "operator": "swf::terrain_blockout_tiles", "parameters": { "chamfer_corners": 1 }, "uuid": "0199a1c0-0000-7000-8000-000000000003" } }, "root": "0199a1c0-0000-7000-8000-000000000001", "schema_version": "0.1.0"}