Sign Customiser

Customiser languages

Validate a customiser language

Copy page

Dry-run a language create without persisting anything. The request body is the same body the create accepts, and the response on the failing paths is exactly the problem the create would return — the same validation runs, only persistence is skipped.

POST/api/v3/customisers/{customiser_id}/languages/validate-create

Overview

On a body that would apply, the response is a 200 customiser_language_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 create, and the customiser languages 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; a 422 problem carries the create own validation_failed or unknown_field diagnostics. 401, 403, 404, and 429 problems behave as on the create 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

Request body

language_codestringbody

Request body example

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