AI sign designs
get_ai_sign_design_source
readGet AI sign design source
Confirm that the bytes of a source arrived, or find out why verification rejected them.
Overview
Read the status of an AI sign design source created through the current connection. uploaded means the bytes arrived and are not yet verified; consumed means a job accepted them; rejected gives the verification failure code and can follow consumed, because the job converts an SVG or a PDF to an image and can find the file unreadable. It never returns the presigned target. Requires ai_sign_designs:read. Has no side effects.
Permission
Requires theai_sign_designs:readpermission. A connection without it answersinsufficient_scopenaming the permission to approve.
Annotations
Prerequisites
- Use a source id created through the current connection, including after token refresh.
- A merchant has connected this store and approved the ai_sign_designs:read scope.
Arguments
The source id create_ai_sign_design_source returned.
Result
One source record. The presigned target and its headers are deliberately omitted; they are returned only once, by create_ai_sign_design_source.
pending, uploaded (arrived, not verified), consumed (accepted by a job), rejected or expired. Expected to grow: tolerate unknown values.
One of: pending, uploaded, consumed, rejected, expired
Why verification rejected the bytes, or null. Expected to grow.
One of: size_mismatch, too_large, content_type_mismatch, dimensions_exceeded, pixel_limit_exceeded, undecodable, unsafe_content, source_changed
Error cases
The connection was approved without ai_sign_designs:read.
The id is unknown, expired and pruned, or belongs to another connection or store.
Poll a source whose bytes have arrived
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_ai_sign_design_source",
"arguments": {
"source_id": "aisrc_9f2c4b7ad13e6058ba41cd4201"
}
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t",
"store": {
"id": 12,
"name": "Demo Signs"
},
"source_id": "aisrc_9f2c4b7ad13e6058ba41cd4201",
"filename": "shopfront-logo.png",
"content_type": "image/png",
"byte_size": 482133,
"status": "uploaded",
"verification_failure_code": null,
"width_px": null,
"height_px": null,
"expires_at": "2026-10-21T09:30:00Z",
"consumed_at": null,
"created_at": "2026-10-20T09:30:00Z"
}
}
}A source id this connection does not own (error)
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "get_ai_sign_design_source",
"arguments": {
"source_id": "aisrc_00000000000000000000000000"
}
}
}{
"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."
}
}
}
}