Postai Automation
When to Use
Trigger phrases:
"generate product videos from images"
"create TikTok ads from photos"
"batch video variants for affiliate marketing"
"AI voiceover for products"
"PostAI automation"
Automating social media posting across platforms
Scheduling content for multiple accounts
Cross-posting from one platform to another
Managing social media automation workflows
Building social media content pipelines
When NOT to Use
- For one-off tasks that will never repeat
- When the process requires human judgment at every step
- When the cost of automation exceeds the cost of manual execution
Overview
Post AI is a generative video API that transforms product images into TikTok- and Instagram-ready short-form videos with automated captions, voiceovers, and background music. It eliminates the need for video editing software, stock footage sourcing, and manual voice recording by handling the entire production pipeline from static image to finished social media clip.
The core workflow involves uploading one or more product images to the POST AI API, specifying caption text and voice parameters, and receiving a rendered MP4 video optimized for 9:16 vertical format. Each call can generate unique variants with different captions, voices, background tracks, and visual styles — enabling affiliate marketers and e-commerce sellers to create dozens of ad creatives from a single product photo shoot.
Beyond basic video generation, PostAI supports batch processing for multivariate testing. Marketers can generate 10-50 video variants per product in a single automation run, each with different hooks, CTAs, voice accents, and music tracks. The top-performing variants are then pushed to TikTok, Instagram Reels, and Facebook for organic reach or paid amplification.
The automation ecosystem around PostAI includes scheduling via cron or task queues, webhook-based callbacks for generation completion, and integration with social media upload APIs (PostBridge, TikTok Business API, Instagram Graph API) for end-to-end content pipelines. This enables fully unattended content factories that scale from 10 to 1,000 videos per day.
Workflow
# Example: PostAI video generation from product images
import requests
import time
import json
API_KEY = "your_postai_api_key"
PRODUCT_IMAGES = ["product_front.jpg", "product_angle.jpg", "product_detail.jpg"]
def generate_variant(images, caption, voice="en-US-Wavenet-D", music="trending"):
"""Generate one PostAI video variant and return the download URL."""
payload = {
"images": images,
"caption": caption,
"voice": voice,
"background_music": music,
"aspect_ratio": "9:16",
"resolution": "1080x1920"
}
headers = {"Authorization": f"Bearer {API_KEY}"}
resp = requests.post("https://api.postai.ai/v1/video/generate", json=payload, headers=headers)
resp.raise_for_status()
job_id = resp.json()["job_id"]
# Poll until complete
while True:
status = requests.get(f"https://api.postai.ai/v1/video/{job_id}/status", headers=headers)
if status.json()["state"] == "completed":
return status.json()["download_url"]
time.sleep(5)
# Generate 5 caption variants for A/B testing
captions = [
"Game changer for your morning routine!",
"You have been doing it wrong — try this",
"Under 200 calories and tastes amazing",
"Stop scrolling if you love this product",
"My secret weapon for busy moms"
]
for cap in captions:
url = generate_variant(PRODUCT_IMAGES, cap)
print(f"Video ready: {url}")
- Prepare product assets — Gather 3-5 high-resolution product images with clean backgrounds. Include lifestyle shots and close-up detail images for the best visual variety.
- Write caption variants — Draft 5-20 caption hooks per product targeting different angles (benefit-driven, curiosity-gap, problem-solution). Keep each under 60 characters for TikTok's fast-paced format.
- Select voice and music — Choose a voice model matching your target audience's region and language. Select background music that aligns with trending audio in your niche.
- Submit generation jobs — Send video generation requests to the POST AI API. Batch up to 10 concurrent jobs if rate limits allow, otherwise stagger with delays.
- Poll for completion — Monitor job status via polling (5-second intervals) or webhook callbacks. Collect download URLs as jobs complete.
- Quality-check output — Review each variant for visual artifacts, caption timing, voice sync, and CTA readability. Reject and regenerate any with issues.
- Publish and track — Upload validated videos to TikTok, Instagram Reels, or run ads. Tag each variant with UTM parameters and track engagement metrics to identify winning creatives.
Configuration
- API authentication: Store PostAI API key in environment variables (
POSTAI_API_KEY) or a secrets manager. Never hardcode in scripts. - Image requirements: Input images should be at least 1080×1080 px, JPEG or PNG, under 10 MB each. Transparent backgrounds work best for product-focused videos.
- Voice models: Available locales include
en-US,en-GB,id-ID,ja-JP,ko-KR,es-ES. Test each voice with your target caption length to ensure natural pacing. - Aspect ratio: Set to
9:16(1080×1920) for TikTok/Reels/Shorts. Use1:1(1080×1080) for feed posts or16:9for YouTube. - Rate limits: Default API tier allows 10 concurrent jobs and 100 requests per minute. Higher limits available on paid plans.
- Webhook URLs: Register a callback endpoint to receive generation-completed events instead of polling, reducing latency and API overhead.
- Output format: Generated videos are H.264 MP4 with AAC audio. Typical file size is 5-15 MB for a 15-second clip.
Best Practices
- Start with simple automations and iterate
- Add logging at every step for debugging
- Use idempotent operations where possible
- Test with edge cases before deploying
- Generate at least 10 caption variants per product — the top performer often delivers 3-5x better engagement than the median
- Prefer US/Wavenet voices for English markets as they have the most natural prosody
- Use
timing: "auto"in captions to let PostAI align text with visual cuts rather than hardcoding durations - Store generated video URLs in a database with metadata (product SKU, caption, voice, date) for later performance analysis
Anti-Rationalization Table
| Rationalization | Reality |
|---|---|
| "Manual is faster for one-off tasks" | One-off tasks become recurring. Automate early, save time later. |
| "I will add error handling later" | You never do. Handle errors from day one. |
| "Automation is overkill" | If you do it twice, automate it. If you do it daily, it is critical infrastructure. |
| "I can edit videos myself faster than setting up the API" | A single API call generates a polished video in 30 seconds. Manual editing takes 20+ minutes per clip. At scale, API automation is 40x faster. |
| "AI voices sound robotic, real voiceovers are better" | Modern neural TTS (Wavenet, Neural2) is nearly indistinguishable from human speech for short-form ads. Test blind — audiences rarely notice. |
| "My product category is too niche for AI video" | AI video works for ANY visual product. The model only needs clear images and a compelling caption. Niche products often outperform broad categories due to lower competition. |
Code Examples
Python: Batch variant generation with webhook callback
import requests
import json
import os
API_KEY = os.environ["POSTAI_API_KEY"]
WEBHOOK_URL = "https://your-server.com/postai-callback"
def batch_generate(products, captions_per_product=10):
"""Queue video generation for multiple products with webhook notification."""
headers = {"Authorization": f"Bearer {API_KEY}"}
jobs = []
for product in products:
for i in range(captions_per_product):
payload = {
"images": product["images"],
"caption": product["captions"][i],
"voice": product.get("voice", "en-US-Wavenet-D"),
"background_music": product.get("music", "upbeat"),
"webhook_url": WEBHOOK_URL,
"aspect_ratio": "9:16"
}
resp = requests.post(
"https://api.postai.ai/v1/video/generate",
json=payload,
headers=headers
)
resp.raise_for_status()
jobs.append(resp.json()["job_id"])
return jobs
Node.js: Generate and auto-upload to TikTok
import { PostAIClient } from 'postai-sdk';
import { TikTokPublisher } from './tiktok-publisher.js';
const client = new PostAIClient({ apiKey: process.env.POSTAI_API_KEY });
async function generateAndPublish(productImages, caption, voice) {
const video = await client.video.generate({
images: productImages,
caption,
voice,
aspectRatio: '9:16',
});
const downloadUrl = await video.waitForCompletion(); // polls or uses webhook
const publisher = new TikTokPublisher({
accessToken: process.env.TIKTOK_ACCESS_TOKEN,
});
await publisher.upload({
videoUrl: downloadUrl,
caption: `${caption}\n\n#affiliate #productreview #fyp`,
privacyLevel: 'PUBLIC_TO_EVERYONE',
});
console.log(`Published: ${video.id}`);
}
Common Issues & Troubleshooting
| Problem | Solution |
|---|---|
| POST AI video generation returns low-quality output | Increase the base image resolution to at least 1080×1080. Use high-contrast product images with clean backgrounds. Enable the HD enhancement option in the API payload. |
| Voiceover language/dialect mismatch with target audience | Specify the voice_locale parameter explicitly (e.g., en-US, id-ID, en-GB). Preview audio before attaching to video. Fall back to neutral TTS if regional voice lacks expressiveness. |
| TikTok rejects video for low engagement or policy violation | Review TikTok's community guidelines for affiliate content. Avoid aggressive CTAs in the first 3 seconds. Use native-looking captions and trending audio. Test with a private account first. |
| Instagram Reels cropping or aspect ratio issues | Set output to 9:16 (1080×1920) for Stories/Reels. Use safe zones (top/bottom 15% padding for text overlays). Verify crop boundaries in preview before batch publishing. |
| Batch variant creation exceeds API rate limits | Implement exponential backoff between API calls. Use a work queue (Redis/Bull) to stagger submissions. Batch limit to 20 variants per minute per API key. Consider upgrading POST AI plan for higher limits. |
| Caption text truncation or poor reading timing | Keep captions under 60 characters per frame. Set minimum display duration of 2 seconds per caption line. Use timing: "auto" or manually specify per-frame durations in the payload. |
Monetization
| Approach | Timeframe | Description |
|---|---|---|
| Affiliate Video Agency | 2-4 weeks | Offer PostAI-generated TikTok/Reels as a service to e-commerce brands. Charge $200-500/month for 30 AI-generated product videos with captions and voiceover. Source affiliate links from Shopee, TikTok Shop, or Amazon. |
| Bulk Content Reselling | 1-3 weeks | Generate 500+ video variants from a single product catalog, then sell access to the content library to dropshippers and affiliate marketers on a subscription basis ($50-100/month per 100 videos). |
| SaaS Micro-Service | 4-8 weeks | Wrap PostAI API into a branded dashboard where clients upload product images, select voice/accent, and get ready-to-post videos emailed weekly. Charge $99/month per store. |
| Performance Marketing | ongoing | Use PostAI to generate 50 creative variations per product, run A/B tests on TikTok/Instagram, keep the top 3 performers, and scale ad spend. Earn affiliate commissions + ad management fees (15-30% of ad spend). |
| UGC Alternative Service | 1-2 weeks | Replace expensive user-generated content shoots with AI-generated product demo videos. Charge $150/video (compared to $500-1000 for human UGC). Target Shopify and WooCommerce stores with no video content. |
Process
Preparation
- Set up POST AI API account and generate API keys
- Prepare high-resolution product images (3-5 per product, 1080×1080 minimum)
- Write 10-20 caption variants per product across different hook styles
- Configure environment variables for API keys and webhook endpoints
- Set up a video storage system (S3, Google Cloud Storage, or local directory)
Execution
- Submit batch generation jobs through the PostAI API with varied captions, voices, and music
- Monitor job completion via webhook receiver or polling loop
- Download completed videos and organize by product/caption/variant
- Run automated quality checks: verify resolution, audio sync, caption rendering
- Push approved videos to target social platforms via their APIs or publisher tools
Stewardship
- Track per-variant performance metrics (views, completion rate, CTR, conversions)
- Identify the top 3 caption hooks and voice combinations each week
- Archive low-performing variants and regenerate with updated hooks
- Rotate background music tracks monthly to match trending sounds
- Monitor PostAI API changes and update integration accordingly
Verification
- API key configured and authenticated (test with single image generation)
- Sample video generated with correct 9:16 aspect ratio and no visual artifacts
- Voiceover plays clearly with correct regional accent and pacing
- Captions render within safe zone and are readable on mobile screen
- Batch generation produces 10+ variants without rate limit errors
- Webhook callback or polling successfully returns download URL
- Generated video uploads successfully to target social platform
- Performance tracking links (UTMs) attached to each published variant