From zero to campaign-ready production.
One prompt, complete asset package. Register, deposit, execute.
https://api.vapagent.com
$1 (unlocks Tier 1)
curl or any HTTP client
Register Agent
Create your agent account to receive an API key
What's an agent?
In VAP, an "agent" is any autonomous system (AI, bot, backend service) that creates media tasks. One agent = one API key = one balance.
curl -X POST https://api.vapagent.com/v3/agents \ -H "Content-Type: application/json" \ -d '{"name": "my-first-agent"}'
{
"agent_id": "550e8400-e29b-41d4-a716-446655440000",
"name": "my-first-agent",
"api_key": "vap_1a2b3c4d5e6f7g8h9i0j...",
"message": "Agent created. Store the API key securely - it won't be shown again!"
}
Important
Save your API key now! It's shown only once during registration.
Or create your agent here
Your API Key:
Save this key now! It won't be shown again.
Agent ID:
Need dashboard access?
This form creates an API key for programmatic use. To manage your account via dashboard, sign in with Google.
Questions? support@vapagent.com
Deposit Funds
Initialize a deposit to upgrade from Tier 0 to Tier 1 (minimum $1)
curl -X POST https://api.vapagent.com/v3/deposits/init \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "amount": 5.00, "provider": "manual" }'
{
"deposit_id": "8e76a91e-a062-4a01-a39a-89bfec672514",
"status": "awaiting",
"provider": "manual",
"amount": "5.0000",
"currency": "USD",
"payment_reference": "DEP-8E76A91E",
"payment_address": null,
"payment_url": null,
"instructions": "Please send $5.0 USD. Reference: DEP-8E76A91E. Our team will verify and credit your account.",
"expires_at": "2026-02-14T18:08:01.209332+00:00"
}
What happens next?
After initializing a deposit, confirmation depends on your payment method:
- Manual: Send payment using the reference code. Our team will verify and credit your account (usually within a few hours). Contact support@vapagent.com for help.
- Crypto: Send the exact amount to the
payment_addressin the response. Confirmation is automatic after blockchain verification (10-30 min). - Card: Follow the
payment_urlin the response. Balance is credited instantly after payment.
Payment Methods
Reserve-Refund Flow
Task fails? You pay $0
System refunds the full reserved amount if task fails.
Execute First Task
Generate images, videos, or music with a single API call
Tier Requirements
Tier 1: $1+ deposit (image). Tier 2: $100+ deposit AND 50+ successful tasks (video, music).
curl -X POST https://api.vapagent.com/v3/tasks \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "type": "image_generation", "params": { "description": "A mountain landscape at sunset", "aspect_ratio": "16:9" } }'
{
"task_id": "ede83966-a50c-4e52-aa63-a3c1e28f4c38",
"status": "pending",
"type": "image_generation",
"estimated_cost": "0.1800",
"reserved_amount": "0.1800",
"message": "Task accepted, balance reserved"
}
Save the task_id
You'll need it to check status and retrieve your result in Step 4.
Video Generation (Tier 2+)
curl -X POST https://api.vapagent.com/v3/tasks \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "type": "video_generation", "idempotency_key": "my-video-001", "params": { "description": "Cinematic aerial shot of coastal cliffs", "duration": 8, "aspect_ratio": "16:9", "generate_audio": true }, "callback_url": "https://myapp.example/webhook" }'
Music Generation (Tier 2+)
curl -X POST https://api.vapagent.com/v3/tasks \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "type": "music_generation", "params": { "description": "Upbeat indie folk with acoustic guitar", "duration": 120, "instrumental": false } }'
Operations (Optional)
Edit and enhance existing media with AI-powered operations
Not Just Generation
Operations work on existing media: remove backgrounds, upscale resolution, edit with AI prompts, or trim/merge videos.
Upscale Example
curl -X POST https://api.vapagent.com/v3/operations \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "operation": "upscale", "media_url": "https://example.com/your-image.jpg", "options": {"scale": 2} }'
Background Remove Example
curl -X POST https://api.vapagent.com/v3/operations \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "operation": "background_remove", "media_url": "https://example.com/your-image.jpg" }'
{
"operation_id": "a1b2c3d4-5678-4ef0-abcd-1234567890ab",
"operation": "background_remove",
"status": "pending",
"estimated_cost": "0.1000",
"reserved_amount": "0.1000",
"message": "Operation accepted, balance reserved"
}
AI Edit Example
curl -X POST https://api.vapagent.com/v3/operations \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "operation": "ai_edit", "media_url": "https://example.com/photo.jpg", "prompt": "Change the background to a tropical beach at sunset" }'
{
"operation_id": "a1b2c3d4-5678-4ef0-abcd-1234567890ab",
"operation": "ai_edit",
"status": "pending",
"estimated_cost": "0.1500",
"reserved_amount": "0.1500",
"message": "Operation accepted, balance reserved"
}
Multi-Image Editing
Add up to 2 additional reference images via options.additional_images array. Example: combine a person from one photo with the background of another.
Video Trim Example
curl -X POST https://api.vapagent.com/v3/operations \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "operation": "video_trim", "media_url": "https://example.com/video.mp4", "options": {"start_time": 1, "end_time": 4} }'
{
"operation_id": "19c92417-781d-4251-a40a-81c9e64c9c13",
"operation": "video_trim",
"status": "pending",
"estimated_cost": "0.0500",
"reserved_amount": "0.0500",
"message": "Operation accepted, balance reserved"
}
Video Merge Example
curl -X POST https://api.vapagent.com/v3/operations \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "operation": "video_merge", "media_url": "https://example.com/clip1.mp4", "options": { "media_urls": [ "https://example.com/clip1.mp4", "https://example.com/clip2.mp4" ] } }'
{
"operation_id": "60e1f0e8-993d-42d1-a97d-ca9fd7ada957",
"operation": "video_merge",
"status": "pending",
"estimated_cost": "0.0500",
"reserved_amount": "0.0500",
"message": "Operation accepted, balance reserved"
}
All Operations
inpaint ($0.15), ai_edit ($0.15), background_remove ($0.10), upscale ($0.15), video_trim ($0.05), video_merge ($0.05). Full reference →
Check Task Status
Poll the task status until it completes
curl https://api.vapagent.com/v3/tasks/{task_id} \ -H "Authorization: Bearer YOUR_API_KEY"
{
"task_id": "ede83966-a50c-4e52-aa63-a3c1e28f4c38",
"status": "completed",
"type": "image_generation",
"priority": "normal",
"created_at": "2026-02-06T11:45:23.437070",
"completed_at": "2026-02-06T11:45:38.003218",
"estimated_cost": "0.1800",
"actual_cost": "0.1800",
"result": {
"image_url": "https://pub-fe4ae8816f7943069914c52146125008.r2.dev/...",
"output_url": "https://pub-fe4ae8816f7943069914c52146125008.r2.dev/..."
},
"status_message": "Image generated successfully"
}
Task Statuses
Check Balance
Monitor your remaining balance
curl https://api.vapagent.com/v3/agents/me/balance \ -H "Authorization: Bearer YOUR_API_KEY"
{
"agent_id": "550e8400-e29b-41d4-a716-446655440000",
"available_balance": "4.8200",
"reserved_balance": "0.0000",
"usable_balance": "4.8200",
"currency": "USD",
"tier": 1,
"tier_name": "DEPOSITED"
}
Balance Types
usable_balance: Available for new tasks. reserved_balance: Locked for pending tasks.
Alternative Channels
Choose the execution channel based on your use case
A2A Protocol Example
curl -X POST https://api.vapagent.com/a2a \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "id": "1", "method": "message/send", "params": { "message": { "role": "user", "parts": [{ "kind": "skill-request", "skillId": "execute-media-task", "input": { "task_type": "image_generation", "prompt": "A sunset over mountains" } }] } } }'
MCP Protocol Example
curl -X POST https://api.vapagent.com/mcp/tools/call \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "generate_image", "arguments": { "prompt": "A sunset over mountains", "aspect_ratio": "16:9" } }'
OAuth 2.1 (Enterprise)
For enterprise integrations via Scalekit
Enterprise Benefits
SSO integration, no API keys in config files, automatic token rotation, separate audit trail.
curl -X PUT https://api.vapagent.com/v3/agents/me/oauth \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"oauth_client_id": "m2m_your_client_id"}'
curl https://api.vapagent.com/v3/agents/me/oauth \ -H "Authorization: Bearer YOUR_API_KEY"
VAP