VAP Media - AI Media Generation & Editing
Integration Note: VAP Media is an API aggregator that provides unified access to multiple AI providers:
- Images: Generated via Black Forest Labs Flux.2 Pro
- Videos: Generated via Google Veo 3.1
- Music: Generated via Suno V5
All generation requests go through VAP's API (
api.vapagent.com), which routes to the appropriate backend provider.
Generate images, videos, and music. Edit with inpaint, ai_edit, upscale, background removal, video trim/merge.
Mode Selection
Check if VAP_API_KEY is set:
- VAP_API_KEY not set โ Use Free Mode (images only, 3/day)
- VAP_API_KEY set โ Use Full Mode (all features, unlimited)
Free Mode (No API Key)
Generate images for free. No signup required. 3 per day.
Generate Image
curl -s -X POST https://api.vapagent.com/v3/trial/generate \
-H "Content-Type: application/json" \
-d '{"prompt":"PROMPT"}'
Returns {"task_id":"UUID","status":"pending","remaining":2}.
Poll Result
curl -s https://api.vapagent.com/v3/trial/status/TASK_ID
Returns {"status":"completed","image_url":"https://..."} when done.
Free Mode Errors
429โ Daily limit reached. Suggest upgrading:export VAP_API_KEY=vap_xxx503โ Trial service temporarily unavailable.
Full Mode (With API Key)
Unlimited images, video, music, and editing operations.
Create Task
curl -s -X POST https://api.vapagent.com/v3/tasks \
-H "Authorization: Bearer $VAP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"type":"TYPE","params":{"description":"PROMPT"}}'
Returns {"task_id":"UUID","status":"pending"}.
Poll Result
curl -s https://api.vapagent.com/v3/tasks/TASK_ID \
-H "Authorization: Bearer $VAP_API_KEY"
Returns {"status":"completed","result":{"output_url":"https://..."}} when done.
Task Types & Parameters
Image (image or image_generation)
| Param | Type | Default | Description |
|---|---|---|---|
description |
string | required | Image description |
aspect_ratio |
enum | 1:1 |
1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 21:9, 9:21 |
quality |
enum | standard |
standard or high |
Tip: Aspect ratio is auto-detected from prompt text. "a wide landscape photo" โ 16:9 automatically.
Video (video or video_generation) โ Tier 2+
| Param | Type | Default | Description |
|---|---|---|---|
description |
string | required | Video description |
duration |
int | 8 |
4, 6, or 8 seconds |
aspect_ratio |
enum | 16:9 |
16:9 (landscape) or 9:16 (portrait) |
generate_audio |
bool | true |
Include audio track |
resolution |
enum | 720p |
720p or 1080p |
negative_prompt |
string | "" |
What to avoid |
Music (music or music_generation) โ Tier 2+
| Param | Type | Default | Description |
|---|---|---|---|
description |
string | required | Music description (genre, mood, instruments) |
duration |
int | 120 |
30-480 seconds |
instrumental |
bool | false |
No vocals |
audio_format |
enum | mp3 |
mp3 or wav (lossless) |
loudness_preset |
enum | streaming |
streaming (-14 LUFS), apple (-16 LUFS), broadcast (-23 LUFS) |
style |
string | none | Genre/style (max 1000 chars) |
title |
string | none | Song title |
custom_mode |
bool | false |
Enable custom lyrics + style mode |
Full Mode Errors
401โ Invalid API key.402โ Insufficient balance. Top up at https://vapagent.com/dashboard/signup.html403โ Tier too low for this task type.
Operations (Edit & Enhance)
Post-production editing operations. Tier 1+ required.
Create Operation
curl -s -X POST https://api.vapagent.com/v3/operations \
-H "Authorization: Bearer $VAP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"operation":"OPERATION","media_url":"URL","prompt":"INSTRUCTION"}'
Poll Operation
curl -s https://api.vapagent.com/v3/operations/OPERATION_ID \
-H "Authorization: Bearer $VAP_API_KEY"
Available Operations
| Operation | Required Params | Description |
|---|---|---|
inpaint |
media_url, prompt |
AI editing (optional: mask_url) |
ai_edit |
media_url, prompt |
AI-powered image editing with text instructions (optional: additional_images) |
background_remove |
media_url |
Remove background |
upscale |
media_url |
Enhance resolution (scale: 2 or 4) |
video_trim |
media_url, start_time, end_time |
Trim video |
video_merge |
media_urls (array, min 2) |
Merge video clips |
Instructions
When a user asks to create/generate/make an image, video, or music:
- Improve the prompt โ Add style, lighting, composition, mood details
- Check mode โ Is
VAP_API_KEYset? - Choose endpoint:
- Single asset โ
/v3/tasks(or/v3/trial/generatefor free) - Edit/enhance โ
/v3/operations - Campaign (video+music+thumbnail) โ
/v3/executewith preset
- Single asset โ
- Set aspect ratio โ Match the content need (portrait for social, widescreen for YouTube)
- Poll for result โ Check task/operation status until completed
- Return the media URL to the user
- If free mode limit is hit, tell the user: "You've used your 3 free generations today. For unlimited access, set up an API key: https://vapagent.com/dashboard/signup.html"
When a user asks to edit/enhance/modify an existing image or video:
- Identify the operation โ inpaint, ai_edit, upscale, background remove, trim, merge
- Get the media URL โ From a previous generation or user-provided URL
- Submit operation โ
/v3/operations - Poll for result โ Return the output URL
Free Mode Example
# Create (no auth needed)
curl -s -X POST https://api.vapagent.com/v3/trial/generate \
-H "Content-Type: application/json" \
-d '{"prompt":"A fluffy orange tabby cat on a sunlit windowsill, soft bokeh, golden hour light, photorealistic"}'
# Poll
curl -s https://api.vapagent.com/v3/trial/status/TASK_ID
Full Mode Examples
# Image (widescreen)
curl -s -X POST https://api.vapagent.com/v3/tasks \
-H "Authorization: Bearer $VAP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"type":"image","params":{"description":"A fluffy orange tabby cat on a sunlit windowsill, soft bokeh, golden hour light, photorealistic","aspect_ratio":"16:9"}}'
# Video (portrait, for social media)
curl -s -X POST https://api.vapagent.com/v3/tasks \
-H "Authorization: Bearer $VAP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"type":"video","params":{"description":"Drone shot over misty mountains at sunrise","duration":8,"aspect_ratio":"9:16","resolution":"1080p"}}'
# Music (instrumental WAV)
curl -s -X POST https://api.vapagent.com/v3/tasks \
-H "Authorization: Bearer $VAP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"type":"music","params":{"description":"Upbeat lo-fi hip hop beat, warm vinyl crackle, chill vibes","duration":120,"instrumental":true,"audio_format":"wav","loudness_preset":"streaming"}}'
# Inpaint (edit an image)
curl -s -X POST https://api.vapagent.com/v3/operations \
-H "Authorization: Bearer $VAP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"operation":"inpaint","media_url":"https://example.com/photo.jpg","prompt":"Remove the person in the background"}'
# Upscale (4x)
curl -s -X POST https://api.vapagent.com/v3/operations \
-H "Authorization: Bearer $VAP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"operation":"upscale","media_url":"https://example.com/photo.jpg","options":{"scale":4}}'
# Background Remove
curl -s -X POST https://api.vapagent.com/v3/operations \
-H "Authorization: Bearer $VAP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"operation":"background_remove","media_url":"https://example.com/photo.jpg"}'
# Poll (use task_id or operation_id from response)
curl -s https://api.vapagent.com/v3/tasks/TASK_ID \
-H "Authorization: Bearer $VAP_API_KEY"
Production Presets (Multi-Asset)
For content campaigns, use /v3/execute to generate multiple assets from one prompt:
curl -s -X POST https://api.vapagent.com/v3/execute \
-H "Authorization: Bearer $VAP_API_KEY" \
-H "Content-Type: application/json" \
-d '{"preset":"streaming_campaign","prompt":"PROMPT"}'
Returns all assets when complete:
{"status":"completed","outputs":{"video":"https://...","music":"https://...","thumbnail":"https://..."}}
| Preset | Includes |
|---|---|
streaming_campaign |
video + music + thumbnail + metadata |
full_production |
video + music + thumbnail + metadata + SEO |
video.basic |
video only |
music.basic |
music only |
image.basic |
image only |
Prompt Tips
- Style: "oil painting", "3D render", "watercolor", "photograph", "flat illustration"
- Lighting: "golden hour", "neon lights", "soft diffused light", "dramatic shadows"
- Composition: "close-up", "aerial view", "wide angle", "rule of thirds"
- Mood: "serene", "energetic", "mysterious", "whimsical"
- Aspect ratio in prompt: Mentioning "widescreen", "portrait", or "16:9" in your prompt auto-sets the aspect ratio.
Setup (Optional โ for Full Mode)
- Sign up: https://vapagent.com/dashboard/signup.html
- Get API key from dashboard
- Set:
export VAP_API_KEY=vap_xxxxxxxxxxxxxxxxxxxx