vistaprint.com APIvistaprint.com ↗
Access Vistaprint's catalog of 6,400+ products via 4 endpoints. Browse categories, search by keyword, and retrieve pricing matrices, quantities, and variants.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/96c9bdb9-fcb3-4dba-9644-21ce045ddaa8/get_categories' \ -H 'X-API-Key: $PARSE_API_KEY'
Get all product categories with product counts. Returns a 3-level category hierarchy (top-level, subcategories level 1, subcategories level 2) with the number of products in each category.
No input parameters required.
{
"type": "object",
"fields": {
"total_products": "integer - total number of products in catalog",
"top_level_categories": "array of objects with category_id, level, product_count",
"subcategories_level_1": "array of objects with category_id, level, product_count",
"subcategories_level_2": "array of objects with category_id, level, product_count",
"subcategories_level_3": "array of objects with category_id, level, product_count (may be empty)"
},
"sample": {
"data": {
"total_products": 6413,
"top_level_categories": [
{
"level": 0,
"category_id": "promotionalProducts",
"product_count": 3266
},
{
"level": 0,
"category_id": "clothingAndBags",
"product_count": 2704
}
],
"subcategories_level_1": [
{
"level": 1,
"category_id": "bags",
"product_count": 1010
}
],
"subcategories_level_2": [
{
"level": 2,
"category_id": "personalizedPens",
"product_count": 470
}
],
"subcategories_level_3": []
},
"status": "success"
}
}About the vistaprint.com API
The Vistaprint API covers 6,400+ products across 4 endpoints, giving developers structured access to the full catalog including categories, pricing, quantities, and product variants. The get_product_details endpoint returns a complete pricing matrix keyed by quantity, option groups with available choices, and both list and discounted unit prices — all addressable by product ID retrieved from search_products or get_products_by_category.
Category Navigation
The get_categories endpoint returns a 3-level hierarchy: top-level categories, two levels of subcategories, and an optional third level. Each node carries a category_id, its level, and a product_count. These IDs feed directly into get_products_by_category, which accepts the category param plus an optional category_level integer (0 = top, 1 = sub, 2 = sub-sub) to target the right tier. Results are paginated with 0-indexed page and a max limit of 100 per request; the response includes total_pages and total_products for full traversal.
Product Search and Listing
search_products accepts a free-text query and returns matching product objects alongside a category_breakdown object that maps top-level category IDs to counts — useful for understanding how a search term distributes across product lines like business cards, apparel, or signage. Each product object in both search and category responses includes product_id, name, quantities (with MOQ, default, and recommended values), pricing, rating, and categories.
Product Details and Pricing Matrix
get_product_details takes a product_id (e.g., PRD-0BKUQJYW) and returns the full option surface: an options array of named groups with available choices, a compatible_options map, and a compatible_quantities array of valid order sizes. The pricing_by_quantity object maps each quantity to total_list_price, total_discounted_price, unit_list_price, and unit_discounted_price, making it straightforward to build price-break comparisons. An optional product_version param can pin a specific version; if omitted, the current version is resolved automatically.
- Build a custom Vistaprint price comparison tool that renders unit price vs. order quantity using
pricing_by_quantitydata. - Sync Vistaprint's full product catalog into an internal procurement system using paginated
get_products_by_categorycalls. - Power a print-on-demand configurator by surfacing available option groups and compatible quantities from
get_product_details. - Identify minimum order quantities across product lines using the MOQ field returned in product listing responses.
- Aggregate category-level product counts from
get_categoriesto build a catalog overview dashboard. - Use
search_productswith thecategory_breakdownresponse field to classify what product types match a given keyword. - Monitor discounted vs. list pricing across 6,400+ SKUs to detect promotional changes over time.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Vistaprint have an official developer API?+
What does `get_product_details` return beyond basic product info?+
pricing_by_quantity matrix with total and unit prices (both list and discounted) for every valid order quantity, an options array of configurable groups and their available choices, a compatible_options map, and the compatible_quantities array. The mpv_id field provides the merchandising product view identifier alongside the standard product_id.How does pagination work when browsing categories?+
get_products_by_category and search_products both use 0-indexed page numbers with a maximum limit of 100 products per request. Each response includes total_pages, current_page, and total_products (or total_results for search) so you can determine how many requests are needed to exhaust a category or query.