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
Generate a QR code for a website URL with full customization options including colors, shapes, formats, and error correction levels.
Generate URL QR Code - Endpoint Features
| Object | Description |
|---|---|
Request Body |
[Required] Json |
{
"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"
}
}'
Generate a QR code containing plain text content with custom styling options for colors, shapes, and output formats.
Generate Text QR Code - Endpoint Features
| Object | Description |
|---|---|
Request Body |
[Required] Json |
{
"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"
}
}'
Generate a QR code that initiates a phone call to the specified number when scanned with a mobile device.
Generate Phone QR Code - Endpoint Features
| Object | Description |
|---|---|
Request Body |
[Required] Json |
{
"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"
}
}'
Generate a QR code containing GPS coordinates that opens the default maps application with the specified location.
Generate Location QR Code - Endpoint Features
| Object | Description |
|---|---|
Request Body |
[Required] Json |
{
"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"
}
}'
Generate a QR code that opens the default email client with pre-filled recipient, subject line, and message body.
Generate Email QR Code - Endpoint Features
| Object | Description |
|---|---|
Request Body |
[Required] Json |
{
"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"
}
}'
Generate a QR code that opens the SMS app with a pre-filled phone number and message when scanned.
Generate SMS QR Code - Endpoint Features
| Object | Description |
|---|---|
Request Body |
[Required] Json |
{
"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"
}
}'
Generate a QR code for automatic WiFi network connection that allows users to connect to a network without manually entering credentials.
Generate WiFi QR Code - Endpoint Features
| Object | Description |
|---|---|
Request Body |
[Required] Json |
{
"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"
}
}'
Generate a QR code containing complete contact information in vCard format that can be saved directly to phone contacts.
Generate vCard QR Code - Endpoint Features
| Object | Description |
|---|---|
Request Body |
[Required] Json |
{
"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"
}
}'
Check the API health status and uptime to verify service availability.
This endpoint does not require any input parameters.
Test Endpoint
{"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, you first need to sign in to your account and subscribe to the API you want to use. Once subscribed, go to your Profile, open the Subscription section, and select the specific API. Your API key will be available there and can be used 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.
If you don’t cancel before the 7th day, your free trial will end automatically and your subscription will switch to a paid plan under the same plan you originally subscribed to, meaning you will be charged and gain access to the API calls included in that plan.
The free trial ends when you reach 50 API requests or after 7 days, whichever comes first.
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, we offer a 7-day free trial that allows you to make up to 50 API calls at no cost, so you can test our APIs without any commitment.
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.
Please have a look at our Refund Policy: https://zylalabs.com/terms#refund
Service Level:
100%
Response Time:
228ms
Service Level:
100%
Response Time:
213ms
Service Level:
100%
Response Time:
182ms
Service Level:
100%
Response Time:
39ms
Service Level:
100%
Response Time:
561ms
Service Level:
100%
Response Time:
75ms
Service Level:
100%
Response Time:
1,692ms
Service Level:
100%
Response Time:
1,971ms
Service Level:
100%
Response Time:
293ms
Service Level:
100%
Response Time:
2,084ms