Sign Customiser

Customiser languages

Validate language translations

Copy page

Dry-run a translation write without persisting anything. The request body is the same body the update accepts, and the response on the failing paths is exactly the problem that update would return — the same key allowlist and the same placeholder checks run, only persistence is skipped.

POST/api/v3/customisers/{customiser_id}/languages/{language_code}/translations/validate-update

Overview

On a body that would apply, the response is a 200 customiser_language_translations_validation confirmation. Nothing is written, no caches are touched, no idempotency key is consumed, and no activity is recorded, so the operation is always safe to repeat. The verdict is advisory: nothing binds it to a later update, and the catalogue can legitimately change between the two calls. Requires the customisers:write scope, because it is the write dry-run twin. A 400 problem means the body is not valid JSON; 422 problems carry the update own invalid_translation_key, validation_failed, or unknown_field diagnostics. 401, 403, 404, and 429 problems behave as on the update operation.

Authorisation

Bearer token required. Include it in theAuthorization header.

Required scope: customisers:write

Path parameters

customiser_idstringpathrequired

The customiser id, from the list customisers operation.

Example: 1

language_codestringpathrequired

The language tag, from the list customiser languages operation.

Example: fr

Request body

translationsarraybody

Request body example

application/json
{
  "translations": [
    []
  ]
}
Validate language translations
curl https://web.signcustomiser.com/api/v3/customisers/1/languages/fr/translations/validate-update \
  --request POST \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer YOUR_API_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
  "translations": [
    []
  ]
}'
Response
{
  "data": {
    "object": "customiser_language_translations_validation",
    "operation": "update",
    "customiser_id": 42,
    "language_code": "fr",
    "valid": true
  },
  "links": {
    "self": "https://web.signcustomiser.com/api/v3/customisers/42/languages/fr/translations/validate-update",
    "documentation": "https://www.signcustomiser.com/help/api/"
  },
  "meta": {
    "api_version": "v3",
    "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
  }
}