Upload and validate artwork
validate_artworkUpload artwork and check that it prints well on one product placement. Send exactly one of: artwork with svg (markup, best for text and logos), base64 (a PNG, JPEG or SVG file up to about 2 MB, no data: prefix) or url (a public HTTPS link to the file); file (a file object from your client); or upload_link:true when you cannot send the file in this call. Returns artwork_id and PASS/WARN/FAIL checks: print size in mm, resolution (DPI), print and safe area, transparent background, contrast with the product colour. For photos and AI images use preset center_chest. Use the artwork_id in quote.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| file | No | A file that your client gives you as a file object (for example in ChatGPT). | |
| size | No | Garment size, e.g. "XL". Print areas can differ by size; without it the smallest size is checked. | |
| color | No | Product colour, for the contrast check. | |
| preset | No | Named position inside the placement, e.g. "center_chest", "left_chest", "full_front". Defaults to the placement default. | |
| top_mm | No | Distance from the top of the print area to the top of the artwork. | |
| artwork | No | New artwork to upload: exactly one of svg, base64 or url. | |
| left_mm | No | Distance from the left edge of the print area. Default: horizontally centred. | |
| width_mm | No | Exact printed width of the visible artwork in millimetres. Height follows the aspect ratio. | |
| height_mm | No | Maximum printed height in millimetres. | |
| placement | No | Print location on the product, e.g. "front" or "back". See get_product for the list. | front |
| artwork_id | No | Re-validate artwork uploaded earlier, or validate the file of an upload link. | |
| product_id | Yes | Product to print on. | |
| upload_link | No | Set true when you cannot send the file in this call. The answer gives an artwork_id and a one-time upload_url: upload with curl, or give the link to the person. Then call validate_artwork with the artwork_id. |
Output Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| artwork | No | ||
| next_step | Yes | What the agent should do next, in plain language. | |
| artwork_id | No | Only in the upload_link answer: the reserved id for the file. | |
| expires_at | No | ||
| upload_url | No | Only in the upload_link answer: the one-time upload link. | |
| validation | No |