Product Deployment Guide
This comprehensive guide walks you through deploying products to Etsy, TikTok Shop, and Amazon using the Dodgeprint API.
Quick Overview
The deployment process involves gathering required IDs from various endpoints, then submitting a deployment request. The deployment happens asynchronously and typically completes in 5-15 seconds.
Currently supported: Etsy, TikTok Shop, Amazon Coming soon: Shopify, Dodgeprint Marketplace
Deployment Workflow
Follow this phase to phase workflow to successfully deploy your products:

Platform Requirements
Each platform requires different fields in your deployment request:
Etsy Requirements
| Field | Required | Description |
|---|---|---|
shipping_profile_id | ✅ Yes | Etsy shipping profile ID |
return_policy_id | ✅ Yes | Etsy return policy ID |
when_made | ✅ Yes | When item was made: made_to_order, 2020_2025, 2010_2019, before_2010 |
who_made | ✅ Yes | Who made it: i_did, collective, someone_else |
is_supply | ✅ Yes | Is this a craft supply? (boolean) |
tags | No | Product tags (max 13, each ≤20 chars) |
shop_section_id | No | Shop section ID |
personalization_id | No | Personalization template ID |
Complete Etsy Payload Example
{
"type": "insert",
"site_id": 6529,
"content_id": 2414,
"selected": [1635986],
"variants": {
"id": 4028,
"headers": [
{"key": "variant0", "name": "Size"},
{"key": "variant1", "name": "Color"}
],
"childs": [
{
"id": 505660,
"variant0": "24x36 inch",
"variant1": "Black",
"price": 45.99,
"quantity": 100
},
{
"id": 505661,
"variant0": "18x24 inch",
"variant1": "White",
"price": 35.99,
"quantity": 150
}
],
"category": {
"id": 2197,
"taxonomy_id": "1027"
}
},
"shipping_profile_id": 6811,
"return_policy_id": 5,
"tags": ["Canvas Print", "Wall Art", "Custom"],
"when_made": "made_to_order",
"who_made": "i_did",
"is_supply": false,
"shop_section_id": 28745001,
"personalization_id": 1,
"listing_type": "physical"
}
Key Points:
shipping_profile_id&return_policy_id: Required for physical products (get from respective APIs)tags: Max 13 tags, each must be ≤20 characterswhen_made,who_made,is_supply: Required by Etsy for all listings
TikTok Shop Requirements
| Field | Required | Description |
|---|---|---|
content_id | ✅ Yes | Content template ID (REQUIRED for TikTok) |
warehouses | ✅ Yes | Warehouse identifier (e.g., WAREHOUSE_US) |
variants | ✅ Yes | Product variants with prices & quantities |
Complete TikTok Shop Payload Example
{
"type": "insert",
"site_id": 7832,
"content_id": 2414,
"selected": [1635986],
"warehouses": "WAREHOUSE_US",
"variants": {
"id": 4028,
"headers": [
{"key": "variant0", "name": "Size"},
{"key": "variant1", "name": "Color"}
],
"childs": [
{
"id": 505660,
"variant0": "24x36 inch",
"variant1": "Black",
"price": 45.99,
"quantity": 100
},
{
"id": 505661,
"variant0": "18x24 inch",
"variant1": "White",
"price": 35.99,
"quantity": 150
}
],
"category": {
"id": 2197,
"taxonomy_id": "1027"
}
},
"listing_type": "physical"
}
Key Points:
content_id: REQUIRED for TikTok (unlike other platforms where it's optional)warehouses: REQUIRED - Must match your TikTok Shop warehouse settings- All variants must have valid
priceandquantityvalues - TikTok has strict content guidelines - ensure descriptions comply
Amazon Requirements
| Field | Required | Description |
|---|---|---|
product_definitions | ✅ Yes | Product definition type (e.g., SHIRT, SHOES) |
bullet_point | ✅ Yes | Bullet point template identifier |
product_type | ✅ Yes | Amazon product type |
brands | No | Brand information with origin_id |
generic_keyword | No | Keywords for Amazon search optimization |
Complete Amazon Payload Example
{
"type": "insert",
"site_id": 8945,
"content_id": 2414,
"selected": [1635986],
"variants": {
"id": 4028,
"headers": [
{"key": "variant0", "name": "Size"},
{"key": "variant1", "name": "Color"}
],
"childs": [
{
"id": 505660,
"variant0": "Small",
"variant1": "Black",
"price": 45.99,
"quantity": 100
},
{
"id": 505661,
"variant0": "Medium",
"variant1": "White",
"price": 45.99,
"quantity": 150
}
],
"category": {
"id": 2197,
"taxonomy_id": "1027"
}
},
"product_definitions": "SHIRT",
"bullet_point": "bullet_template_1",
"product_type": "SHIRT",
"generic_keyword": "cotton t-shirt casual wear comfortable",
"brands": [
{
"origin_id": "BRAND123"
}
],
"product_attributes": [],
"shipping_package_template_id": 1,
"listing_type": "physical"
}
Key Points:
product_definitions&product_type: REQUIRED - Must match Amazon's product taxonomybullet_point: REQUIRED - Used for the key features section on Amazon listingsgeneric_keyword: Optional but recommended for improving Amazon search rankingbrands: Optional - Important for Amazon Brand Registry benefits
Step-by-Step Instructions
Step 1: Get Site ID
First, retrieve the site ID for your connected e-commerce platform.
When filtering sites by platform, use these platform_id values:
- Etsy:
platform_id=1 - TikTok:
platform_id=4 - Amazon:
platform_id=5 - Shopify:
platform_id=6
# Example: Get Etsy sites
curl -X GET "https://api.dodgeprint.com/api/v1/sites?platform_id=1" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "X-Workspace-Id: 359"
Response:
{
"success": true,
"data": [
{
"id": 6529,
"name": "My Etsy Shop",
"platform_id": 1,
"platform_name": "Etsy",
"shop_id": "12345678",
"shop_name": "MyShop",
"is_active": true,
"created_at": "2025-01-15 10:30:45"
}
]
}
Extract: site_id = 6529
Step 2: Get Product ID
Retrieve products from your catalog to get the product ID you want to deploy.
curl -X GET "https://api.dodgeprint.com/api/v1/products?limit=10" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "X-Workspace-Id: 359"
Response:
{
"success": true,
"data": [
{
"id": 1635986,
"name": "Custom Canvas Print",
"sku": "CANVAS-001",
"status": "active"
}
]
}
Extract: product_id = 1635986
Step 3: Get Variant Group Data
Retrieve the complete variant structure for your product. This data will be copied directly into the deployment request.
curl -X GET "https://api.dodgeprint.com/api/v1/group-variants/4028" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "X-Workspace-Id: 359"
Response:
{
"success": true,
"data": {
"id": 4028,
"headers": [
{
"key": "variant0",
"name": "Size"
},
{
"key": "variant1",
"name": "Color"
}
],
"childs": [
{
"id": 505660,
"variant0": "24x36 inch",
"variant1": "Black",
"price": 45.99,
"quantity": 100
},
{
"id": 505661,
"variant0": "18x24 inch",
"variant1": "White",
"price": 35.99,
"quantity": 150
}
],
"category": {
"id": 2197,
"taxonomy_id": "1027"
}
}
}
Extract: Copy the entire data object - you'll use this as the variants field in deployment.
Step 4: Get Content Template (if needed)
- TikTok Shop: ✅ REQUIRED - Must provide
content_id - Etsy: ⚠️ Optional - Can use content template or leave blank
- Amazon: ⚠️ Optional - Can use content template or leave blank
curl -X GET "https://api.dodgeprint.com/api/v1/contents" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "X-Workspace-Id: 359"
Response:
{
"success": true,
"data": [
{
"id": 2414,
"name": "Standard Product Description Template",
"content": "<p>High quality product...</p>"
}
]
}
Extract: content_id = 2414
Step 5: Deploy Product
Now submit the deployment request with all the gathered data.
Example: Etsy Deployment
curl -X POST "https://api.dodgeprint.com/api/v1/deploy-product" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "X-Workspace-Id: 359" \
-H "Content-Type: application/json" \
-d '{
"type": "insert",
"site_id": 6529,
"content_id": 2414,
"selected": [1635986],
"variants": {
"id": 4028,
"headers": [
{"key": "variant0", "name": "Size"},
{"key": "variant1", "name": "Color"}
],
"childs": [
{
"id": 505660,
"variant0": "24x36 inch",
"variant1": "Black",
"price": 45.99,
"quantity": 100
}
],
"category": {
"id": 2197,
"taxonomy_id": "1027"
}
},
"shipping_profile_id": 6811,
"return_policy_id": 5,
"tags": ["Canvas Print", "Wall Art", "Custom"],
"when_made": "made_to_order",
"who_made": "i_did",
"is_supply": false
}'
Success Response:
{
"success": true,
"message": "Product deployment initiated successfully",
"data": {
"product_on_site_id": 123456,
"status": "pending",
"estimated_time": "5-15 seconds"
}
}
Step 6: Wait for Completion
The deployment happens asynchronously. Wait 5-15 seconds, then check the deployment status or verify on the platform directly.
Common Issues & Solutions
Error Code Reference
| Error Code | Description | Solution |
|---|---|---|
400 | Missing required fields | Check platform requirements table above |
400 | Platform not supported | Verify platform is Etsy, TikTok, or Amazon |
403 | Invalid workspace | Check X-Workspace-Id header |
403 | Site not owned by workspace | Verify site_id belongs to your workspace |
500 | Platform API error | Retry after 5 minutes, check platform status |
Next Steps
- 📖 Authentication Guide - How to get API tokens
- 🎓 First Deployment Tutorial - Complete walkthrough with examples
- 📕 API Reference - Full API documentation
API Reference
For complete API documentation including all fields and parameters, see:
👉 POST /deploy-product API Reference
If you encounter issues or have questions:
- 📧 Contact support: [email protected]
- 💬 Visit: https://app.dodgeprint.com/support