Locations
Locations are project-scoped settings that can be assigned to scenes. They carry a name, description, and optional background image, all of which inform AI generation and are displayed in the studio UI.
Data model​
| Field | Type | Description |
|---|---|---|
id | number | Primary key |
projectId | number | Owning project |
name | string | Short display name |
description | string | Prose description of the setting |
tags | string[] | Searchable labels (e.g. interior, sci-fi) |
imageUrl | string | null | Background image URL |
Assigning to a scene​
PATCH /scenes/:sceneId/assign-location sets the scene's locationId. In the studio, the location background image is used as the context for start/end frame generation.
AI helpers​
Two AI endpoints help writers manage locations consistently:
POST /locations/ai/recommend— suggests new locations given episode contextPOST /locations/ai/check-duplicate— flags when a proposed location is too similar to an existing one
Both use the LLM service and count against the generation rate limit.
Permission scopes​
| Scope | What it guards |
|---|---|
LOCATION_CREATE | Creating a location |
LOCATION_EDIT | Editing name / description / tags |
LOCATION_DELETE | Deleting a location |
LOCATION_IMAGE_GENERATE | AI image generation |
LOCATION_IMAGE_UPLOAD | Manual upload |
SCENE_LOCATION_ASSIGN | Assigning a location to a scene |