Integrate RemovAI's powerful background removal technology into your applications, websites, and workflows
The RemovAI API allows you to programmatically remove backgrounds from images. This powerful tool can be integrated into your applications, websites, or automated workflows to process images at scale.
Our API provides several endpoints for removing backgrounds from images provided as URLs or uploaded files, retrieving processed images, and managing your image library.
All API requests should be made to the following base URL:
The API accepts request data in JSON format for most endpoints. For file uploads, use multipart/form-data.
All responses are returned in JSON format with the following structure:
To use the RemovAI API, you'll need an API key. You can obtain one by signing up for a RemovAI account and navigating to the API section in your dashboard.
We offer different subscription plans with varying API usage limits. Visit our pricing page for more information.
Learn About Authentication →The RemovAI API uses API keys for authentication. All API requests must include your API key in the request headers.
Include your API key in the X-API-Key header:
To ensure the stability of our service, we apply rate limits to API requests based on your subscription plan:
Plan | Rate Limit | Monthly Quota |
---|---|---|
Basic | 10 requests per minute | 50 images per month |
Pro | 60 requests per minute | 500 images per month |
Enterprise | 300 requests per minute | Unlimited |
Each API response includes the following headers to help you track your rate limit usage:
Header | Description |
---|---|
X-RateLimit-Limit | The maximum number of requests you can make per minute |
X-RateLimit-Remaining | The number of requests remaining in the current rate limit window |
X-RateLimit-Reset | The time at which the current rate limit window resets (UTC epoch seconds) |
If you exceed your rate limit, the API will return a 429 Too Many Requests response. It's important to implement proper error handling and retry logic in your application to handle rate limiting gracefully.
When an error occurs, the API returns an appropriate HTTP status code along with a JSON response containing error details:
Status Code | Error Code | Description |
---|---|---|
400 | invalid_request | The request was malformed or invalid |
401 | invalid_api_key | The API key is invalid or missing |
403 | forbidden | You don't have permission to perform this action |
404 | not_found | The requested resource was not found |
415 | unsupported_media_type | The uploaded file format is not supported |
422 | unprocessable_entity | The image could not be processed |
429 | rate_limit_exceeded | You've exceeded the rate limit for your plan |
500 | server_error | An unexpected error occurred on our servers |
The background removal endpoints allow you to process images and remove their backgrounds. You can provide images as URLs or upload them directly as files.
Removes the background from an image provided as a URL.
Parameter | Type | Description |
---|---|---|
url Required | string | The URL of the image to process. Must be publicly accessible. |
output_format Optional | string | The desired output format. Supported values: png (default), jpg , webp . |
output_size Optional | string | The desired output size. Supported values: original (default), small (1080px), medium (1920px), large (2880px). |
bg_color Optional | string | Hex color code for background (e.g., "#FF0000" for red). Only applicable when output_format is 'jpg'. |
webhook_url Optional | string | A URL to receive a webhook notification when processing is complete. |
Removes the background from an uploaded image file.
Parameter | Type | Description |
---|---|---|
file Required | file | The image file to process. Supported formats: JPG, PNG, WEBP. Max size: 25MB. |
output_format Optional | string | The desired output format. Supported values: png (default), jpg , webp . |
output_size Optional | string | The desired output size. Supported values: original (default), small (1080px), medium (1920px), large (2880px). |
bg_color Optional | string | Hex color code for background (e.g., "#FF0000" for red). Only applicable when output_format is 'jpg'. |
webhook_url Optional | string | A URL to receive a webhook notification when processing is complete. |
Processes multiple images in a single request. Only available on Pro and Enterprise plans.
Parameter | Type | Description |
---|---|---|
urls Optional | array | Array of image URLs to process. Either this or 'files' must be provided. |
files Optional | array of files | Array of image files to process. Either this or 'urls' must be provided. |
output_format Optional | string | The desired output format. Supported values: png (default), jpg , webp . |
output_size Optional | string | The desired output size. Supported values: original (default), small (1080px), medium (1920px), large (2880px). |
bg_color Optional | string | Hex color code for background (e.g., "#FF0000" for red). Only applicable when output_format is 'jpg'. |
webhook_url Optional | string | A URL to receive a webhook notification when all images are processed. |
Test the API directly from this page using the form below.