MediaTofuBackground removal API
Background removal API
POST /v1/tools/image/remove-background to keep only the subject on a transparent background. Background removal bills as 12 compute seconds; an unreadable image is not charged.
Example
curl "https://api.mediatofu.com/v1/tools/image/remove-background?wait=25" \
-H "Authorization: Bearer $MEDIATOFU_KEY" \
-H "Content-Type: application/json" \
-d '{ "input": "https://example.com/photo.jpg", "format": "png" }'With ?wait=25 a short job can return its result in the same request. Short jobs typically take about 5–15 seconds including container start. Leave wait off and poll GET /v1/jobs/:id, or pass webhook_url on a paid plan.
Options
Takes format and quality. WebP and PNG keep the transparency, and other formats fill it with white. To resize or adjust the image in the same job, use /v1/tools/image/transform with remove_background: true.
Billing
Background removal counts as 12 compute seconds on the shared meter (about $4.80 per 1,000 at Pay-per-use). Included Free / Starter / Pro compute covers about 25 / 3,000 / 7,500 removals a month.
Questions
How are image jobs billed?
Image tools share the same compute meter as video. A standard image job counts as 3 compute seconds (info is 1; background removal is 12). An image that cannot be read is not charged. At Pay-per-use rates that is about $1.20 per 1,000 standard images or $4.80 per 1,000 background removals; Starter overage is about $0.75 / $3.00 per 1,000; Pro overage is about $0.64 / $2.54 per 1,000. Included compute covers about 100 / 12,000 / 30,000 standard images a month on Free / Starter / Pro (or 25 / 3,000 / 7,500 removals).
How do I get the result?
Add ?wait=25 and a short job can return its result in the same request. Short jobs typically take about 5–15 seconds including container start. 25 seconds is the longest wait. Otherwise you get a job id to check with GET /v1/jobs/:id, or on a paid plan you can pass webhook_url and we POST the result to you.
Do failed jobs cost anything?
A failure on our side is never charged, and neither is an input we couldn't download, one over your plan's size limit, or an image that could not be read. If your command runs and FFmpeg exits with an error, or the job reaches your plan's length limit, the seconds it used count. Nothing retries automatically.
What does MediaTofu cost?
Free: $0, 5 minutes of compute a month, jobs up to 1 minute, inputs up to 50 MB, 1 job at a time. Pay per use: $0.024 per compute minute, billed by the second, no monthly fee. Jobs up to 5 minutes, inputs up to 2 GB, 3 jobs at once. Starter: $9/month includes 600 minutes, then $0.015 a minute. Jobs up to 5 minutes, inputs up to 2 GB. Pro: $19/month includes 1,500 minutes, then $0.0127 a minute. Jobs up to 10 minutes, inputs up to 2 GB.