Image Converter API
Perform 500+ Different Image Conversions with Our Secure and Scalable API.
Code Examples in Popular Languages
Integrate our Image Converter API easily into your apps with comprehensive code examples in popular languages to get started quickly.
curl --location 'https://theonlineconverter.com/api/v1/image-converter' \
--header 'Content-Type: application/json' \
--header 'x-api-key: enter_your_api_key' \
--form 'from="png"' \
--form 'to="pdf"' \
--form 'file=@"/D:/data/Images/png/image.png"' \
--form 'file=@"/D:/data/Images/png/largepreview.png"'
const myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
myHeaders.append("x-api-key", "enter_your_api_key");
const formdata = new FormData();
formdata.append("from", "png");
formdata.append("to", "pdf");
formdata.append("file", fileInput.files[0], "[PROXY]");
formdata.append("file", fileInput.files[0], "[PROXY]");
const requestOptions = {
method: "POST",
headers: myHeaders,
body: formdata,
redirect: "follow"
};
fetch("https://theonlineconverter.com/api/v1/image-converter", requestOptions)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.error(error));
import requests
import json
url = "https://theonlineconverter.com/api/v1/image-converter"
payload = {'from': 'png',
'to': 'pdf'}
files=[
('file',('image.png',open('/D:/data/Images/png/image.png','rb'),'image/png')),
('file',('largepreview.png',open('/D:/data/Images/png/largepreview.png','rb'),'image/png'))
]
headers = {
'Content-Type': 'application/json',
'x-api-key': 'enter_your_api_key'
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
import requests
import json
url = "https://theonlineconverter.com/api/v1/image-converter"
payload = {'from': 'png',
'to': 'pdf'}
files=[
('file',('image.png',open('/D:/data/Images/png/image.png','rb'),'image/png')),
('file',('largepreview.png',open('/D:/data/Images/png/largepreview.png','rb'),'image/png'))
]
headers = {
'Content-Type': 'application/json',
'x-api-key': 'enter_your_api_key'
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
<?php
$client = new Client();
$headers = [
'Content-Type' => 'application/json',
'x-api-key' => 'enter_your_api_key'
];
$options = [
'multipart' => [
[
'name' => 'from',
'contents' => 'png'
],
[
'name' => 'to',
'contents' => 'pdf'
],
[
'name' => 'file',
'contents' => Utils::tryFopen('/D:/data/Images/png/image.png', 'r'),
'filename' => '/D:/data/Images/png/image.png',
'headers' => [
'Content-Type' => '<Content-type header>'
]
],
[
'name' => 'file',
'contents' => Utils::tryFopen('/D:/data/Images/png/largepreview.png', 'r'),
'filename' => '/D:/data/Images/png/largepreview.png',
'headers' => [
'Content-Type' => '<Content-type header>'
]
]
]];
$request = new Request('POST', 'https://theonlineconverter.com/api/v1/image-converter', $headers);
$res = $client->sendAsync($request, $options)->wait();
echo $res->getBody();
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)
.addFormDataPart("from","png")
.addFormDataPart("to","pdf")
.addFormDataPart("file","",
RequestBody.create(MediaType.parse("application/octet-stream"),
new File("/D:/data/Images/png/image.png")))
.addFormDataPart("file","",
RequestBody.create(MediaType.parse("application/octet-stream"),
new File("/D:/data/Images/png/largepreview.png")))
.build();
Request request = new Request.Builder()
.url("https://theonlineconverter.com/api/v1/image-converter")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.addHeader("x-api-key", "enter_your_api_key")
.build();
Response response = client.newCall(request).execute();
package main
import (
"fmt"
"bytes"
"mime/multipart"
"os"
"path/filepath"
"net/http"
"io"
)
func main() {
url := "https://theonlineconverter.com/api/v1/image-converter"
method := "POST"
payload := &bytes.Buffer{}
writer := multipart.NewWriter(payload)
_ = writer.WriteField("from", "png")
_ = writer.WriteField("to", "pdf")
file, errFile3 := os.Open("/D:/data/Images/png/image.png")
defer file.Close()
part3,
errFile3 := writer.CreateFormFile("file",filepath.Base("/D:/data/Images/png/image.png"))
_, errFile3 = io.Copy(part3, file)
if errFile3 != nil {
fmt.Println(errFile3)
return
}
file, errFile4 := os.Open("/D:/data/Images/png/largepreview.png")
defer file.Close()
part4,
errFile4 := writer.CreateFormFile("file",filepath.Base("/D:/data/Images/png/largepreview.png"))
_, errFile4 = io.Copy(part4, file)
if errFile4 != nil {
fmt.Println(errFile4)
return
}
err := writer.Close()
if err != nil {
fmt.Println(err)
return
}
client := &http.Client {
}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Content-Type", "application/json")
req.Header.Add("x-api-key", "enter_your_api_key")
req.Header.Set("Content-Type", writer.FormDataContentType())
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := io.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
fmt.Println(string(body))
}
var options = new RestClientOptions("")
{
MaxTimeout = -1,
};
var client = new RestClient(options);
var request = new RestRequest("https://theonlineconverter.com/api/v1/image-converter", Method.Post);
request.AddHeader("Content-Type", "application/json");
request.AddHeader("x-api-key", "enter_your_api_key");
request.AlwaysMultipartFormData = true;
request.AddParameter("from", "png");
request.AddParameter("to", "pdf");
request.AddFile("file", "/D:/data/Images/png/image.png");
request.AddFile("file", "/D:/data/Images/png/largepreview.png");
RestResponse response = await client.ExecuteAsync(request);
Console.WriteLine(response.Content);
Key Features & Capabilities
Our API is engineered for maximum flexibility, quality, and performance across all conversion types.
Massive Format Support
Convert between over 500 format combinations. Our API supports everything from common web formats (JPG, PNG, WEBP, GIF) to professional (TIFF, BMP) and modern formats (HEIC, AVIF).
Adjustable Quality Control
Fine-tune the output by setting the quality and compression levels for lossy formats like JPG and WEBP, allowing you to perfectly balance file size and visual fidelity.
Alpha Channel Preservation
Reliably convert formats that support transparency (like PNG and WEBP). The alpha channel is perfectly preserved, ensuring your transparent backgrounds are maintained.
Animated Format Support
Seamlessly convert between animated formats like GIF, animated WEBP, and APNG, preserving all frames and animation timing.
Metadata Control
Choose to retain or strip EXIF and other metadata from your images during conversion, helping to reduce file size and protect privacy.
Secure & Confidential
All images are processed over encrypted connections. We guarantee confidentiality with a strict data privacy policy and do not store your files.
Frequently Asked Questions
Find answers to common questions about our Image Converter API to understand its capabilities and best use cases.

























