Get an upload link for artwork
request_artwork_uploadFor a client that holds the file (Claude Code, Cursor, a script): returns a signed upload_url to PUT the file's bytes to, and an upload_id for attach_artwork. target says where it goes: a cart line (line_id from get_cart), a saved quote's line (line_id from get_quote) or an order job (item_id from get_order), plus design (1 to N, on a job with several designs) and side (front or back). Give the file name with its extension (pdf is best; ai, eps, psd, jpg, png and tif are accepted) and its size in bytes, up to 700 MB. Refused when the line's artwork can no longer change. A chat client that cannot send a file should use attach_artwork_from_url or get_artwork_uploader_link instead. Needs a signed-in Printdash account: called without one, the connection asks the customer to sign in on printdash.io.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| target | Yes | Where the artwork goes. | |
| file_name | Yes | The file's name with its extension: business-card.pdf. PDF is best. | |
| size_bytes | Yes | The file's size in bytes (up to 700 MB). | |
| content_type | No | Optional; the type is decided by the extension, as the site's uploaders do. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| next | Yes | ||
| side | Yes | ||
| design | Yes | ||
| method | Yes | ||
| target | Yes | ||
| headers | Yes | ||
| file_name | Yes | ||
| max_bytes | Yes | ||
| upload_id | Yes | Pass to attach_artwork once the PUT succeeded. | |
| expires_at | Yes | ||
| upload_url | Yes | PUT the file's bytes here, with the Content-Type in headers. | |
| content_type | Yes |