Product Catalog API

All goods sold by Printful are grouped into Products and Variants. Product can describe a specific type, model and manufacturer of the item, while the Variant specifies the more detailed attributes of the product like the exact size/color of a t-Shirt or the dimensions of a poster.

The Product entity is meant only to enable easier browsing of what Printful offers. However when creating orders, the Variant ID is the only attribute that you will use to identify the item.

It is critically important to always refer to the Variant IDs (NOT Product IDs) when creating the orders. Mixing up and using the Product ID instead of the Variant ID can lead to an entirely different item ordered.

Each product can require a different set of graphics files. Mostly all products only need one file, however some allow additional files to be added (e.g. the back print or inside label print for t-Shirts). Printful also allows you to add your own mockup image that will be displayed on the packing slip and will help our staff to better understand your order.
A list of allowed image types for each product is returned together with the Product objects.

Some product types allow additional options for the fulfillment - these options are listed in the Products API response as well.

Get all Product list

GET https://api.printful.com /products

Returns list of Products available in the Printful.
Input parameters:
None
Response format:
code integer Response status code 200
result Product [ ] Array of products
id integer Product ID
type string Product type identifier
brand string Brand name
model string Model name
image string URL of a sample image for this product
variant_count integer Number of available variants for this product
files FileType [ ] Definitions of Print/Mockup file categories that can be attached to this product
id string Deprecated file type identifier. Please use type field instead!
type string File type identifier - use this to specify a file's purpose when creating an order
title string Display name
additional_price string Additional price when this print file type is used
options OptionType [ ] Definitions of additional options that are available for this product
id string Option identifier - use this to specify the option when creating an order
title string Display name
type string Data type of this option (currently only 'bool' is supported)
values string Option values
additional_price string Additional price when this option is used
description string Product description
API key
Execute

Get information about Variant

GET https://api.printful.com /products/variant/{id}

Returns information about a specific Variant and its Product
Input parameters:
id integer Variant ID
Response format:
code integer Response status code 200
result VariantInfo Variant data and Product data
variant Variant Information about the selected Variant
id integer Variant ID, use this to specify the product when creating orders
product_id integer ID of the product that this variant belongs to
name string Display name
size string Item size
color string Item color
color_code string Hexadecimal RGB color code. May not exactly reflect the real-world color
image string URL of a preview image for this variant
price string Variant's price (can change depending on print files and optional settings)
in_stock boolean Stock availability of this variant
product Product Information about the Product that the Variant belongs to
id integer Product ID
type string Product type identifier
brand string Brand name
model string Model name
image string URL of a sample image for this product
variant_count integer Number of available variants for this product
files FileType [ ] Definitions of Print/Mockup file categories that can be attached to this product
id string Deprecated file type identifier. Please use type field instead!
type string File type identifier - use this to specify a file's purpose when creating an order
title string Display name
additional_price string Additional price when this print file type is used
options OptionType [ ] Definitions of additional options that are available for this product
id string Option identifier - use this to specify the option when creating an order
title string Display name
type string Data type of this option (currently only 'bool' is supported)
values string Option values
additional_price string Additional price when this option is used
description string Product description
API key
id Variant ID
Execute

Get Product's Variant list

GET https://api.printful.com /products/{id}

Returns information about a specific product and a list of variants for this product.
Input parameters:
id integer Product ID
Response format:
code integer Response status code 200
result ProductInfo Product data and array of Variants
product Product Information about the selected product
id integer Product ID
type string Product type identifier
brand string Brand name
model string Model name
image string URL of a sample image for this product
variant_count integer Number of available variants for this product
files FileType [ ] Definitions of Print/Mockup file categories that can be attached to this product
id string Deprecated file type identifier. Please use type field instead!
type string File type identifier - use this to specify a file's purpose when creating an order
title string Display name
additional_price string Additional price when this print file type is used
options OptionType [ ] Definitions of additional options that are available for this product
id string Option identifier - use this to specify the option when creating an order
title string Display name
type string Data type of this option (currently only 'bool' is supported)
values string Option values
additional_price string Additional price when this option is used
description string Product description
variants Variant [ ] Array of Variants available for the selected product
id integer Variant ID, use this to specify the product when creating orders
product_id integer ID of the product that this variant belongs to
name string Display name
size string Item size
color string Item color
color_code string Hexadecimal RGB color code. May not exactly reflect the real-world color
image string URL of a preview image for this variant
price string Variant's price (can change depending on print files and optional settings)
in_stock boolean Stock availability of this variant
API key
id Product ID
Execute

Ready to try Printful ?

Get Me Started

Printing is what we do best.

Trusted to print 2 350 719 shirts since 2013