In order to access this API, the user agent needs to send your API key in the Authorization header using Bearer schema.
Go to your API Keys dashboard to create and manage your keys.
Manage API Keys →The first 50 API calls each month are on us — no credit card required.
Authorization: Bearer <your api token>
const headers = new Headers();
headers.append("Authorization", "Bearer YOUR_API_KEY_HERE");
const formdata = new FormData();
const requestOptions = {
method: ...,
body: ...,
headers: headers,
};
fetch(url, requestOptions)
The image upscale feature provides a better image to the user by increasing its resolution.
Method: POST
Endpoint: https://api.vecticon.co/api/v2.0/ai-tools/image-upscaler
Authorization: Bearer <your api token>
Request Bodymultipart/form-data
file - File
Required
The reference image to upscale.
Supported file formats: PNG, JPG, WEBP, PDF.
face_enhance - boolean
Whether or not to enhance the face(s) of the image.
Default value: true
upscale_size - integer
The image upscaling size.
Range: 2-10
Default value: 2
ai_model - string
Used to determine which AI model to use when upscaling an image.
Default value: standard
Enum values
standard
Best choice for upscaling various types of images, including those with people, objects, and a wide range of other subjects.
pro
Ideal for detailed photography. Preserves more details compared to the standard model, though it requires additional processing time.
creative
Perfect for adding artistic details to your image. This model introduces creative elements, diverging from the original image.
const url = "https://api.vecticon.co/api/v2.0/ai-tools/image-upscaler"
const headers = new Headers();
headers.append("Authorization", "Bearer YOUR_API_KEY_HERE");
const formdata = new FormData();
formdata.append("file", "image.png");
formdata.append("face_enhance", true);
formdata.append("upscale_size", 2);
const requestOptions = {
method: 'POST',
body: formdata,
headers: headers,
};
fetch(url, requestOptions)
.then(response => response.json())
.then(result => console.log(result))
.catch(error => console.log("error", error));
{
"image_url": "...",
"operation_id": "..."
}
The image vectorizer endpoint is used to convert a reaster image into a vector file.
Method: POST
Endpoint: https://api.vecticon.co/api/v2.0/ai-tools/image-vectorizer
Authorization: Bearer <your api token>
Request Bodymultipart/form-data
file - File
Required
The reference image to vectorizer.
Supported file formats: PNG, JPG, WEBP, AVIF, PDF, SVG.
format - string
The file format in which to vectorize the image.
Default value: svg
Enum values
svg
Use to receive a vector file in SVG format.
eps
Use to receive a vector file in EPS format
const url = "https://api.vecticon.co/api/v2.0/ai-tools/image-vectorizer"
const headers = new Headers();
headers.append("Authorization", "Bearer YOUR_API_KEY_HERE");
const formdata = new FormData();
formdata.append("file", "image.png");
formdata.append("format", 'svg');
const requestOptions = {
method: 'POST',
body: formdata,
headers: headers,
};
fetch(url, requestOptions)
.then(response => response.json())
.then(result => console.log(result))
.catch(error => console.log("error", error));
{
"image_url": "...",
"operation_id": "..."
}
The image background removal tool is used to automatically remove the background from an image.
Method: POST
Endpoint: https://api.vecticon.co/api/v2.0/ai-tools/background-remover
Authorization: Bearer <your api token>
Request Bodymultipart/form-data
file - File
Required
The reference image to remove the background from.
Supported file formats: PNG, JPG, WEBP, PDF
const url = "https://api.vecticon.co/api/v2.0/ai-tools/background-remover"
const headers = new Headers();
headers.append("Authorization", "Bearer YOUR_API_KEY_HERE");
const formdata = new FormData();
formdata.append("file", "image.png");
const requestOptions = {
method: 'POST',
body: formdata,
headers: headers,
};
fetch(url, requestOptions)
.then(response => response.json())
.then(result => console.log(result))
.catch(error => console.log("error", error));
{
"image_url": "...",
"operation_id": "..."
}
Method: POST
Endpoint: https://api.vecticon.co/api/v2.0/ai-tools/image-generator
Authorization: Bearer <your api token>
Request Bodyapplication/json
prompt - string
Required
The prompt parameter is the text that directs the AI to create an image based on your description. It captures the concept or scene you want the AI to visualize. A well-crafted prompt, like "A peaceful forest at night with a glowing moon," helps ensure accurate results.
negative_prompt - string
The negative_prompt parameter allows you to guide the AI by indicating what you don't want in the image, refining the result to better match your vision.
number_of_results - string
Describes the number of images the API will generate and return.
Range: 1-4
Default value: 1
aspect_ratio - string
Describes the aspect ratio which will be applied on the generated image(s).
Default value: 1:1
Enum values
1:1
Perfectly square, providing a harmonious and proportional layout.
9:16
Ideal for vertical content, designed to captivate and enhance visual storytelling.
16:9
Widescreen format, ideal for capturing larger landscapes.
4:3
Elegant horizontal format, portrait orientation.
3:4
Portrait-oriented, gracefully accentuating vertical features.
3:2
A classic proportion that offers a broader perspective.
const url = "https://api.vecticon.co/api/v2.0/ai-tools/image-generator"
const headers = new Headers();
headers.append("Authorization", "Bearer YOUR_API_KEY_HERE");
headers.append("Content-Type", "application/json");
const requestOptions = {
method: 'POST',
body: JSON.stringify({
"prompt": "A medieval castle siege taking place in France in 1356."
"negative_prompt": "Mythological creatures"
"number_of_results": 3
"aspect_ratio": "16:9"
}),
headers: headers,
};
fetch(url, requestOptions)
.then(response => response.json())
.then(result => console.log(result))
.catch(error => console.log("error", error));
{
"image_url": "...",
"operation_id": "..."
}
The image colorizer endpoint is used to colorize a black-and-white image.
Method: POST
Endpoint: https://api.vecticon.co/api/v2.0/ai-tools/image-colorizer
Authorization: Bearer <your api token>
Request Bodymultipart/form-data
file - File
Required
The original image to colorize.
Supported file formats: PNG, JPG, WEBP
const url = "https://api.vecticon.co/api/v2.0/ai-tools/image-colorizer"
const headers = new Headers();
headers.append("Authorization", "Bearer YOUR_API_KEY_HERE");
const formdata = new FormData();
formdata.append("file", "image.png");
const requestOptions = {
method: 'POST',
body: formdata,
headers: headers,
};
fetch(url, requestOptions)
.then(response => response.json())
.then(result => console.log(result))
.catch(error => console.log("error", error));
{
"image_url": "...",
"operation_id": "..."
}
The image inpaint endpoint is used to removed unwanted parts from an image.
Method: POST
Endpoint: https://api.vecticon.co/api/v2.0/ai-tools/image-inpaint
Authorization: Bearer <your api token>
Request Bodymultipart/form-data
image - File
Required
The original image to inpaint.
Supported file formats: PNG, JPG, WEBP
Demo:

