Update a story project.
Partial update. Only the supplied fields are modified. metadata is MERGED into what is stored, never written over it: a key you send is set, a key you send as null is removed, a key you leave out is kept, and metadata: null removes every key you can set. metadata.seasons (the project's named seasons) is kept whatever you send, and a patch that names it is refused with 400 validation_failed — create a season with POST /story-projects/{projectId}/seasons and move an episode with PATCH /scripts/{scriptId} seasonNumber. Pass archived: true to archive (or false to unarchive). brandLogo sets the project's brand logo ({ base64, contentType? } or { sourceUrl }: a PNG, JPEG or WebP of up to 2 MB and 4096 pixels on a side, decoded by the server and stored as its own clean copy on the studio's media host) or, as null, removes it; the project returns its address as brandLogoUrl, and a closing sequence can end on it (logoCard). A malformed logo is refused with 400 validation_failed. workspaceRole (writer | creator | business) moves the project to that role's list in the sidebar's switcher; it never changes the project's kind. A kind: product change from a Screenwriter account is refused with 403 product_kind_not_for_role.
Request
- Base URL: https://docs.sleeperhit.studio/api/v1
- URL: https://docs.sleeperhit.studio/api/v1/story-projects/{projectId}
- Auth: HTTP bearer
Request body
Response
Updated project envelope.
Changes
No recorded changes to this operation across all 2 revisions of this API.