Override one shipped string for one language
PUT /site-text/{key}
Upserts the override for (key, language).
THE KEY MUST EXIST IN THE SHIPPED CATALOGUE. A key the frontend
never renders is refused with 422 naming the key, rather than
stored to no effect — ADR 0081 §1’s fail-loud rule. The check is
enforced here, not only in the admin UI, because a caller
holding system.config.write can reach this endpoint directly.
Requires system.config.write: rewriting the site’s wording is
the same kind of act as renaming the site (#718).
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The dotted i18n key, e.g. nav.collections.
Request Body required
Section titled “Request Body required ”PUT body for /site-text/{key}. The key rides the path.
object
Example
enReplacement string. May be empty — an operator blanking a label is a legitimate edit, and is distinct from reverting (DELETE), which restores the shipped text.
Example
LibrariesResponses
Section titled “ Responses ”The stored override
object
The dotted i18n key this override replaces.
Example
nav.collectionsLocale code the override applies to.
Example
enThe replacement string. Plain text — it flows through the
client’s {var} interpolation and is never rendered as
HTML.
Example
LibrariesMalformed request
object
Human-readable error summary
Example
the request could not be completedAuthentication required, missing, or invalid
object
Human-readable error summary
Example
the request could not be completedExample
{ "error": "authentication required: sign in and retry with a valid session or API token"}Authenticated but missing required capabilities
object
Human-readable error summary
Example
the request could not be completedRequest shape is valid but the action doesn’t apply (e.g. subtitles on a non-video/audio asset).
object
Human-readable error summary
Example
the request could not be completed