mask - File
Required
An image containing the negative mask of the unwanted parts to delete.
Supported file formats: PNG, JPG, WEBP
Demo:

const url = "https://api.vecticon.co/api/v2.0/ai-tools/image-inpaint"
const headers = new Headers();
headers.append("Authorization", "Bearer YOUR_API_KEY_HERE");
const formdata = new FormData();
formdata.append("image", "image.png");
formdata.append("mask", "mask.png");
const requestOptions = {
method: 'POST',
body: formdata,
headers: headers,
};
fetch(url, requestOptions)
.then(response => response.json())
.then(result => console.log(result))
.catch(error => console.log("error", error));
{
"image_url": "...",
"operation_id": "..."
}
The image outpaint endpoint is used to extend an image beyond its original boundaries using AI-powered generation.
Method: POST
Endpoint: https://api.vecticon.co/api/v3/image-outpaint
Authorization: Bearer <your api token>
Request Bodymultipart/form-data
image - File
Required
The original image to extend, with black background filling the new areas where content will be generated. The image and mask must have the same dimensions, which will also be the dimensions of the resulting outpainted image.
Supported file formats: PNG, JPG, WEBP
Demo:

mask - File
Required
A mask image with the same dimensions as the input image. The mask should have a white background with black content representing the region of the original image. White areas indicate where new content will be generated.
Supported file formats: PNG, JPG, WEBP
Demo:

