Sign Customiser

Customiser letter parts

Create a letter part's colour

Copy page

Adds a colour to this letter part's colour selection, at the end of its presentation order.

POST/api/v3/customisers/{customiser_id}/letter-types/{letter_type_id}/letter-parts/{letter_part}/colours

Overview

The body, the defaults, and the renderability rules are the customiser colours family's, unchanged: name is required, a single colour needs a hexcode and a multi or flow colour needs multi_colour_hexcodes (422 colour_value_required), and the custom_texture finish is refused until image upload ships. The letter part must already have a colour selection — create one through the letter-part routes first. Requires customisers:write and an Idempotency-Key. The write clears the customiser's cached storefront configuration and runs the advisory language sync. It never regenerates Shopify products, product images, or the product cache. Option writes also spend one unit of a separate per-key option-write budget.

Authorisation

Bearer token required. Include it in theAuthorization header.

Required scope: customisers:write

Path parameters

customiser_idstringpathrequired

The customiser id.

Example: 1

letter_type_idstringpathrequired

The letter type id.

Example: 7

letter_partstringpathrequired

The letter part.

Example: face

Request body

colour_typestringbody
texturestringbody
min_size_rulestringbody
price_multiplier_targetstringbody
namestringbody
descriptionstringbody
hexcodestringbody
multi_colour_hexcodesarraybody
base_priceintegerbody
price_multipliernumberbody

Request body example

application/json
{
  "colour_type": "single",
  "texture": "flat",
  "min_size_rule": "any",
  "price_multiplier_target": "base_letter_price",
  "name": "Warm White",
  "description": "Our warmest white",
  "hexcode": "#FFEEDD",
  "multi_colour_hexcodes": [
    "#FF0000",
    "#00FF00"
  ],
  "base_price": 500,
  "price_multiplier": 1.2
}
Create a letter part's colour
curl https://web.signcustomiser.com/api/v3/customisers/1/letter-types/7/letter-parts/face/colours \
  --request POST \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer YOUR_API_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
  "colour_type": "single",
  "texture": "flat",
  "min_size_rule": "any",
  "price_multiplier_target": "base_letter_price",
  "name": "Warm White",
  "description": "Our warmest white",
  "hexcode": "#FFEEDD",
  "multi_colour_hexcodes": [
    "#FF0000",
    "#00FF00"
  ],
  "base_price": 500,
  "price_multiplier": 1.2
}'
Response
{
  "data": {
    "object": "colour",
    "id": 31,
    "customiser_id": 42,
    "name": "Warm White",
    "description": null,
    "colour_type": "single",
    "hexcode": "#FFEEDD",
    "multi_colour_hexcodes": null,
    "texture": "flat",
    "min_width_cm": null,
    "min_height_cm": null,
    "min_size_rule": "any",
    "base_price": 0,
    "currency": "USD",
    "price_multiplier": 1,
    "price_multiplier_target": "base_letter_price",
    "sort_order": 1,
    "image_url": null,
    "example_image_url": null,
    "texture_image_url": null,
    "created_at": "2026-08-13T00:00:00Z",
    "updated_at": "2026-08-13T00:00:00Z"
  },
  "links": {
    "self": "https://web.signcustomiser.com/api/v3/customisers/42/letter-types/7/letter-parts/face/colours/31",
    "documentation": "https://www.signcustomiser.com/help/api/"
  },
  "meta": {
    "api_version": "v3",
    "request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
  }
}