Pricing
get_customiser_length_pricing
readGet customiser length pricing
Read the prices and shipping settings of one length pricing, in the shape update_customiser_length_pricing takes back.
Overview
Reads one length pricing of one customiser with all its boundary rows. Each row gives the largest sign it covers in centimetres, with inch twins and the merchant-authored unit, and its prices: base_price and price_per_letter are integer minor units of the Store currency, while price_per_cm, price_per_sq_cm and the other rates are decimal major currency units. This is the read to make before update_customiser_length_pricing, because sending rows replaces them all. A price list of another customiser or another Store, or a sheet pricing row, is not found. It requires the pricing:read scope and has no side effects.
Permission
Requires thepricing:readpermission. A connection without it answersinsufficient_scopenaming the permission to approve.
Annotations
Prerequisites
- A customiser id from list_customisers and a length pricing id from list_customiser_length_pricings.
- A merchant has connected this store and approved the pricing:read scope.
Arguments
The customiser id, from list_customisers.
The length pricing id, from list_customiser_length_pricings.
Result
The length pricing: id, name, letter_pricing_mode, letter_pricing_method, shipping, currency, rows_revision and every boundary row.
The length pricing with every boundary row.
One of: every_letter_cost, price_by_position
One of: material_length, fixed_letter
The ISO 4217 currency of every integer minor-unit amount on the record.
One of: per_sq_cm, per_kg_volumetric
Error cases
The connection was approved without pricing:read.
No length pricing with that id belongs to that customiser in this store. Call list_customiser_length_pricings to rediscover a valid id.
Read one length pricing
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_customiser_length_pricing",
"arguments": {
"customiser_id": 42,
"length_pricing_id": 9
}
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t",
"store": {
"id": 12,
"name": "Demo Signs"
},
"customiser_id": 42,
"length_pricing": {
"id": 9,
"customiser_id": 42,
"name": "Standard",
"letter_pricing_mode": "every_letter_cost",
"letter_pricing_method": "fixed_letter",
"shipping": {
"calculation": "physical",
"volumetric_divisor": null,
"add_weight_to_product": false
},
"currency": "USD",
"rows": [
{
"base_price": 4500,
"width_limit_cm": 120,
"height_limit_cm": 60,
"length_limit_cm": null,
"price_per_sq_cm": 0.022,
"price_per_sq_cm_basis": "per_sq_cm",
"fixed_length_cm": null,
"width_modifier": null,
"height_modifier": null,
"length_modifier": null,
"max_price_multiplier": null,
"price_per_cm": null,
"price_per_letter": 600,
"price_per_letter_by_position": null
}
],
"created_at": "2026-08-13T00:00:00Z",
"updated_at": "2026-08-13T00:00:00Z"
}
}
}
}A price list id from another customiser (error)
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_customiser_length_pricing",
"arguments": {
"customiser_id": 42,
"length_pricing_id": 999
}
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"isError": true,
"structuredContent": {
"error": {
"code": "resource_not_found",
"title": "Resource not found",
"detail": "The requested resource does not exist or does not belong to the authenticated store.",
"recovery": "The identifier does not exist in this store. Use the matching list tool to rediscover a valid id."
}
}
}
}