Transform your applications with the most comprehensive QR code API on the market. Generate 8 different QR code types with extensive customization options, lightning-fast performance, and enterprise-grade reliability.
Mobile Applications
E-commerce & Retail
Marketing & Events
Business & Professional
{
"success": true,
"data": {
"qr_code": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUoAAAFKCAIAAAD0S4FSAAAEnk...",
"content": "https://northflank.com",
"format": "PNG",
"options": {
"foreground_color": "#000000",
"background_color": "#FFFFFF",
"size": 12,
"border": 4,
"error_correction": "M",
"format": "PNG",
"module_drawer": "square"
}
}
}
curl --location --request POST 'https://zylalabs.com/api/9326/qr+code+generator+api+pro/16851/generate+url+qr+code' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '{
"url": "https://northflank.com",
"options": {
"size": 12,
"format": "PNG",
"foreground_color": "#000000",
"background_color": "#FFFFFF",
"module_drawer": "square",
"error_correction": "M"
}
}'
{
"success": true,
"data": {
"qr_code": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAA...",
"content": "Hello World! This is a custom QR code with text content.",
"format": "JPEG",
"options": {
"foreground_color": "#2563eb",
"background_color": "#ffffff",
"size": 10,
"border": 4,
"error_correction": "M",
"format": "JPEG",
"module_drawer": "circle"
}
}
}
curl --location --request POST 'https://zylalabs.com/api/9326/qr+code+generator+api+pro/16853/generate+text+qr+code' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '{
"text": "Hello World! This is a custom QR code with text content.",
"options": {
"format": "JPEG",
"size": 10,
"foreground_color": "#2563eb",
"background_color": "#ffffff",
"module_drawer": "circle",
"error_correction": "M"
}
}'
{
"success": true,
"data": {
"qr_code": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUoAAAFKCAIAAAD0S4FSAAAEnk...",
"content": "tel:+1234567890",
"format": "PNG",
"options": {
"foreground_color": "#059669",
"background_color": "#FFFFFF",
"size": 10,
"border": 4,
"error_correction": "M",
"format": "PNG",
"module_drawer": "rounded"
}
}
}
curl --location --request POST 'https://zylalabs.com/api/9326/qr+code+generator+api+pro/16855/generate+phone+qr+code' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '{
"phone": "+1234567890",
"options": {
"format": "PNG",
"size": 10,
"foreground_color": "#059669",
"background_color": "#FFFFFF",
"module_drawer": "rounded",
"error_correction": "M"
}
}'
{
"success": true,
"data": {
"qr_code": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUoAAAFKCAIAAAD0S4FSAAAEnk...",
"content": "geo:40.7128,-74.0060",
"format": "PNG",
"options": {
"foreground_color": "#ea580c",
"background_color": "#fed7aa",
"size": 10,
"border": 4,
"error_correction": "M",
"format": "PNG",
"module_drawer": "circle"
}
}
}
curl --location --request POST 'https://zylalabs.com/api/9326/qr+code+generator+api+pro/16859/generate+location+qr+code' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '{
"latitude": 40.7128,
"longitude": -74.0060,
"options": {
"format": "PNG",
"size": 10,
"foreground_color": "#ea580c",
"background_color": "#fed7aa",
"module_drawer": "circle",
"error_correction": "M"
}
}'
{
"success": true,
"data": {
"qr_code": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUoAAAFKCAIAAAD0S4FSAAAEnk...",
"content": "mailto:[email protected]?subject=QR Code Inquiry&body=Hello, I found your contact information via QR code.",
"format": "PNG",
"options": {
"foreground_color": "#000000",
"background_color": "#FFFFFF",
"size": 12,
"border": 4,
"error_correction": "M",
"format": "PNG",
"module_drawer": "square"
}
}
}
curl --location --request POST 'https://zylalabs.com/api/9326/qr+code+generator+api+pro/16854/generate+email+qr+code' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '{
"email": "[email protected]",
"subject": "QR Code Inquiry",
"body": "Hello, I found your contact information via QR code.",
"options": {
"format": "PNG",
"size": 12,
"foreground_color": "#000000",
"background_color": "#FFFFFF",
"module_drawer": "square",
"error_correction": "M"
}
}'
{
"success": true,
"data": {
"qr_code": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjkwIiBoZWlnaHQ9IjI5MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4...",
"content": "sms:+1234567890?body=Hello! This message was sent via QR code.",
"format": "SVG",
"options": {
"foreground_color": "#dc2626",
"background_color": "#FFFFFF",
"size": 10,
"border": 4,
"error_correction": "M",
"format": "SVG",
"module_drawer": "square"
}
}
}
curl --location --request POST 'https://zylalabs.com/api/9326/qr+code+generator+api+pro/16856/generate+sms+qr+code' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '{
"phone": "+1234567890",
"message": "Hello! This message was sent via QR code.",
"options": {
"format": "SVG",
"size": 10,
"foreground_color": "#dc2626",
"background_color": "#FFFFFF",
"module_drawer": "square",
"error_correction": "M"
}
}'
{
"success": true,
"data": {
"qr_code": "data:application/pdf;base64,JVBERi0xLjQKMSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZwovT3V0bGluZXMgMiAwIFI...",
"content": "WIFI:T:WPA;S:MyWiFiNetwork;P:mypassword123;H:false;;",
"format": "PDF",
"options": {
"foreground_color": "#7c3aed",
"background_color": "#FFFFFF",
"size": 20,
"border": 4,
"error_correction": "M",
"format": "PDF",
"module_drawer": "square"
}
}
}
curl --location --request POST 'https://zylalabs.com/api/9326/qr+code+generator+api+pro/16858/generate+wifi+qr+code' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '{
"ssid": "MyWiFiNetwork",
"password": "mypassword123",
"encryption": "WPA",
"options": {
"format": "PDF",
"size": 20,
"foreground_color": "#7c3aed",
"background_color": "#FFFFFF",
"module_drawer": "square",
"error_correction": "M"
}
}'
{
"success": true,
"data": {
"qr_code": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAUoAAAFKCAIAAAD0S4FSAAAEnk...",
"content": "BEGIN:VCARD\nVERSION:3.0\nFN:John Doe\nORG:Acme Corp\nTITLE:Software Engineer\nTEL:+1234567890\nEMAIL:[email protected]\nURL:https://johndoe.com\nADR:;;123 Main St;New York;NY;10001;USA\nEND:VCARD",
"format": "PNG",
"options": {
"foreground_color": "#000000",
"background_color": "#FFFFFF",
"size": 15,
"border": 4,
"error_correction": "H",
"format": "PNG",
"module_drawer": "square"
}
}
}
curl --location --request POST 'https://zylalabs.com/api/9326/qr+code+generator+api+pro/16857/generate+vcard+qr+code' --header 'Authorization: Bearer YOUR_API_KEY'
--data-raw '{
"name": "John Doe",
"organization": "Acme Corp",
"title": "Software Engineer",
"phone": "+1234567890",
"email": "[email protected]",
"website": "https://johndoe.com",
"address": "123 Main St",
"city": "New York",
"state": "NY",
"zipcode": "10001",
"country": "USA",
"options": {
"format": "PNG",
"size": 15,
"foreground_color": "#000000",
"background_color": "#FFFFFF",
"module_drawer": "square",
"error_correction": "H"
}
}'
{"service":"QR Code Generator API","status":"healthy","timestamp":"2025-08-18 23:54:59.351785","version":"1.0.0"}
curl --location --request GET 'https://zylalabs.com/api/9326/qr+code+generator+api+pro/16852/health+check' --header 'Authorization: Bearer YOUR_API_KEY'
| Header | Description |
|---|---|
Authorization
|
[Required] Should be Bearer access_key. See "Your API Access Key" above when you are subscribed. |
No long-term commitment. Upgrade, downgrade, or cancel anytime. Free Trial includes up to 50 requests.
Each endpoint returns a JSON object containing a success status and a data field. The data field includes the generated QR code in Base64 format, the original content (e.g., URL, text), the output format, and the customization options used (like colors and size).
The key fields in the response data include `success` (boolean), `qr_code` (Base64 encoded image), `content` (original input), `format` (output format), and `options` (customization details like colors, size, and error correction level).
Parameters vary by endpoint but generally include `url`, `text`, `email`, `phone`, `size`, `foreground_color`, `background_color`, `border`, and `error_correction`. Each parameter allows for extensive customization of the generated QR code.
The response data is organized in a JSON structure. It contains a top-level `success` field indicating the operation's success, followed by a `data` object that encapsulates the QR code details, including the generated image and customization options.
Each endpoint provides specific types of information based on its function, such as URLs for web links, text for messages, email addresses for email QR codes, phone numbers for calls, and GPS coordinates for locations, all customizable with various options.
Users can utilize the returned data by decoding the Base64 `qr_code` to display or store the QR code image. The `content` field provides the original data, while `options` can guide further customization or adjustments in future requests.
Typical use cases include generating QR codes for marketing campaigns, sharing contact information via vCards, enabling quick WiFi access in venues, and facilitating instant messaging or calling through SMS and phone QR codes.
Data accuracy is maintained through rigorous testing and validation processes during QR code generation. The API ensures that the generated codes correctly represent the input data, and error correction levels help enhance scanning reliability.
Users can customize QR codes with options such as `foreground_color`, `background_color`, `size`, `border`, and `error_correction`. For example, a URL QR code can be generated with a specific hex color for the foreground and a chosen size between 1-40 modules, allowing for tailored designs.
Users can enhance scannability by selecting appropriate error correction levels (L, M, Q, H) and ensuring sufficient contrast between foreground and background colors. Higher error correction levels allow QR codes to remain functional even if partially damaged.
The API supports eight QR code types: URL, Text, Email, Phone, SMS, vCard, WiFi, and Location. Each type serves specific purposes, such as sharing links, contact information, or enabling quick WiFi access.
Generated QR codes can be returned in three formats: PNG, SVG, and PDF. This flexibility allows users to choose the best format for their application, whether for web use, print, or digital sharing.
Users can utilize the interactive API explorer provided in the documentation to test endpoints live. This allows for experimentation with different parameters and immediate feedback on the generated QR codes.
The `module_drawer` parameter allows users to choose the shape of the QR code modules, with options like square, rounded corners, or circular. This customization can enhance the visual appeal of the QR code while maintaining functionality.
Each endpoint is designed to handle specific data types, such as URLs for web links or vCards for contact information. Users must select the appropriate endpoint based on the data they wish to encode, ensuring accurate QR code generation.
Users should refer to the detailed parameter guides in the documentation for troubleshooting. Common issues may include invalid input data or unsupported parameter values, which can be resolved by following the provided examples and guidelines.
To obtain your API key, first sign in to your account and navigate to the API you want to use. From the API's Pricing section, choose a plan and complete the subscription process. Once subscribed, return to the API page and you will see your API Access Key displayed at the top of the documentation page. You can use this key to authenticate your requests.
You can’t switch APIs during the free trial. If you subscribe to a different API, your trial will end and the new subscription will start as a paid plan.
The free trial lasts for 7 days and allows you to make up to 50 API requests.
No, the free trial is available only once, so we recommend using it on the API that interests you the most. Most of our APIs offer a free trial, but some may not include this option.
Yes. If the API offers a free trial, you will see a "Free 7-Day Trial" option in its Pricing section. The trial lasts for 7 days and allows up to 50 API requests, enabling you to evaluate the API before subscribing to a paid plan.
Zyla API Hub is like a big store for APIs, where you can find thousands of them all in one place. We also offer dedicated support and real-time monitoring of all APIs. Once you sign up, you can pick and choose which APIs you want to use. Just remember, each API needs its own subscription. But if you subscribe to multiple ones, you'll use the same key for all of them, making things easier for you.
You can monitor your API usage through the response headers included with every request:
x-zyla-api-calls-monthly-used: Shows the total number of API requests you have used during the current billing period.
x-zyla-api-calls-monthly-remaining: Shows the number of API requests you have remaining for the current billing period.
Yes, you can cancel your subscription at any time. Simply go to the Pricing section of the API you're subscribed to and click the "Unsubscribe" button.
Please note that upgrades, downgrades, and cancellations take effect immediately. Once your subscription is canceled, access to the service will end immediately, regardless of any remaining API calls in your quota.
Please have a look at our Refund Policy: https://zylalabs.com/terms#refund
Service Level:
100%
Response Time:
458ms
Service Level:
100%
Response Time:
139ms
Service Level:
100%
Response Time:
514ms
Service Level:
100%
Response Time:
508ms
Service Level:
100%
Response Time:
584ms
Service Level:
100%
Response Time:
659ms
Service Level:
100%
Response Time:
204ms
Service Level:
100%
Response Time:
1,049ms
Service Level:
100%
Response Time:
552ms
Service Level:
100%
Response Time:
605ms
Service Level:
100%
Response Time:
181ms
Service Level:
100%
Response Time:
533ms
Service Level:
100%
Response Time:
429ms
Service Level:
100%
Response Time:
26ms
Service Level:
100%
Response Time:
310ms
Service Level:
100%
Response Time:
227ms
Service Level:
100%
Response Time:
193ms
Service Level:
100%
Response Time:
391ms
Service Level:
100%
Response Time:
329ms
Service Level:
100%
Response Time:
61ms