---
title: "Write backdrop prompts for scenes that have none."
method: POST
path: "/artifacts/{artifactId}/theater-backdrop-prompts"
tags: ["Artifacts"]
---

# Write backdrop prompts for scenes that have none.

`POST /artifacts/{artifactId}/theater-backdrop-prompts`

## Request

- Base URL: `https://docs.sleeperhit.studio/api/v1`
- URL: `https://docs.sleeperhit.studio/api/v1/artifacts/{artifactId}/theater-backdrop-prompts`
- Auth: HTTP bearer

Writes a backdrop prompt (the setting only: no characters, no on-screen text) for every scene that has none, or for `sceneIndexes`; `force` writes over a prompt a scene has. Each comes from the scene's heading, lines and mood in the show's look. Synchronous. While the project's gate is closed it is refused with 409 `project_precondition_failed` before anything is written. Requires `Idempotency-Key`. Scope: `artifact:publish`.

## Headers

- `Idempotency-Key` string, required

## Request body

- TableReadBackdropPromptsRequest
  - `sceneIndexes` integer[]: Only these scenes. Omit for every scene.
  - `force` boolean: Write over a prompt a scene has.

## Response `200`

The prompts written and the scenes skipped.

- TableReadBackdropPromptsResponse
  - `artifactId` string, required
  - `written` object[], required
    - `sceneIndex` integer, required
    - `heading` string, required
    - `prompt` string, required
  - `skipped` integer[], required: Scenes that kept the prompt they had, or got none.
  - `totalScenes` integer, required

## Other responses

- `400`: Request payload failed validation. The error message names the offending field.
- `401`: Missing, malformed, revoked, or expired API key.
- `403`: API key is valid but lacks the scope, is blocked by IP allowlist, or the account is disabled.
- `404`: The story artifact does not exist or is owned by another account.
- `409`: The artifact is not in a state where this operation is valid yet (e.g. requesting an MP4 render before the share link exists).
- `429`: Rate limit for this API key + IP + route family was exceeded.
- `500`: The API failed unexpectedly. Safe to retry with the same Idempotency-Key.

---

[API](https://skmtc.dev/sleeperhit/apis/sleeper-hit-studio-story-api.md) · [All operations](https://skmtc.dev/sleeperhit/apis/sleeper-hit-studio-story-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sleeperhit/apis/sleeper-hit-studio-story-api/revisions/64c1102ccb2f?raw)
