AI sign designs
Get AI sign design capabilities
Returns what the AI sign designer accepts and produces for the authenticated store, and a snapshot of the store's credit wallet. Read it before you declare a source.
Overview
Requires ai_sign_designs:read. Has no
side effects: it reserves no credit and creates nothing.
available says whether a design job can start now. It is false while
the AI sign designer is turned off for the store, or while design jobs
cannot start for this store yet. Job creates then answer 503
ai_sign_designer_unavailable, and existing sources and jobs stay
readable. While the designer is turned off, source declarations answer
the same 503.
source lists the input limits. Sources are raster images only (PNG,
JPEG including .jfif, and WebP). max_byte_size is 5 MiB. Either side
may be at most max_dimension_px pixels and the decoded image at most
max_pixels pixels. These limits are checked against the real bytes
when a design uses the source. An upload target expires after
upload_target_ttl_seconds, and an unused source expires after
retention_hours.
pricing states the credit policy: one credit for each delivered
design and none for a failed design. credits is the store wallet when
this response was made. available_units is what a new design can
spend now, held_units is reserved by designs still in progress, and
observed_at is the time of the snapshot.
Authorisation
Bearer token required. Include it in the Authorization header.
Required scope: ai_sign_designs:read
curl https://web.signcustomiser.com/api/v3/ai-sign-design-capabilities \
--header 'Accept: application/json' \
--header 'Authorization: Bearer YOUR_API_TOKEN'{
"data": {
"object": "ai_sign_design_capabilities",
"available": true,
"product_families": [
"neon",
"channel_letter",
"metal_cut_out"
],
"source": {
"content_types": [
"image/png",
"image/jpeg",
"image/webp"
],
"file_extensions": [
"png",
"jpg",
"jpeg",
"jfif",
"webp"
],
"max_byte_size": 5242880,
"max_dimension_px": 8192,
"max_pixels": 16777216,
"upload_target_ttl_seconds": 600,
"retention_hours": 24
},
"output_formats": [
"svg",
"eps",
"illustrator_pdf"
],
"pricing": {
"credits_per_delivered_design": 1,
"credits_per_failed_design": 0
},
"credits": {
"available_units": 42,
"plan_units": 40,
"purchased_units": 2,
"held_units": 1,
"plan_cycle_ends_at": "2026-11-01T00:00:00Z",
"observed_at": "2026-10-20T09:30:00Z"
}
},
"links": {
"self": "https://web.signcustomiser.com/api/v3/ai-sign-design-capabilities",
"documentation": "https://www.signcustomiser.com/help/api/"
},
"meta": {
"api_version": "v3",
"request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}
}{
"type": "https://www.signcustomiser.com/help/api/problems/missing_api_key",
"title": "Missing API key",
"status": 401,
"code": "missing_api_key",
"detail": "Provide a store API key as a bearer token.",
"request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}{
"type": "https://www.signcustomiser.com/help/api/problems/insufficient_scope",
"title": "Insufficient scope",
"status": 403,
"code": "insufficient_scope",
"detail": "This operation requires the ai_sign_designs:read scope.",
"required_scopes": [
"ai_sign_designs:read"
],
"granted_scopes": [
"customisers:read"
],
"request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}{
"type": "https://www.signcustomiser.com/help/api/problems/not_found",
"title": "Not found",
"status": 404,
"code": "not_found",
"detail": "The requested endpoint does not exist. The API reference lists every available operation: https://www.signcustomiser.com/help/api/",
"request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}{
"type": "https://www.signcustomiser.com/help/api/problems/unknown_parameter",
"title": "Unknown query parameter",
"status": 422,
"code": "unknown_parameter",
"detail": "This endpoint accepts no query parameters.",
"request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}{
"type": "https://www.signcustomiser.com/help/api/problems/rate_limited",
"title": "Too many requests",
"status": 429,
"code": "rate_limited",
"detail": "You have exceeded the request limit for this API key.",
"retry_after": 60,
"request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t"
}