Pricing
list_customiser_font_tiers
readList customiser font tiers
Find the font tiers a simple_letter customiser prices its fonts by, and obtain the tier ids the other font tier tools take.
Overview
Lists the font tiers of one customiser, oldest first. A font tier is a named price list that a simple_letter customiser charges its fonts by: per size, a base price and a per-letter price for each line count. Each entry gives the tier id, name, letter pricing mode, Store currency and row count, without the rows; get_customiser_font_tier returns one tier with its rows. These are the same price lists the pricing document publishes as price_lists. Results are paginated and limited to the connected Store. 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.
- A merchant has connected this store and approved the pricing:read scope.
Arguments
The customiser id, from list_customisers.
How many tiers to return per page, between 1 and 100. Defaults to 20.
The opaque next_cursor value from the previous page. Omit it for the first page.
Result
Up to limit tier summaries, oldest first, each with id, name, letter_pricing_mode, currency, row_count and timestamps, plus the cursor for the next page. A customiser that does not price by font tier returns an empty list.
The page of tier summaries, oldest first. row_count is the number of size rows the tier prices.
Error cases
The connection was approved without pricing:read.
The cursor was altered or reused for a different customiser; restart with no cursor.
No customiser with that id belongs to this store. Call list_customisers to rediscover a valid id.
First page of a customiser font tiers
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_customiser_font_tiers",
"arguments": {
"customiser_id": 42
}
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t",
"store": {
"id": 12,
"name": "Demo Signs"
},
"customiser_id": 42,
"font_tiers": [
{
"id": 7,
"customiser_id": 42,
"name": "Standard",
"letter_pricing_mode": "every_letter_cost",
"currency": "USD",
"created_at": "2026-08-13T00:00:00Z",
"updated_at": "2026-08-13T00:00:00Z",
"row_count": 3
}
],
"pagination": {
"has_more": false,
"next_cursor": null
}
}
}
}A connection that reads customisers but not pricing (error)
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_customiser_font_tiers",
"arguments": {
"customiser_id": 42
}
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"isError": true,
"structuredContent": {
"error": {
"code": "insufficient_scope",
"title": "Insufficient scope",
"detail": "The tool [list_customiser_font_tiers] requires the pricing:read scope, which this connection was not granted.",
"recovery": "The connection was authorised without the scope this tool needs. Ask the merchant to reconnect the connector and approve the scope named in required_scopes. Do not retry this call.",
"required_scopes": [
"pricing:read"
],
"granted_scopes": [
"customisers:read"
]
}
}
}
}