prompt - string
A text prompt to guide the AI in generating the extended content. Describes what should appear in the outpainted regions.
negative_prompt - string
A text prompt describing what should be avoided in the generated content.
const url = "https://api.vecticon.co/api/v3/image-outpaint"
const headers = new Headers();
headers.append("Authorization", "Bearer YOUR_API_KEY_HERE");
const formdata = new FormData();
formdata.append("image", "image.png");
formdata.append("mask", "mask.png");
formdata.append("prompt", "a beautiful landscape"); // optional
formdata.append("negative_prompt", "blurry, low quality"); // optional
const requestOptions = {
method: 'POST',
body: formdata,
headers: headers,
};
fetch(url, requestOptions)
.then(response => response.json())
.then(result => console.log(result))
.catch(error => console.log("error", error));
{
"image_url": "...",
"operation_id": "..."
}
The DPI converter tool allows you to change the DPI (dots per inch) resolution of an image. This is useful for preparing images for print or adjusting resolution metadata without changing the actual pixel dimensions.
Method: POST
Endpoint: https://api.vecticon.co/api/v2.0/tools/dpi-converter
Authorization: Bearer <your api token>
Request Bodymultipart/form-data
file - File
Required
The image file to convert to a new DPI resolution.
Supported file formats: PNG, JPG, WEBP.
new_dpi - integer
Required
The target DPI (dots per inch) value for the output image. Common values are 72 for web, 150 for draft print, and 300 for high-quality print.
const url = "https://api.vecticon.co/api/v2.0/tools/dpi-converter"
const headers = new Headers();
headers.append("Authorization", "Bearer YOUR_API_KEY_HERE");
const formdata = new FormData();
formdata.append("file", "image.png");
formdata.append("new_dpi", "300");
const requestOptions = {
method: 'POST',
body: formdata,
headers: headers,
};
fetch(url, requestOptions)
.then(response => response.json())
.then(result => console.log(result))
.catch(error => console.log("error", error));
{
"image_content": "base64_encoded_image_data...",
"operation_id": "..."
}
The file converter tool allows you to convert images between different file formats. Convert your images to PNG, JPG, WEBP, AVIF, PDF, and more.
Method: POST
Endpoint: https://api.vecticon.co/api/v2.0/tools/file-converter
Authorization: Bearer <your api token>
Request Bodymultipart/form-data
file - File
Required
The image file to convert to a different format.
Supported file formats: PNG, JPG, WEBP, AVIF, PDF, SVG.
output_format - string
Required
The target file format for the converted image.
Enum values
png
Convert to PNG format. Best for images with transparency or sharp edges.
jpg
Convert to JPG format. Best for photographs and images without transparency.
webp
Convert to WebP format. Modern format with excellent compression and quality.
avif
Convert to AVIF format. Next-gen format with superior compression.
Convert to PDF format. Ideal for documents and print-ready files.
const url = "https://api.vecticon.co/api/v2.0/tools/file-converter"
const headers = new Headers();
headers.append("Authorization", "Bearer YOUR_API_KEY_HERE");
const formdata = new FormData();
formdata.append("file", "image.png");
formdata.append("output_format", "webp");
const requestOptions = {
method: 'POST',
body: formdata,
headers: headers,
};
fetch(url, requestOptions)
.then(response => response.blob())
.then(blob => {
// Handle the converted file blob
console.log("Converted file:", blob);
})
.catch(error => console.log("error", error));
Binary file data (the converted image file)
Note: The response is returned as binary data (ArrayBuffer/Blob),
not JSON. Save the response directly as a file with the appropriate extension.