Vector Express API
Convert between SVG, DXF, DWG, EPS, PDF, AI, CDR, HPGL and more over HTTP with no key. Query the converter matrix first to find a valid conversion path.
Endpoint tested and returned HTTP 200 on 2026-08-21
What is the Vector Express API?
Vector Express is a free API for converting vector graphics between formats. `GET https://vector.express/api/v2/public/convert/` returns the full converter matrix listing every input and output format each engine supports, which you then use to build a conversion path such as `svg/cad/dxf`.
Vector conversion is a graph problem, not a function call, and Vector Express is one of the few APIs honest enough to expose that. There is no single converter that turns a CDR file into a DXF; instead there is a chain of engines, each with its own supported inputs and outputs. The public converter endpoint returns that whole matrix, so your code can find a valid route rather than guessing at a magic parameter.
The engines behind it are the familiar open source ones, and the matrix tells you which is which: `librsvg` and `pdf2svg` for SVG work, `gs` (Ghostscript) for PostScript and PDF, `libcdr` for CorelDRAW, `hp2xx` for HPGL plotter files, and a `cad` family for DXF and DWG. Free public use is rate limited to single digits per window, reported in `X-RateLimit-*` headers, which is generous enough for occasional conversions and deliberately not enough for a batch pipeline.
Quick facts
- Base URL
https://vector.express/api/v2/public- Authentication
- The public tier needs no key. Paid tiers exist for higher volume and are authenticated; nothing documented here requires a credential.
- Rate limit
- Observed as 5 requests per window on the public tier, reported in `X-RateLimit-Limit`, `X-RateLimit-Remaining` and `X-RateLimit-Reset` headers.
- Pricing
- Free public tier with paid plans for volume.
- CORS
- Not enabled — call it from your server
- Official docs
- Read the docs
How to use the Vector Express API
Every request below was executed against the live API on 2026-08-21, and the response shown is the real body it returned — not an illustration.
1. List every available converter and its formats
GET https://vector.express/api/v2/public/convert/
curl 'https://vector.express/api/v2/public/convert/'const res = await fetch("https://vector.express/api/v2/public/convert/");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);import requests
res = requests.get("https://vector.express/api/v2/public/convert/", timeout=20)
res.raise_for_status()
print(res.json()){
"converters": [
{
"name": "cad",
"inputFormats": [
"svg"
],
"outputFormats": [
"dxf",
"dwg"
]
},
{
"name": "cad2svg",
"inputFormats": [
"dxf",
"dwg"
],
"outputFormats": [
"svg"
]
},
{
"name": "cad2pdf",
"inputFormats": [
"dxf",
"dwg"
],
"outputFormats": [
"pdf"
]
},
{
"name": "cadlib",
"inputFormats": [
"dxf",
"dwg"
],
"outputFormats": [
"dxf",
"svg"
]
},
{
"name": "emf2svg",
"inputFormats": [
"emf"
],
"outputFormats": [
"svg"
]
},
{
"name": "svg2cad",
"inputFormats": [
"svg"
],
"outputFormats": [
"dxf",
"dwg"
]
},
{
"name": "gs",
"inputFormats": [
"ai",
"eps",
"pdf",
"ps"
],
"outputFormats": [
"eps",
"pdf",
"ps"
]
},
{
"name": "libcdr",
"inputFormats": [
"cdr"
],
"outputFormats": [
"svg"
]
},
{
"name": "librsvg",
"inputFormats": [
"svg"
],
"outputFormats": [
"eps",
"pdf",
"ps"
]
},
{
"name": "hp2xx",
"inputFormats": [
"hpgl",
"plt"
],
"outputFormats": [
"eps",
"svg"
]
},
{
"name": "pdf2svg",
"inputFormats"Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
(convert path) | path | Optional | The listing endpoint takes no parameters. To convert, POST the file to `/convert/{input}/{engine}/{output}`, e.g. `/convert/svg/cad/dxf`. /convert/ |
{input} | path | Optional | Source format extension, taken from a converter's `inputFormats`. svg |
{output} | path | Optional | Target format extension, taken from the same converter's `outputFormats`. dxf |
Response fields
convertersarray- Every available conversion engine. There is no single universal converter; you choose one whose input and output formats match your need.
converters[].namestring- Engine identifier used in the conversion path, such as `cad`, `gs`, `librsvg`, `libcdr` or `hp2xx`.
converters[].inputFormatsarray of strings- Formats this engine accepts, as bare extensions without a dot.
converters[].outputFormatsarray of strings- Formats it can produce. If your pair does not appear on one engine, you may need to chain two conversions.
What you can build with the Vector Express API
- Accept CorelDRAW or Illustrator uploads and normalise them to SVG
- Convert SVG designs to DXF for laser cutters and CNC machines
- Rasterise or flatten EPS and PostScript files to PDF in a document pipeline
- Discover programmatically whether a given format pair is convertible at all
- Migrate a library of legacy plotter files to a modern vector format
Common errors and how to fix them
429
The public tier allowance is exhausted.
Fix: Check `X-RateLimit-Remaining` before converting and wait for `X-RateLimit-Reset`. For batch work, use a paid tier or run the underlying open source tools yourself.
400 on a conversion path
The engine in the path does not support that input or output combination.
Fix: Fetch the converter matrix first and pick an engine whose `inputFormats` and `outputFormats` both match.
Corrupt output file
The source file uses features the engine cannot represent in the target format, such as gradients into DXF.
Fix: Vector formats are not equivalent. Test conversions against real files and expect to simplify artwork for CAD targets.
Vector Express API — frequently asked questions
Is Vector Express free?
There is a free public tier that needs no key, rate limited to a handful of requests per window. Paid plans exist for higher throughput.
Which formats can it convert?
The converter matrix is the authoritative answer and includes SVG, DXF, DWG, EPS, PS, PDF, AI, CDR, EMF and HPGL among others. Availability depends on the engine you route through.
Why do I need to pick a converter?
Because there is no single engine that handles every pair. The API exposes the engines individually so you can choose a valid route, and chain two conversions when no direct route exists.
Does the conversion endpoint require an upload?
Yes, converting a file means POSTing its bytes. The listing endpoint documented here is a plain read-only GET, which is why it is the example shown.
Tools that pair with this API
SVG to PNG Converter
Convert SVG vector files to PNG at any resolution you choose. Render crisp raster images from SVG in your browser — free, instant and private.
PNG to SVG Converter
Convert PNG to SVG online by tracing raster pixels into scalable vector shapes. Free browser-based vectorizer for logos, icons and pixel art.
SVG Minifier
Minify SVG files in your browser: strip comments, metadata and editor junk, round coordinates, collapse whitespace — with a live preview and size savings.
SVG to JPG Converter
Convert SVG to JPG online at any resolution. Choose the output size, background color and JPEG quality — rendered privately in your browser.
Vector Express is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 2026-08-21; always check the official documentation before relying on this API in production, as terms and limits can change.