Printago API
GET
/v1/customizer/designs/{id}/with-files
Get design with per-layer files
Get a design row plus every per-layer file with a short-lived signed URL. Used by the order detail page to surface what the customer submitted on a given OrderItem (resolved from `inputs.design_id`). `configName` is null when the originating config has been deleted — the design + files survive via `ON DELETE SET NULL`.
Path Parameters
id
required
string
The customizer design ID
Response Schema
DesignWithFilesResponse
configNamerequirednullable
string
designrequired
object
A submitted design (SVG + metadata) created by a customer.
Pre-Phase-2 rows hold a single merged SVG at `storagePath`. New rows leave
`storagePath` null and reference per-layer files via the
`customizer_design_files` table instead.
configIdrequired
string
pattern: ^[a-z0-9]{24}$
createdAtrequired
string
format: date-time
designJsonrequired
any
etsyReceiptIdrequirednullable
string
externalUrirequirednullable
string
fileSourcerequired
"internal" | "external_uri"
internalexternal_uri
finishrequirednullable
string
frameColorrequirednullable
string
idrequired
string
pattern: ^[a-z0-9]{24}$
shopifyOrderIdrequirednullable
string
storagePathrequirednullable
string
storeIdrequired
string
pattern: ^[a-z0-9]{24}$
updatedAtrequired
string
format: date-time
filesrequired
object[]
colorrequired
string
idrequired
string
mimeTyperequired
string
rolerequired
"body" | "outline"
bodyoutline
signedUrlrequired
string
slotrequired
string
sortOrderrequired
number
Example Response
200 OK — application/json
{
"design": {
"configId": "string",
"fileSource": "internal",
"storagePath": "string",
"externalUri": "string",
"finish": "string",
"frameColor": "string",
"shopifyOrderId": "string",
"etsyReceiptId": "string",
"id": "string",
"storeId": "string",
"createdAt": "2025-01-15T12:00:00.000Z",
"updatedAt": "2025-01-15T12:00:00.000Z"
},
"configName": "string",
"files": [
{
"id": "string",
"slot": "string",
"sortOrder": 1,
"role": "body",
"color": "string",
"mimeType": "string",
"signedUrl": "string"
}
]
}