Ainda nao ha planos de preco detalhados para esta ferramenta.
DRAG IMAGE HERE TO BEGIN or you canPICK IMAGE TO VECTORIZEor press CTRL + V pasted File Picker Vectorizer.AI See It in Action PIXELS Click to replay VECTORS How It Works PICK Pick a bitmap image that you want to vectorize and drag and drop it onto the page. Bitmap images, such as JPEGs and PNGs, are represented as a grid of little squares called 'pixels', each with its own color. PROCESS We analyze, process, and convert your image from pixels to geometric shapes. The resulting vector image can be scaled to any resolution without getting blurry, and can be used to print, cut, embroider, and more! DOWNLOAD Inspect a full, interactive preview of the result and download it if you like. We support SVG, PDF, EPS, DXF, and PNG output. Full Featured Deep Vector Engine: Building on our 15 years of experience in the field, we have created deep learning networks and classical algorithms that together form the core functionality of Vectorizer.AI. We have trained the AI networks that underpin this service from scratch, and based on our own proprietary dataset. Vector Graph: Our proprietary computational geometry framework lets us make automated edits and localized optimizations that are simply not possible with conventional vector image representations. Full Shape Fitting: Going beyond simple Bezier curves, we fit complex whole geometric shapes where possible to get a perfect fit and unmatched consistency. We support fully parameterized circles, ellipses, rounded rectangles, and stars, all with optionally rounded corners and arbitrary rotation angles. Curve Support: In addition to whole geometric shapes, vector shapes can be built from straight lines, circular arcs, elliptical arcs, and quadratic and cubic Bezier curves. When modeling generalized curves, most vector graphics software apps try to simplify things to contain only cubic Bezier curves, a convenient but limited approximation. Vectorizer.AI supports the full range of curve types and uses them where appropriate. Clean Corners: Shape outlines often consist of straight or smoothly varying sections separated from one another by discrete corners. We analyze, model, and optimize every corner in the Vector Graph to craft results that are more natural than other vectorizers. High Performance: Nobody likes to wait. We respect your time, so we make sure we are fully utilizing state of the art GPUs for deep learning, and run carefully tuned and massively parallel classical algorithms on multi-core CPUs to bring you the best vectors in the industry ASAP. Symmetry Modelling: Symmetry is everwhere in nature and especially in design. We detect and model mirror and rotational symmetries in your image to produce more accurate and more consistent results. Adaptive Simplification: Not all boundaries between shapes in raster images are equally well supported by the pixel data. Faint and indistinct boundaries are automatically simplified to reduce their complexity in the output, leading to more pleasing results. Palette Control: Our system automatically detects the number of palette colors present in your input image. But if we get it wrong, or if you simply prefer a different number of colors, you can adjust the palette size to your liking. Sub-Pixel Precision: We tease out features that are less than a pixel wide, and place boundaries according to the anti-aliasing pixel values. Details matter. Fully Automatic: No user input is required to produce the result. Image Types: While originally designed for logos and other rasterized vector art, the algorithm also works really well on scans or photos of sketches and other drawn artwork, as well as photographs. Pre-Crop: Since we have a maximum allowable resolution, we let you make the most of it by cropping out the portion of your bitmap that you wish to vectorize. Only the cropped area counts against your resolution limit, letting you maximize the quality of the result. Full Color & Transparancy: We support full 32-bit color, including the alpha channel, which was incorporated as a first-class concept right from the start. Partially transparent areas and anti-aliasing are all fully supported. Export Choices: We support SVG, PDF, EPS, DXF, and PNG as output formats. SVG is the most flexible and widely supported format, and is the default. Our full-featured export options allow you to control how shapes are drawn, how they are grouped, and a number of other format-specific options. FAQ What makes Vectorizer.AI better than the competition? If I had to pick one thing, it would be the AI. We've been working in this space for 15 years and adding AI has been a game changer. It is able to tease out details that traditional methods miss, and it makes sensible guesses when the pixel data is ambiguous. We developed the Deep Learning models for this product fully in-house, and they are trained on our own proprietary dataset. But there are a lot of other things that we do better to clean up and improve the output of the AI vectorizer. These improvements include fitting whole geometric shapes, cleaning up corners, tangent matching, curve fairing, and many others. Our Vector Graph allows us to make these changes while maintaining inter-shape consistency, which is a weak point of many of our competitors. And we are just getting started. The whole site is under active development, and we have a lot of exciting features in the pipeline. When you are looking for an online tool to help you convert a JPG or PNG to vector, you will find a number of options on the web. Most of them are based on the same old algorithms that have been around for decades, and they frankly don't work very well. Vectorizer.AI is a new approach to vectorization, and we are confident that you will be impressed with the results. File formats? We currently support JPEG, PNG, WEBP, BMP and GIF as input, and produce SVG, PDF, EPS, DXF, and PNG as output. More output formats and options will be coming soon! If you have a file format that you would like us to support, please let us know. Will you add configuration options? We are working hard to make the AI smart enough that the fully automatic results get it right most of the time. But some things are a matter of preference, and we will add options for those. Resolution? The max image pixel size is 3 megapixels. The max image file size is 30 megabytes. Transparency? We support full 32-bit ARGB input, so both full and partial transparency work well. What are vector images useful for? Vector images are composed of geometric shapes, and can be scaled to any size without loss of quality. They are commonly used for printed graphics, and increasingly for web graphics, now that high-DPI screens are becoming the norm and browser support for SVG images has become ubiquitous. They are also necessary for some types of printing processes, such as laser engraving, vinyl cutting, and screen printing. Vector graphics are also useful because they can be easily edited and changed in a vector editor. In contrast, bitmap images are difficult and time consuming to edit because the graphics present in the image have been flattened down one or more layers of pixels. Editing pixels is tedious, it is easy to make mistakes, and the process often leaves small defects or artifacts behind. Will it work on my images? Most likely, yes. However, as always, the devil is in the details. That is why we provide you with a free, interactive preview so that you can see what you're going to get before you buy. Does this work on AI-generated images? Yes, in fact they seem to be a popular category, and we've been pleased to see how well our algorithm works on those images! Will the results work with my software? Our results follow the respective file format standards, and work with all standards-compliant readers. That said, not all vector software is fully standards compliant. We therefore offer a host of download options that allow you to customize the output to maximize compatibility. For example, you can control the file format version, the types of curves that are used, and much more. We also let you download the result from any of our example images for free so that you can try them out with your software before you buy. Is there a difference between vectorizing and embedding? Yes, there is a huge difference between vectorizing a bitmap and just embedding it in a vector file. The process of automatically converting bitmap images into vector art is called a variety of things, including vectorizing, vectoring, tracing, bitmap to vector, raster to vector, convert to vector, and probably many others. This process involves detecting the shapes in the image, fitting curves to them, and exporting the result as a vector file. The end result does not contain any pixel data and can be scaled to any size without loss of quality. But vector files can also just contain copies of bitmaps inside of them, and putting a bitmap into a vector file is called embedding. Some services just embed, but Vectorizer.AI does actual vectorization. Do you make any claims on the input images or vectorized results? Our terms of service just grant us the rights we need to deliver the service to you, and to improve our products. We don't claim any rights to the vectorized results, and we won't share your images with third parties unless you explicitly authorize us to do so. Please see our Terms of Service for more details. What are your data retention policies? Right now, we retain uploaded images and results for 24 hours, and permanently delete them shortly thereafter. Please note that our data retention policies may change over time, and this current policy does not bind us in the future, or require your affirmative consent to change. Can I use your output for machine learning training? No, you may not use the output of our service for training machine learning models, including deep learning models. We view this as a form of reverse engineering, and it is explicitly prohibited by our terms of service. If you are not sure whether your intended use is allowed, please reach out and we'll be happy to clarify. Pricing? See the Pricing page DOWNLOADFREE DOWNLOAD RGB #000000 A Original Output Merge Split Edit Palette Presets (by number of colors) Loading Cancel Upload Process Fetch Cancel Error RetryExit Application Please help us improve! We're sorry to hear the result didn't come out great on your image. Please help us improve by submitting the original image and the result for our internal review. Hopefully we will be able to fix our algorithms to better handle your image in the future. What went wrong? By submitting this image you grant us permission to use it for improving the service in accordance with our terms and privacy policy . CancelAccept and Submit Thank you - please share the love! We're glad to hear you like the result. Please help us spread the word by sharing it with your friends: Facebook Twitter LinkedIn Close Network Error Persistent network problems are usually caused by misbehaving browser plugins, misconfigured proxies, or overly restrictive firewalls. Please check your settings or try another browser or computer. Retry NowExit Application Fatal Error :-( Close ×Pre-Crop Your image size exceeds the size limit. For best results, please crop the image to the portion you wish to vectorize. Size Limit Original Image Size: Aspect Ratio: Megapixels: Cropped Image Size: Aspect Ratio: Megapixels: Cropped image exceeds size limit and will be scaled to fit. Size limit met, full resolution preserved. CancelOk Paste Target DROP IMAGE HERE × --- Pricing Vectorizer.AI offers both a Web App and an API. Using the Web App you can upload, vectorize, and preview the result for as many images as you like without commitment. However, to download results or to use the API you need a subscription. Currency: EUR EUR, Euro USD, United States Dollar Web AppUnlimited Web Images For people: no API access. Billed monthly, cancel anytime. €8.99 / month Most popular Subscribe API 1 Credit = 1 API Image For software: has API access. Billed monthly, cancel anytime. Roll over up to 5× monthly credits. Credits/MonthPrice/MonthPrice/Credit 50 €8.99/month €0.180 100 €17.99/month €0.180 200 €32.49/month €0.162 500 €69.99/month €0.140 1,000 €129/month €0.129 2,000 €224/month €0.112 5,000 €499/month €0.100 10,000 €899/month €0.090 15,000 €1,199/month €0.080 20,000 €1,499/month €0.075 25,000 €1,799/month €0.072 50,000 €2,999/month €0.060 75,000 €3,749/month €0.050 100,000 €4,499/month €0.045 Need more credits? Please contact us Show more plans Subscribe Which plan should I choose? For most users the unlimited Web App plan is the best choice. It allows you to upload images, inspect the results in the Web App, and download as much as you like. If you need programmatic access, where you write software for e.g. your mobile app or your website that needs to be able to vectorize images without having a human in the loop, then you need an API plan. All API plans come with roll over of unused credits (up to 5× monthly credits) so you can pick a plan based on your average monthly volume and not worry about spikes or troughs. We generally recommend starting with the smallest plan that fits your current needs, and then only upgrade as your usage requires. Will it work on my images? Most likely, yes. However, as always, the devil is in the details. That is why we provide you with a free, interactive preview so that you can see what you're going to get before you buy. Will the results work with my software? Our results follow the respective file format standards, and work with all standards-compliant readers. That said, not all vector software is fully standards compliant. We therefore offer a host of download options that allow you to customize the output to maximize compatibility. For example, you can control the file format version, the types of curves that are used, and much more. We also let you download the result from any of our example images for free so that you can try them out with your software before you buy. How do I make changes to my subscription? After signing up you can upgrade, downgrade, and renew your subscription anytime right here on this webpage. What payment options do I have? We accept all major credit cards and PayPal. We do not accept purchase orders and do not issue invoices. Can I integrate with the API for free? Yes! It is free to integrate with and test out the API, no subscription required. Details I need a lot of API calls to make a sale, can you give me a break on pricing? Yes! We offer lower-priced preview results you can show your end-users before they make a purchase. Details Previews are PNG images four times larger than your input, come with a discreet watermark, and cost 0.200 credits each. What happens when I run out of API credits? When you run out of credits, your API requests will result in 402 Payment Required errors. To avoid this, you can opt-in to automatically renew your subscription when running low on credits. You can set this up on your account page after creating an API Key. Do you offer special pricing for Academic or Non-profit users? Sorry, but we do not offer special pricing for Academic Institutions or Non-profits. Subscription Details You can cancel your subscription any time with just a few clicks on your account page. You can keep using your subscription until the end of your billing period, even after you cancel. There are no hoops, catches, or strings attached, and you do not have to call to cancel. If you're unable to log into your account, please contact support and we will help you out. Subscription fees are non-refundable. Remaining credits are lost upon cancellation. Subscriptions continue running and are automatically billed until cancelled. Access is granted immediately when subscribing. Subscriptions are personal and cannot be shared. × --- About Vectorizer.AI is a website dedicated to helping you convert bitmap images to vector images. Team Cedar Lake Ventures, Inc. is a small company based in the Minneapolis area. We develop, own, and operate a portfolio of web sites, interactive web-based tools, desktop software, and web APIs. JAMES DIEBEL Born and raised in Wisconsin, James lived in the San Francisco Bay Area from 2003 to 2014 and presently resides in suburban Minneapolis. He holds a bachelor's degree in Engineering Mechanics and Astronautics, and Mathematics from University of Wisconsin, and a Masters and Ph.D. in Aeronautics and Astronautics from Stanford University. James Diebel started the research project that led to Vector Magic, Cedar Lake Ventures' first website, as a graduate student at Stanford University. JACOB NORDA Born and raised in Sweden, Jacob has lived in the San Francisco Bay Area since 2001. He holds a Master's in Electrical Engineering and Applied Physics from Linköping Institute of Technology, one year of which was spent on a scholarship at Stanford University. Jacob worked as a software engineer at Rosum Inc (now defunct), a geolocation startup in 2001/2002, then moved on to Trimble Navigation, first as a software engineer and subsequently software manager. After four and half years there he teamed up with James Diebel on the research project that led to Vector Magic, Cedar Lake Ventures' first website. DANI SCHAUB Born and raised in Minnesota, Dani played Division 2 College Basketball at Concordia University, St. Paul while earning her Undergraduate Degree in Elementary Education. She then continued her basketball career at the University of Sioux Falls in South Dakota, where she completed her Master’s in Business Administration. Websites Font Hero FONTS, REIMAGINED Hundreds of instantly updating custom specimens organized by vibe, more than a million AI fonts with consistent & broad character sets, blazingly fast load times, and simple licensing. The best way to find your next font! Vectorizer.AI PIXEL TO VECTOR TRACER Powerful deep learning based raster to vector conversion - just upload your JPEG/PNG image and get it vectorized to SVG/EPS/PDF/DXF right away. Great for digital graphics and all forms of printing, embroidery, signage and more. Weather Spark BEAUTIFUL WEATHER GRAPHS In-depth weather reports give you the full scoop on what the weather is typically like in any location - a great resource for trip and event planning. Statistical Atlas DEMOGRAPHIC REPORTS FOR THE UNITED STATES Detailed demographic information presented in charts and maps across all geographical levels of the United States, ranging from the entire nation down to the block group. Topics include race, ethnicity, ancestry, income, employment, educational attainment, and more. Vector Magic BITMAP TO VECTOR CONVERSION Fully automatic bitmap to vector conversion in one convenient website - just upload your bitmap logo and get it vectorized in a matter of seconds. Great for all forms of printing, embroidery, signage and more. Clipping Magic REMOVE IMAGE BACKGROUNDS Instantly remove image backgrounds online, fully automatically and with a Smart Editor to get just the right result. Super convenient for e-commerce product shots, marketing materials, and more. Tensor Spy TENSOR VISUALIZATION AND INSPECTION TOOL Tensor Spy is a browser-based tensor inspection tool for .npy, .npz, .pt, and .pth files, including multi-tensor archives. Pix Spy ENHANCED PIXEL EXAMINATION Pix Spy is your handy image inspection multi-tool. Measure, Eye-drop, Crop and more. Completely free to use and ad-free. Recompressor OPTIMIZED IMAGE OPTIMIZATION Recompressor optimally compresses image files, with full online preview, and without your files ever leaving your browser. Completely free to use and ad-free. Pixian.AI IMAGE BACKGROUND REMOVER Fully automatic background removal in one convenient website - just upload your image and get the background removed in seconds. Super convenient for e-commerce product shots, marketing materials, and more. QR Codes THE EASIEST WAY TO DIGITALLY CONNECT WITH PEOPLE YOU MEET Create "Scan To Message Me" SMS / Email / WhatsApp QR Codes to digitally connect with people you meet: have them scan your QR code to immediately send you a message. Great for conferences and networking events. Sol Scout SUNSHINE AUGMENTED REALITY APP Augmented Reality app that helps you determine when a spot will be in the sun or in the shade. Great for siting flowers & solar panels, for photography, outdoor event planning, real estate, and more. Completely free to use and ad-free. Ask Geo LOCATION TO INFORMATION API & LIBRARY Ask Geo provides a simple, fast, and accurate Web API and Java & .NET Libraries for getting relevant information based on a location (latitude, longitude). The flagship API provides an accurate time zone identifier for any latitude and longitude on earth. Pix Fix CLEAN UP NOISY IMAGES Pix Fix cleans up image JPEG compression artifacts, grainy scans, and other image noise, all while preserving sharp edges and other real details. Completely free to use and ad-free. Cedar Lake Ventures BILLING AND ACCOUNT MANAGEMENT CedarLakeVentures.com is a billing and account management service for web properties owned by Cedar Lake Ventures, Inc.. This provides a smooth and uniform login and billing experience across our sites. Contact THE BEST WAY TO REACH US IS BY EMAIL AT: support@__remove_this_part__vectorizer.ai OUR ADDRESS IS: Cedar Lake Ventures, Inc. 2500 Shadywood Rd Ste 510 Excelsior, MN 55331-6203 United States THE PHONE NUMBER FOR OUR VOICEMAIL IS: +1 415 230 2377 × --- Overview Quickstart API Chatbot How To Use This API Pricing Authentication & Security Rate Limiting Timeouts Error JSON Response Headers Vectorize Download Delete Account Status Changelog Output Options Error Responses Get API Key Image Vectorization API Vectorizer.AI offers a full-fledged bitmap tracing API. The API traces pixels to vectors fully automatically and with best-in-class fidelity. Get API Key Quickstart POST a bitmap image and get a vectorized result back: File URL cURL Java .NET Node.js PHP Python Ruby $ curl https://vectorizer.ai/api/v1/vectorize \ -u xyz123:[secret] \ -F image=@example.jpeg \ -o result.svg // Requires: org.apache.httpcomponents.client5:httpclient5-fluent Request request = Request.post("https://vectorizer.ai/api/v1/vectorize") .addHeader("Authorization", "Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd") .body( MultipartEntityBuilder.create() .addBinaryBody("image", new File("example.jpeg")) // TODO: Replace with your image // TODO: Add more upload parameters here .build() ); ClassicHttpResponse response = (ClassicHttpResponse) request.execute().returnResponse(); if (response.getCode() == 200) { // Write result to disk, TODO: or wherever you'd like try (FileOutputStream out = new FileOutputStream("result.svg")) { response.getEntity().writeTo(out); } } else { System.out.println("Request Failed: Status: " + response.getCode() + ", Reason: " + response.getReasonPhrase()); } using (var client = new HttpClient()) using (var form = new MultipartFormDataContent()) { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", "INSERT_API_KEY_HERE"); form.Add(new ByteArrayContent(File.ReadAllBytes("example.jpeg")), "image", "example.jpeg"); // TODO: Replace with your image // TODO: Add more upload parameters here var response = client.PostAsync("https://vectorizer.ai/api/v1/vectorize", form).Result; if (response.IsSuccessStatusCode) { // Write result to disk, TODO: or wherever you'd like FileStream outStream = new FileStream("result.svg", FileMode.Create, FileAccess.Write, FileShare.None); response.Content.CopyToAsync(outStream).ContinueWith((copyTask) => { outStream.Close(); }); } else { Console.WriteLine("Request Failed: Status: " + response.StatusCode + ", Reason: " + response.ReasonPhrase); } } // Requires "request" to be installed (see https://www.npmjs.com/package/request) var request = require('request'); var fs = require('fs'); request.post({ url: 'https://vectorizer.ai/api/v1/vectorize', formData: { image: fs.createReadStream('example.jpeg'), // TODO: Replace with your image // TODO: Add more upload options here }, auth: {user: 'xyz123', pass: '[secret]'}, followAllRedirects: true, encoding: null }, function(error, response, body) { if (error) { console.error('Request failed:', error); } else if (!response || response.statusCode != 200) { console.error('Error:', response && response.statusCode, body.toString('utf8')); } else { // Save result fs.writeFileSync("result.svg", body); } }); $ch = curl_init('https://vectorizer.ai/api/v1/vectorize'); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd')); curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'image' => curl_file_create('example.jpeg'), // TODO: Add more upload options here )); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); $data = curl_exec($ch); if (curl_getinfo($ch, CURLINFO_HTTP_CODE) == 200) { // Save result file_put_contents("result.svg", $data); } else { echo "Error: " . $data; } curl_close($ch); # Either use the sample code below, or this SDK: https://pypi.org/project/vectorizer-ai/ # Requires "requests" to be installed (see https://pypi.org/project/requests/) import requests response = requests.post( 'https://vectorizer.ai/api/v1/vectorize', files={'image': open('example.jpeg', 'rb')}, data={ # TODO: Add more upload options here }, auth=('xyz123', '[secret]') ) if response.status_code == requests.codes.ok: # Save result with open('result.svg', 'wb') as out: out.write(response.content) else: print("Error:", response.status_code, response.text) # Requires: gem install httpclient require 'httpclient' client = HTTPClient.new default_header: { "Authorization" => "Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd" } response = client.post("https://vectorizer.ai/api/v1/vectorize", { "image" => File.open("example.jpeg", "rb"), # TODO: Replace with your image # TODO: Add more upload parameters here }) if response.status == 200 then # Write result to disk, TODO: or wherever you'd like File.open("result.svg", 'w') { |file| file.write(response.body) } else puts "Error: Code: " + response.status.to_s + ", Reason: " + response.reason end cURL Java .NET Node.js PHP Python Ruby $ curl https://vectorizer.ai/api/v1/vectorize \ -u xyz123:[secret] \ -F 'image.url=https://example.com/example.jpeg' \ -o result.svg // Requires: org.apache.httpcomponents.client5:httpclient5-fluent Request request = Request.post("https://vectorizer.ai/api/v1/vectorize") .addHeader("Authorization", "Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd") .body( MultipartEntityBuilder.create() .addTextBody("image.url", "https://example.com/example.jpeg") // TODO: Replace with your image URL // TODO: Add more upload parameters here .build() ); ClassicHttpResponse response = (ClassicHttpResponse) request.execute().returnResponse(); if (response.getCode() == 200) { // Write result to disk, TODO: or wherever you'd like try (FileOutputStream out = new FileOutputStream("result.svg")) { response.getEntity().writeTo(out); } } else { System.out.println("Request Failed: Status: " + response.getCode() + ", Reason: " + response.getReasonPhrase()); } using (var client = new HttpClient()) using (var form = new MultipartFormDataContent()) { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", "INSERT_API_KEY_HERE"); form.Add(new StringContent("https://example.com/example.jpeg"), "image.url"); // TODO: Replace with your image URL // TODO: Add more upload parameters here var response = client.PostAsync("https://vectorizer.ai/api/v1/vectorize", form).Result; if (response.IsSuccessStatusCode) { // Write result to disk, TODO: or wherever you'd like FileStream outStream = new FileStream("result.svg", FileMode.Create, FileAccess.Write, FileShare.None); response.Content.CopyToAsync(outStream).ContinueWith((copyTask) => { outStream.Close(); }); } else { Console.WriteLine("Request Failed: Status: " + response.StatusCode + ", Reason: " + response.ReasonPhrase); } } // Requires "request" to be installed (see https://www.npmjs.com/package/request) var request = require('request'); var fs = require('fs'); request.post({ url: 'https://vectorizer.ai/api/v1/vectorize', formData: { 'image.url': 'https://example.com/example.jpeg', // TODO: Replace with your image // TODO: Add more upload options here }, auth: {user: 'xyz123', pass: '[secret]'}, followAllRedirects: true, encoding: null }, function(error, response, body) { if (error) { console.error('Request failed:', error); } else if (!response || response.statusCode != 200) { console.error('Error:', response && response.statusCode, body.toString('utf8')); } else { // Save result fs.writeFileSync("result.svg", body); } }); $ch = curl_init('https://vectorizer.ai/api/v1/vectorize'); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Authorization: Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd')); curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'image.url' => 'https://example.com/example.jpeg', // TODO: Add more upload options here )); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); $data = curl_exec($ch); if (curl_getinfo($ch, CURLINFO_HTTP_CODE) == 200) { // Save result file_put_contents("result.svg", $data); } else { echo "Error: " . $data; } curl_close($ch); # Either use the sample code below, or this SDK: https://pypi.org/project/vectorizer-ai/ # Requires "requests" to be installed (see https://pypi.org/project/requests/) import requests response = requests.post( 'https://vectorizer.ai/api/v1/vectorize', data={ 'image.url': 'https://example.com/example.jpeg', # TODO: Add more upload options here }, auth=('xyz123', '[secret]') ) if response.status_code == requests.codes.ok: # Save result with open('result.svg', 'wb') as out: out.write(response.content) else: print("Error:", response.status_code, response.text) # Requires: gem install httpclient require 'httpclient' client = HTTPClient.new default_header: { "Authorization" => "Basic dmt5YzY3a3FhMjd5aWRkOltzZWNyZXRd" } response = client.post("https://vectorizer.ai/api/v1/vectorize", { "image.url" => "https://example.com/example.jpeg", # TODO: Replace with your image URL # TODO: Add more upload parameters here }) if response.status == 200 then # Write result to disk, TODO: or wherever you'd like File.open("result.svg", 'w') { |file| file.write(response.body) } else puts "Error: Code: " + response.status.to_s + ", Reason: " + response.reason end API Chatbot We have created a custom ChatGPT that can help you with your API integration. It can answer questions about the API documentation, and provide sample code in your preferred language tailored to your use-case. Chat with the Vectorizer.AI API Chatbot The chatbot is in beta and makes mistakes. Double-check the answers, and ask it to revise the code to fix errors and omissions. How To Use This API The API is designed to support many different use-cases. Here are a few common ones: Single Image Submit a bitmap, get a vector result, done Use the Vectorize endpoint and the code samples above. Preview First Show a preview to your prospect before they buy If you need to make a lot of API calls to make a sale, you can use the lower cost previews until you actually convert a customer. Use the Vectorize endpoint with mode=preview and policy.retention_days > 0 to get the preview, making sure to retain the Image Token returned in the X-Image-Token response header. After converting, use the Download endpoint with the Image Token to download the full result. Optional: if you need additional result formats (e.g. PNG, PDF, etc), be sure to retain the Receipt returned in the X-Receipt download response header. Then use the Download endpoint with the Image Token and Receipt to download the remaining formats. Multi-Format You need e.g. both PNG and SVG results Use the Vectorize endpoint with policy.retention_days > 0 to get the first result, making sure to retain the Image Token returned in the X-Image-Token response header. Use the Download endpoint with the Image Token to download the other formats. Multi-Option You need to process each image with multiple processing options Use the Vectorize endpoint with policy.retention_days > 0 to get the first result, making sure to retain the Image Token returned in the X-Image-Token response header. Use the Vectorize endpoint with the Image Token to iterate over the remaining processing options you need. Alternatively you can process each image individually and not worry about the Image Token. The Image Token saves you a bit of bandwidth and latency. Pricing ActionCreditsDescription Testing0.000 It is free to integrate with and test the API, no subscription required. Use mode=test and mode=test_preview for development. You can assess the result quality using the interactive Web App on the front page. Preview0.200 We offer preview results that you can show your end-users before they make a purchase. Previews are PNG images four times larger than your input, and come with a discreet watermark. Use mode=preview to get a preview result. Vectorize1.000 Vectorize a bitmap image to a vector image. Upgrade Preview0.900 Download the production result after a preview API call. Discounted compared to vectorizing it from scratch. Download Format0.100 Download another format (e.g. SVG, PNG, PDF, etc) of the result. Discounted compared to vectorizing it from scratch. Storage Day0.010 Price per day for storing a result beyond the first day, which is free. Please see the pricing page for the subscription plans. Authentication & Security The API uses standard HTTP basic access authentication. All requests to the API must be made over HTTPS and include your API Credentials, with the API Id as the user and API Secret as the password. Your http client library must support Server Name Indication (SNI) to successfully make requests. If you're getting weird handshake errors, this is most likely it. Rate Limiting Usage of the API is rate limited with generous allowances and no hard upper bound. During normal end-user-driven operation you are unlikely to run into any rate limiting as usage then tends to ebb and flow in a way that the service handles gracefully. However, for batch jobs we recommend starting out with at most 5 threads, adding 1 new thread every 5 minutes until you have reached the desired level of parallelism. Please reach out before starting if you need more than 100 concurrent threads. If you submit too many requests you will start getting 429 Too Many Requests responses. When this happens you should apply linear back off: on the first such response, wait 5 seconds until submitting the next request. On the second consecutive 429 response, wait 2*5=10 seconds until submitting the next request. On the third wait 3*5=15 seconds, etc. You can reset the back off counter after a successful request, and you should apply the back off on a per-thread basis (i.e. the threads should operate independently of each other). Timeouts While API requests are normally completed within seconds, it is possible during transient load spikes to experience longer processing times. To ensure your client library doesn't prematurely terminate API requests it should be configured with an idle timeout of at least 180 seconds. Error JSON We use conventional HTTP statuses to indicate success or failure of an API request, and include important error information in the returned Error JSON Object. We strive to always return an Error JSON Object with any problematic request. However, it is always theoretically possible to have internal server failures that lead to a non-JSON error response. Attributes statusThe HTTP status of the response, repeated here to help with debugging. codeVectorizer.AI internal error code. messageHuman-readable error message, intended to be helpful in debugging. If the HTTP status for your request is 200 then no Error JSON Object will be returned, and you can safely assume that the request broadly speaking succeeded. Some HTTP Client libraries raise exceptions for HTTP statuses in the 400-599 range. You will need to catch those exceptions and handle them appropriately. HTTP StatusMeaning 200-299 Success 400-499 There's a problem with the information provided in the request (e.g. a parameter was missing). Please review the error message to figure out how to fix it. 500-599 There's been a Vectorizer.AI internal error. Wait a moment then try again, and if the problem persists please email us. Example Error Response { "error" : { "status" : 400, "code" : 1006, "message" : "Failed to read the supplied image. " } } Recent API errors are listed on your account page for your debugging convenience. There's also a list of all error responses returned by the API. Response Headers Here are the custom response headers we use: HeaderDescription X-Image-Token Returned when your vectorization request has policy.retention_days > 0. Can be used to: Download the production result after a preview API call at a discount compared to vectorizing it from scratch. Download additional formats (e.g. SVG, PNG, PDF, etc) of the result at a reduced rate compared to vectorizing them from scratch. Re-vectorize the same image with different processing options. X-Receipt Returned when you download a production result using a preview Image Token. Can be used to download additional formats (e.g. SVG, PNG, PDF, etc) of the result at the download format rate instead of the upgrade preview rate. X-Credits-Calculated Returned with test requests to show the cost that would have been incurred if it had been a regular request. X-Credits-Charged Returned with all requests to show the cost incurred. Always 0 for test requests. Vectorize POST https://api.vectorizer.ai/api/v1/vectorize To vectorize an image, you do a standard HTTP POST file upload. Keep in mind that the Content-Type has to be multipart/form-data when uploading binary files. The table below lays out all the API parameters in a working try-it-now form. Each parameter has a brief description, but be sure to check out the detailed Output Options Documentation. Parameters The input image must be provided as one of: image Binary Optional A binary file. image.base64 String Optional A base64-encoded string. The string can be at most 1 megabyte in size. image.url String Optional A URL to fetch and process. image.token Optional An Image Token, returned in the X-Image-Token header in an earlier vectorization API call where policy.retention_days > 0. Must be a .bmp, .gif, .jpeg, .png, or .tiff file. The maximum image upload size (= width × height) is 33,554,432 pixels, which gets shrunk to input.max_pixels. mode production preview test test_preview Enum, default: production Value Processing Mode Credits production This mode is intended for production use and all parameters are supported. 1.000 preview This mode is intended for when you want to show your end-user a preview before they make a purchase. It produces a 4x PNG result with a discreet watermark, ignoring any contradictory parameters. 0.200 test, test_preview These modes are intended for developer use when integrating with the service. All parameters are supported, but there's significant watermarking. Test results are free and do not require an active subscription, so you can integrate with the service free of charge. We include an X-Credits-Calculated header in the response so you can affirmatively know what you would have been charged for the corresponding production calls. Free input.max_pixels Integer, 100 to 3145828, default: 2097252 The maximum input image size (= width × height in pixels). Images larger than this will be shrunk to this size before processing. policy.retention_days Integer, 0 to 30, default: 0 The number of days to retain the input image and its result for. When you specify policy.retention_days > 0 we include an X-Image-Token header in the response. This has three primary uses: After making a preview API call you can later download the production result quickly and at a discount. After vectorizing an image you can then download multiple output formats for the same image and processing options without having to vectorize them all from scratch. This saves significantly on both credits and latency. When you want to re-vectorize the same image with different processing options. This allows you to reduce the call latency and save on bandwidth. The first day of storage is free, then a charge of 0.010 credits per day applies. See also the Download endpoint. processing.max_colors Integer, 0 to 256, default: 0 The maximum number of colors to use for the result. 0 means unlimited. 1 and 2 both mean two colors, e.g. black-and-white. N>=2 means that number of colors. Note that if output.gap_filler.enabled=true (the default) then the result will also contain mixtures of the selected colors. Disable the gap filler to get a result with only the selected colors. processing.palette Format: '[color][-> remapped][~ tolerance];'#00000000; #FFFFFF ~ 0.1; #0000FF -> #00FF00; #FF0000 -> #00FF00 ~ 0.1; Default: (empty) This is a very powerful and flexible mechanism to control the colors in the result. Colors detected in the image that are within the tolerance of any of the palette colors will be snapped to the nearest such palette color, and remapped if that palette color has a remapping specified. Unmatched colors are left unchanged. Examples To snap the detected colors to the nearest of red, green, and blue, use: #FF0000; #00FF00; #0000FF; To clean up detected colors close to red, green, and blue, but leave others unchanged, use: #FF0000 ~ 0.02; #00FF00 ~ 0.02; #0000FF ~ 0.02; To turn detected colors close to red into green, leaving everything else unchanged, use: #FF0000 -> #00FF00 ~ 0.02; To snap anything close to red, green, and blue to those colors, but snap all other colors to transparent black (thereby removing them from the result), use: #FF0000 ~ 0.02; #00FF00 ~ 0.02; #0000FF ~ 0.02; #00000000; // Transparent => removed Colors Colors are specified using basic CSS color syntax. For (partially) transparent colors we recommend using #RRGGBBAA. For opaque colors we recommend using #RRGGBB. Fully transparent colors are omitted from the result. Together with the color remapping capability you can use that to remove select colors from the result. You can use a maximum of 1,024 colors. Tolerance The unit is in fractional ARGB color distance, where 1.0 is the distance from opaque red (#FFFF0000) to opaque black (#FF000000). The maximum tolerance is 2.0, which is the distance from transparent black (#00000000) to opaque white (#FFFFFFFF). The default tolerance is 2.0, so by default detected colors will snap to their nearest palette color, even if it is far away. You can restrict the snapping to individual palette colors by specifying custom tolerances. If you're used to working with colors in the 0-255 range, then just divide by 255 to get the fractional value. processing.shapes.min_area_px Float, 0.0 to 100.0, default: 0.125 The minimum area of a shape in pixels. Shapes smaller than this are discarded. output.file_format svg eps pdf dxf png Enum, default: svg Output file format. SVG Options: output.svg.version svg_1_0 svg_1_1 svg_tiny_1_2 Enum, default: svg_1_1 Specify the SVG version attribute in the SVG tag. Details output.svg.fixed_size true false Boolean, default: false Whether to include the image size attributes in the SVG tag. When true viewers will typically render the SVG at a fixed size. When false viewers will typically let the SVG scale to fit the available space. Details output.svg.adobe_compatibility_mode true false Boolean, default: false When true we disable options that Adobe Illustrator cannot import. Details DXF Options: output.dxf.compatibility_level lines_only lines_and_arcs lines_arcs_and_splines Enum, default: lines_and_arcs DXF readers vary wildly in their abilities. This option allows you to restrict the output to the drawing primitives that your DXF reader actually supports. Details Bitmap Options: Applies only when output.file_format=png output.bitmap.anti_aliasing_mode anti_aliased aliased Enum, default: anti_aliased Value Anti-Aliasing Mode anti_aliased Pixels along the boundary between shapes have their colors blended according to the fraction of the pixel's area covered by each shape. aliased Pixels are assigned the color of the shape that contains the geometric center of the pixel. output.draw_style fill_shapes stroke_shapes stroke_edges Enum, default: fill_shapes Specify how you want the output to be stroked or filled. There's a subtle difference between stroking the shapes and stroking the edges between them. Please see the detailed documentation for an explanation output.shape_stacking cutouts stacked Enum, default: cutouts Determines if shapes are placed in cut-outs in the shapes below (cutouts) or if they're stacked on top of each other (stacked). Details output.group_by none color parent layer Enum, default: none Value Shape grouping none No grouping color By color, interacts with output.shape_stacking parent By containing shape layer By draw order Layer Details output.parameterized_shapes.flatten true false Boolean, default: false Flatten identified circles, ellipses, rectangles, triangles, and stars to ordinary curves. Details Curves: output.curves.allowed.quadratic_bezier true false Boolean, default: true Whether to allow Quadratic Bézier Curves. Details output.curves.allowed.cubic_bezier true false Boolean, default: true Whether to allow Cubic Bézier Curves. Details output.curves.allowed.circular_arc true false Boolean, default: true Whether to allow Circular Arcs. Details output.curves.allowed.elliptical_arc true false Boolean, default: true Whether to allow Elliptical Arcs. Details output.curves.line_fit_tolerance Float, 0.001 to 1.0, default: 0.1 We generally try to replace disallowed curve types with allowed curve types. See the details for the precise fallback sequences. However, if you disallow enough of them we will need to approximate them with line segments. This parameter specifies the maximum distance in pixels between a curve and the lines that approximate it. Details Gap Filler: output.gap_filler.enabled true false Boolean, default: true Whether to work around the white line rendering bugs common in vector viewers. Details output.gap_filler.clip true false Boolean, default: false Whether to clip the gap filler strokes. When output.shape_stacking=stacked either clip or use non-scaling strokes. Details output.gap_filler.non_scaling_stroke true false Boolean, default: true Whether to use non-scaling gap filler strokes. When output.shape_stacking=stacked either clip or use non-scaling strokes. Details output.gap_filler.stroke_width Float, 0.0 to 5.0, default: 2.0 Width of the gap filler strokes. Details Stroke style when output.draw_style is stroke_shapes or stroke_edges output.strokes.non_scaling_stroke true false Boolean, default: true Whether to use a non-scaling stroke. Details output.strokes.use_override_color true false Boolean, default: false Whether to use an override color, or the estimated color of the shape. Details output.strokes.override_color Format: '#RRGGBB', e.g. #FF00FF, default: #000000 The override color. Details output.strokes.stroke_width Float, 0.0 to 5.0, default: 1.0 Width of the stroke. Details Output Size: output.size.scale Float, 0.0 to 1000.0 Optional Uniform scale factor. If specified, this takes precedence over output.size.width and output.size.height. output.size.width Float, 0.0 to 1.0E12 Optional Width in units specified by output.size.unit. If only one of width and height is specified, the other is computed automatically to preserve the aspect ratio. output.size.height Float, 0.0 to 1.0E12 Optional Height in units specified by output.size.unit. If only one of width and height is specified, the other is computed automatically to preserve the aspect ratio. output.size.unit none px pt in cm mm Enum, default: none The unit of measurement for the width and height. Of these, pt, in, cm, and mm are physical units, and none and px are non-physical units. These distinctions interact with output.size.input_dpi and output.size.output_dpi. output.size.aspect_ratio preserve_inset preserve_overflow stretch Enum, default: preserve_inset Value Scaling Rule preserve_inset Scale uniformly to fit the tighter dimension, so there is no overflow but is empty space in the other dimension preserve_overflow Scale uniformly to fit the less tight dimension, overflowing the tighter dimension stretch Non-uniformly scale to fit the specified width and height For either preserve option, the position in the unconstrained dimension is controlled by output.size.align_x or output.size.align_y. output.size.align_x Float, 0.0 to 1.0, default: 0.5 Horizontal alignment for output.size.aspect_ratio = preserve_inset or preserve_overflow. Value Horizontal Alignment 0.0 Left aligned 0.5 Centered horizontally 1.0 Right aligned Can be any value between 0.0 and 1.0. output.size.align_y Float, 0.0 to 1.0, default: 0.5 Vertical alignment for output.size.aspect_ratio = preserve_inset or preserve_overflow. Value Vertical Alignment 0.0 Top aligned 0.5 Centered vertically 1.0 Bottom aligned Can be any value between 0.0 and 1.0. output.size.input_dpi Float, 1.0 to 1000000.0 Optional The DPI of the input image is read from the file when available. This parameter allows you to override that value. The resultant value is used to compute the physical size of the input image, which is used to compute the output size if physical units are specified for the output, but not an explicit width or height. output.size.output_dpi Float, 1.0 to 1000000.0 Optional The DPI of the output image. This is used to compute the pixel size of the bitmap output when physical units are specified. Vectorize! Download POST https://api.vectorizer.ai/api/v1/download This endpoint allows you to: Download the full production result after a preview API call. We include an X-Receipt header in the response so you can download additional output formats at the reduced download format rate afterwards. Download multiple output formats for the same image and processing options at the reduced download format rate and without having to vectorize them all from scratch. Parameters image.token Optional An Image Token, returned in the X-Image-Token header in an earlier vectorization API call where policy.retention_days > 0. receipt String Optional A receipt, returned in the X-Receipt header in an earlier download API call where you upgraded a preview to a production result. When submitting a preview Image Token you must include the receipt to get the reduced download format rate. output.file_format svg eps pdf dxf png Enum, default: svg Output file format. SVG Options: output.svg.version svg_1_0 svg_1_1 svg_tiny_1_2 Enum, default: svg_1_1 Specify the SVG version attribute in the SVG tag. Details output.svg.fixed_size true false Boolean, default: false Whether to include the image size attributes in the SVG tag. When true viewers will typically render the SVG at a fixed size. When false viewers will typically let the SVG scale to fit the available space. Details output.svg.adobe_compatibility_mode true false Boolean, default: false When true we disable options that Adobe Illustrator cannot import. Details DXF Options: output.dxf.compatibility_level lines_only lines_and_arcs lines_arcs_and_splines Enum, default: lines_and_arcs DXF readers vary wildly in their abilities. This option allows you to restrict the output to the drawing primitives that your DXF reader actually supports. Details Bitmap Options: Applies only when output.file_format=png output.bitmap.anti_aliasing_mode anti_aliased aliased Enum, default: anti_aliased Value Anti-Aliasing Mode anti_aliased Pixels along the boundary between shapes have their colors blended according to the fraction of the pixel's area covered by each shape. aliased Pixels are assigned the color of the shape that contains the geometric center of the pixel. output.draw_style fill_shapes stroke_shapes stroke_edges Enum, default: fill_shapes Specify how you want the output to be stroked or filled. There's a subtle difference between stroking the shapes and stroking the edges between them. Please see the detailed documentation for an explanation output.shape_stacking cutouts stacked Enum, default: cutouts Determines if shapes are placed in cut-outs in the shapes below (cutouts) or if they're stacked on top of each other (stacked). Details output.group_by none color parent layer Enum, default: none Value Shape grouping none No grouping color By color, interacts with output.shape_stacking parent By containing shape layer By draw order Layer Details output.parameterized_shapes.flatten true false Boolean, default: false Flatten identified circles, ellipses, rectangles, triangles, and stars to ordinary curves. Details Curves: output.curves.allowed.quadratic_bezier true false Boolean, default: true Whether to allow Quadratic Bézier Curves. Details output.curves.allowed.cubic_bezier true false Boolean, default: true Whether to allow Cubic Bézier Curves. Details output.curves.allowed.circular_arc true false Boolean, default: true Whether to allow Circular Arcs. Details output.curves.allowed.elliptical_arc true false Boolean, default: true Whether to allow Elliptical Arcs. Details output.curves.line_fit_tolerance Float, 0.001 to 1.0, default: 0.1 We generally try to replace disallowed curve types with allowed curve types. See the details for the precise fallback sequences. However, if you disallow enough of them we will need to approximate them with line segments. This parameter specifies the maximum distance in pixels between a curve and the lines that approximate it. Details Gap Filler: output.gap_filler.enabled true false Boolean, default: true Whether to work around the white line rendering bugs common in vector viewers. Details output.gap_filler.clip true false Boolean, default: false Whether to clip the gap filler strokes. When output.shape_stacking=stacked either clip or use non-scaling strokes. Details output.gap_filler.non_scaling_stroke true false Boolean, default: true Whether to use non-scaling gap filler strokes. When output.shape_stacking=stacked either clip or use non-scaling strokes. Details output.gap_filler.stroke_width Float, 0.0 to 5.0, default: 2.0 Width of the gap filler strokes. Details Stroke style when output.draw_style is stroke_shapes or stroke_edges output.strokes.non_scaling_stroke true false Boolean, default: true Whether to use a non-scaling stroke. Details output.strokes.use_override_color true false Boolean, default: false Whether to use an override color, or the estimated color of the shape. Details output.strokes.override_color Format: '#RRGGBB', e.g. #FF00FF, default: #000000 The override color. Details output.strokes.stroke_width Float, 0.0 to 5.0, default: 1.0 Width of the stroke. Details Output Size: output.size.scale Float, 0.0 to 1000.0 Optional Uniform scale factor. If specified, this takes precedence over output.size.width and output.size.height. output.size.width Float, 0.0 to 1.0E12 Optional Width in units specified by output.size.unit. If only one of width and height is specified, the other is computed automatically to preserve the aspect ratio. output.size.height Float, 0.0 to 1.0E12 Optional Height in units specified by output.size.unit. If only one of width and height is specified, the other is computed automatically to preserve the aspect ratio. output.size.unit none px pt in cm mm Enum, default: none The unit of measurement for the width and height. Of these, pt, in, cm, and mm are physical units, and none and px are non-physical units. These distinctions interact with output.size.input_dpi and output.size.output_dpi. output.size.aspect_ratio preserve_inset preserve_overflow stretch Enum, default: preserve_inset Value Scaling Rule preserve_inset Scale uniformly to fit the tighter dimension, so there is no overflow but is empty space in the other dimension preserve_overflow Scale uniformly to fit the less tight dimension, overflowing the tighter dimension stretch Non-uniformly scale to fit the specified width and height For either preserve option, the position in the unconstrained dimension is controlled by output.size.align_x or output.size.align_y. output.size.align_x Float, 0.0 to 1.0, default: 0.5 Horizontal alignment for output.size.aspect_ratio = preserve_inset or preserve_overflow. Value Horizontal Alignment 0.0 Left aligned 0.5 Centered horizontally 1.0 Right aligned Can be any value between 0.0 and 1.0. output.size.align_y Float, 0.0 to 1.0, default: 0.5 Vertical alignment for output.size.aspect_ratio = preserve_inset or preserve_overflow. Value Vertical Alignment 0.0 Top aligned 0.5 Centered vertically 1.0 Bottom aligned Can be any value between 0.0 and 1.0. output.size.input_dpi Float, 1.0 to 1000000.0 Optional The DPI of the input image is read from the file when available. This parameter allows you to override that value. The resultant value is used to compute the physical size of the input image, which is used to compute the output size if physical units are specified for the output, but not an explicit width or height. output.size.output_dpi Float, 1.0 to 1000000.0 Optional The DPI of the output image. This is used to compute the pixel size of the bitmap output when physical units are specified. Download! Delete POST https://api.vectorizer.ai/api/v1/delete Images vectorized with policy.retention_days > 0 are stored for the requested time period and deleted automatically shortly thereafter. There is normally no need to call this endpoint. It is provided so you can delete images before the retention period expires. Deleting an image early does not give you a refund for the remaining storage days. Parameters image.token Optional An Image Token, returned in the X-Image-Token header in an earlier vectorization API call where policy.retention_days > 0. Delete! Response Attributes success true The Image Token has been affirmatively deleted. Example Response { "success" : true } Account Status GET https://api.vectorizer.ai/api/v1/account Fetch basic information about your account, such as your subscription status and number of credits left. Parameters None Response Attributes subscriptionPlan The subscription plan you're currently subscribed to, or 'none'. subscriptionState The state of your current subscription ('active' or 'pastDue') or 'ended' if not subscribed. credits The number of API credits left in your account. 0 if not currently subscribed, or subscribed to a non-API plan. Can be fractional, so be sure to parse as a Double. Try it out https://api.vectorizer.ai/api/v1/account Username = API Id, Password = API Secret cURL $ curl "https://api.vectorizer.ai/api/v1/account" \ -u vkyc67kqa27yidd:[secret] Example Response { "subscriptionPlan" : "none", "subscriptionState" : "ended", "credits" : 0 } API Changelog DateChange Nov 4, 2024 Added processing.shapes.min_area_px. Oct 1, 2024 Added an AI chatbot to assist in integrating with the API. Sep 23, 2024 Greatly expanded the API to enable more modes of operation. Added Image Tokens, Receipts, per-call charge headers, and the Download and Delete endpoints. Jun 11, 2024 Added processing.palette Mar 4, 2024 Added section about timeouts. Jan 24, 2024 Added the Account Status endpoint. Added recent API errors to the Account page. Added listing of all API error responses. Jan 16, 2024 Documented the Error JSON Object. Oct 3, 2023 Clarified that output.gap_filler.enabled=true leads to more colors in the result than requested in processing.max_colors. Sep 20, 2023 Added mode Aug 1, 2023 Added a full-featured output size options group with the following options: output.size.scale, output.size.width, output.size.height, output.size.unit, output.size.aspect_ratio, output.size.align_x, output.size.align_y, output.size.input_dpi, and output.size.output_dpi. Added a bitmap output options group with one option: output.bitmap.anti_aliasing_mode. Jun 7, 2023 Added processing.max_colors May 31, 2023 Greatly expanded the API parameters. Updated the API endpoint. Mar 10, 2023 Initial release. Overview Output Options Error Responses Get API Key ×