Introduction
Running a product photography studio as an ecommerce seller means juggling three constant headaches: shooting consistent product images, training models to recognise your specific products, and then generating dozens of marketing variations for different channels. Most studios do this manually. A photographer shoots the product, someone uploads it to a design tool, a machine learning specialist trains a custom model, then a marketer spends hours in Photoshop creating variants for Instagram, TikTok, email, and paid ads. Each handoff is a bottleneck. Each step is expensive.
What if you could photograph a product once, then automatically generate a trained AI model of that product, and have marketing variations ready for every channel within minutes? No manual uploads. No waiting for specialists. No human intervention between steps.
This workflow combines three powerful tools through an orchestration platform to build a fully automated product photography studio. You shoot, the system does everything else.
The Automated Workflow
We will use Make (Integromat) as the orchestration layer because it handles file uploads gracefully and integrates well with the APIs we need. If you prefer n8n for self-hosting or Zapier for simplicity, both work; the logic translates easily.
The three-stage pipeline works like this:
-
Upload a raw product photo to a cloud folder or API endpoint.
-
AI-Boost processes the image: removes backgrounds, enhances colours, applies professional lighting corrections.
-
PickorCraft trains a custom model on the processed image. This model learns your specific product's visual characteristics.
-
SellerPic-AI generates marketing variations: Instagram square crops, TikTok vertical formats, email banner dimensions, and ad-specific crops with text overlays.
-
All outputs land in your cloud storage, sorted by channel.
Setting up the Make Workflow
Log into Make and create a new scenario. We will build this as a five-step module:
Step 1: Trigger on file upload
Use the Google Drive or Dropbox trigger to watch for new files in a folder called "Raw Photos". Configure it to filter for image files only (.jpg, .png).
Trigger: Watch Folder
Folder: /ecommerce/Raw Photos
File types: image/*
Polling: Every 5 minutes
Step 2: Send to AI-Boost for processing
The AI-Boost API endpoint for background removal and enhancement is:
POST https://api.aiboost.io/v2/process
Content-Type: application/json
{
"image_url": "https://your-cloud-storage.com/raw-photos/product-001.jpg",
"operations": [
{
"type": "remove_background",
"padding": 20
},
{
"type": "enhance_colors",
"saturation": 1.15,
"contrast": 1.1
},
{
"type": "auto_light",
"strength": 0.8
}
],
"output_format": "png",
"api_key": "YOUR_AIBOOST_API_KEY"
}
In Make, use the HTTP module to send this request. Map the file URL from the trigger to the image_url field. Store the response in a variable called processed_image_url.
Step 3: Train a model with PickorCraft
Once you have a processed image, send it to PickorCraft for model training. The training endpoint accepts the image and creates a unique model identifier:
POST https://api.pickorcraft.com/v1/models/train
Content-Type: application/json
{
"product_id": "product-001",
"image_url": "{{processed_image_url}}",
"product_category": "apparel",
"training_config": {
"epochs": 50,
"batch_size": 16,
"augmentation": true
},
"api_key": "YOUR_PICKORCRAFT_API_KEY"
}
PickorCraft will return a model_id and a training status URL. Store both in Make variables. Training typically takes 3 to 10 minutes depending on image complexity.
Step 4: Wait for model training completion
Add a polling step that checks the training status every 30 seconds:
GET https://api.pickorcraft.com/v1/models/{{model_id}}/status
Headers: Authorization: Bearer YOUR_PICKORCRAFT_API_KEY
Use a loop that repeats until the response contains "status": "ready". Once ready, proceed to the next step.
Step 5: Generate marketing variations with SellerPic-AI
Now that you have a trained model, use SellerPic-AI to generate variations for each marketing channel. The generation endpoint accepts the model ID and a list of target formats:
POST https://api.sellerpic-ai.com/v2/generate-batch
Content-Type: application/json
{
"model_id": "{{model_id}}",
"variations": [
{
"channel": "instagram_feed",
"dimensions": "1080x1080",
"style": "lifestyle",
"background": "white"
},
{
"channel": "tiktok",
"dimensions": "1080x1920",
"style": "trending",
"text_overlay": "Shop Now"
},
{
"channel": "email",
"dimensions": "600x400",
"style": "minimal",
"background": "light_grey"
},
{
"channel": "facebook_ads",
"dimensions": "1200x628",
"style": "bold",
"text_overlay": "Limited Time Offer"
},
{
"channel": "pinterest",
"dimensions": "1000x1500",
"style": "aspirational",
"background": "gradient"
}
],
"api_key": "YOUR_SELLERPIC_API_KEY"
}
SellerPic-AI returns a batch job ID. Poll the results endpoint every 20 seconds:
GET https://api.sellerpic-ai.com/v2/batch/{{batch_id}}/results
Headers: Authorization: Bearer YOUR_SELLERPIC_API_KEY
When complete, the response will contain URLs for each variation:
{
"batch_id": "batch-xyz123",
"status": "completed",
"variations": {
"instagram_feed": [
"https://cdn.sellerpic-ai.com/instagram_feed_1.jpg",
"https://cdn.sellerpic-ai.com/instagram_feed_2.jpg"
],
"tiktok": [
"https://cdn.sellerpic-ai.com/tiktok_1.jpg",
"https://cdn.sellerpic-ai.com/tiktok_2.jpg"
],
"email": [...],
"facebook_ads": [...],
"pinterest": [...]
}
}
Step 6: Save outputs to cloud storage
Use Make's Google Drive or Dropbox module to create a folder structure for the product and save each variation in the appropriate subfolder:
/ecommerce/Marketing Assets/product-001/
/instagram/
variation-1.jpg
variation-2.jpg
/tiktok/
variation-1.jpg
variation-2.jpg
/email/
variation-1.jpg
/facebook_ads/
variation-1.jpg
/pinterest/
variation-1.jpg
variation-2.jpg
Map each variation URL from the SellerPic-AI response to the appropriate folder. Add metadata (product ID, channel, dimensions) to a JSON file in the root folder for easy reference.
Step 7: Send notification
Add a final HTTP request to send yourself a Slack or email notification once everything is complete:
POST https://hooks.slack.com/services/YOUR/WEBHOOK/URL
Content-Type: application/json
{
"text": "Product photography automation complete",
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "*Product:* product-001\n*Model ID:* {{model_id}}\n*Variations generated:* 11\n*Status:* Ready for publishing"
}
}
]
}
Complete Make Scenario Map
To summarise the flow:
-
Trigger: File uploaded to Google Drive.
-
Module 2: HTTP POST to AI-Boost with file URL and processing options.
-
Module 3: Parse AI-Boost response, extract processed image URL.
-
Module 4: HTTP POST to PickorCraft with processed image and training config.
-
Module 5: HTTP GET polling loop to PickorCraft status endpoint (repeat every 30 seconds until
status: ready). -
Module 6: HTTP POST to SellerPic-AI with model ID and variation specifications.
-
Module 7: HTTP GET polling loop to SellerPic-AI batch results endpoint (repeat every 20 seconds).
-
Module 8-13: Six separate HTTP requests to Google Drive to create folders and upload each variation type.
-
Module 14: HTTP POST to Slack webhook with completion summary.
Enable error handling at each HTTP step. Set retries to 3 with exponential backoff (5 seconds, 10 seconds, 20 seconds). If PickorCraft training fails, add a notification and archive the raw photo for manual review.
The Manual Alternative
If you prefer not to automate everything at once, or if your API quotas are limited, you can run parts of this workflow manually:
Option A: Automate only to processed images. Upload raw photos manually to PickorCraft and SellerPic-AI. Have Make handle only the AI-Boost preprocessing and file organisation. This reduces API calls and gives you control over which products get model training.
Option B: Automate processing and model training, generate variations manually. Use Make to handle steps 1 through 4 (upload, process, train). Once you have a trained model ID, open SellerPic-AI's web interface and generate variations interactively. This way you can tweak styles and prompts per product without hitting rate limits.
Option C: Use SellerPic-AI's dashboard only. Upload processed images manually to SellerPic-AI and generate all variations through their interface. You lose end-to-end automation but avoid orchestration complexity.
The choice depends on your volume. If you photograph 5+ products per week, full automation pays for itself. If you do 1-2 products per week, manual variation generation is fine.
Pro Tips
1. Implement retry logic with exponential backoff
API calls fail occasionally due to timeout or rate limits. In Make, add error handling to every HTTP module. Set retries to 3 with delays of 5, 10, and 20 seconds. Log failures to a Google Sheet so you can investigate patterns.
{
"error_handling": {
"retries": 3,
"backoff": {
"type": "exponential",
"initial_delay_seconds": 5,
"multiplier": 2
},
"log_to": "Google Sheets"
}
}
2. Cache processed images to avoid re-running AI-Boost
If your orchestration tool restarts mid-workflow, AI-Boost will reprocess the image and waste credits. Store the processed image URL in a database or spreadsheet immediately after step 2. Before uploading to PickorCraft, check if you already have a cached version for that raw image.
3. Batch variations to avoid SellerPic-AI rate limits
SellerPic-AI limits batch generation to 10-15 variations per minute on most plans. If you request all five channels at once, you risk hitting rate limits. Stagger requests: generate Instagram variations first, wait 30 seconds, then email, then TikTok. Or use separate Make scenarios triggered by webhooks.
4. Monitor API costs and set spending alerts
AI-Boost charges per image processed. PickorCraft charges per model trained. SellerPic-AI charges per variation generated. With full automation, a 50-product shoot could cost £80-150 across all three tools if you do not batch smartly. Set up cost monitoring in Make, Zapier, or your cloud provider. Cap monthly spend by disabling the workflow when you hit a threshold.
5. Version control your processing parameters
Different product categories need different enhancement levels. Clothing might need higher saturation. Electronics need neutral backgrounds and sharp contrast. Store your processing parameters in a JSON configuration file in Google Drive, then pull them into Make based on product category. This way you can tweak settings without editing the scenario each time.
{
"apparel": {
"saturation": 1.2,
"contrast": 1.05,
"auto_light_strength": 0.7
},
"electronics": {
"saturation": 0.95,
"contrast": 1.15,
"auto_light_strength": 0.9
},
"beauty": {
"saturation": 1.25,
"contrast": 1.1,
"auto_light_strength": 0.8
}
}
Cost Breakdown
| Tool | Plan Needed | Monthly Cost | Notes |
|---|---|---|---|
| AI-Boost | Professional | £25-60 | £0.05-0.10 per image processed, depending on image size |
| PickorCraft | Enterprise | £40-100 | £5-10 per model trained, faster training on higher tiers |
| SellerPic-AI | Business | £50-120 | £0.02-0.05 per variation generated, bulk discounts available |
| Make (Orchestration) | Advanced | £20 | 15,000 operations per month; one full workflow uses ~150 operations |
| Google Drive Storage | Basic | Free-15 | Free tier includes 15 GB; upgrade to 100 GB (£1.99/month) if needed |
| Total estimated monthly cost | £135-295 | Scales up with volume; 50 products per month costs roughly £180-250 |
This automation saves a studio operator approximately 8-10 hours per week on image processing, model training, and variation creation. At a fully-loaded cost of £25-40 per hour, that is £200-400 per week in labour savings. The tool costs (£135-295 per month) pay for themselves in less than one week.