QRForgePro API Documentation
Generate QR codes, barcodes, and shipping labels programmatically with our powerful REST API. Perfect for developers, businesses, and applications requiring automated code generation.
Base URL
https://qrforgepro.com/api
Authentication
Our API is completely open for public use - no API key required! You can start making requests immediately without any authentication setup.
Public API Access
No API Key Required!
Start using our API instantly without registration or authentication. Perfect for testing, development, and production use.
Usage Limits
- Free public access: 1000 requests per hour
- Batch operations: Maximum 50 items per request
- File uploads: Maximum 16MB per file
- No registration required
QR Codes API
Generate QR Code
POST /api/qr/generateGenerate a QR code with customization options.
Request Body
{
"type": "text",
"content": {
"text": "Hello World!"
},
"customization": {
"size": 300,
"fill_color": "#000000",
"back_color": "#FFFFFF",
"error_correction": "M",
"format": "PNG"
}
}
Response
{
"success": true,
"qr_id": 123,
"type": "text",
"format": "PNG",
"size": "300x300",
"image_base64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"download_url": "/api/qr/download/123",
"generated_at": "2025-06-19T10:30:00Z",
"api_docs": "https://qrforgepro.com/api/docs"
}
Get QR Code Types
GET /api/qr/typesGet list of all available QR code types with examples.
Response
{
"success": true,
"types": {
"text": "Text",
"url": "URL/Website",
"email": "Email Address",
"phone": "Phone Number",
"wifi": "WiFi Network"
},
"count": 50,
"examples": {
"text": {"text": "Hello World"},
"url": {"url": "https://example.com"},
"email": {"email": "[email protected]", "subject": "Hello"}
},
"documentation": "https://qrforgepro.com/api/docs#qr-types"
}
Download QR Code
GET /api/qr/download/{qr_id}Download a previously generated QR code by ID.
Example
GET /api/qr/download/123
Returns the QR code image file for download.
Barcodes API
Generate Barcode
POST /api/barcode/generateGenerate a barcode with customization options.
Request Body
{
"type": "code128",
"content": "ABC123456",
"customization": {
"width": 300,
"height": 100,
"bar_color": "#000000",
"background_color": "#FFFFFF",
"show_text": true
}
}
Response
{
"success": true,
"barcode_id": 456,
"type": "code128",
"format": "PNG",
"size": "300x100",
"image_base64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"download_url": "/api/barcode/download/456",
"generated_at": "2025-06-19T10:30:00Z",
"api_docs": "https://qrforgepro.com/api/docs"
}
Get Barcode Types
GET /api/barcode/typesGet list of all available barcode types with examples.
Response
{
"success": true,
"types": {
"code128": "Code 128",
"code39": "Code 39",
"ean13": "EAN-13",
"upca": "UPC-A"
},
"count": 40,
"examples": {
"code128": "ABC123",
"code39": "ABC123",
"ean13": "123456789012"
},
"documentation": "https://qrforgepro.com/api/docs#barcode-types"
}
Scanner API
Scan QR Code/Barcode
POST /api/scanScan QR codes and barcodes from uploaded images.
Request
Send a multipart/form-data request with the image file:
Content-Type: multipart/form-data
image: [image file]
Response
{
"success": true,
"results": [
{
"type": "qr_code",
"data": "https://example.com",
"format": "url",
"confidence": 0.95,
"position": {
"x": 100,
"y": 150,
"width": 200,
"height": 200
}
}
],
"scanned_at": "2025-06-19T10:30:00Z",
"api_docs": "https://qrforgepro.com/api/docs"
}
Batch Processing API
Batch Generate QR Codes
POST /api/batch/qrGenerate multiple QR codes in a single request (max 50 items).
Request Body
{
"items": [
{
"type": "text",
"content": {"text": "Item 1"},
"customization": {"size": 300}
},
{
"type": "url",
"content": {"url": "https://example.com"},
"customization": {"size": 400}
}
]
}
Response
{
"success": true,
"batch_id": "batch_20250619_103000",
"total_items": 2,
"successful": 2,
"failed": 0,
"results": [
{
"index": 0,
"success": true,
"qr_id": 123,
"type": "text",
"image_base64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...",
"download_url": "/api/qr/download/123"
}
],
"generated_at": "2025-06-19T10:30:00Z",
"api_docs": "https://qrforgepro.com/api/docs"
}
Code Examples
JavaScript / Node.js
// Generate QR Code
const generateQR = async () => {
const response = await fetch('https://qrforgepro.com/api/qr/generate', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
type: 'text',
content: {
text: 'Hello from QRForgePro API!'
},
customization: {
size: 300,
fill_color: '#000000',
back_color: '#FFFFFF'
}
})
});
const result = await response.json();
console.log('QR Code generated:', result);
// Download the image
const imageResponse = await fetch(result.download_url);
const blob = await imageResponse.blob();
// Create download link
const url = window.URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = `qr_code_${result.qr_id}.png`;
a.click();
};
generateQR();
Python
import requests
import base64
from io import BytesIO
from PIL import Image
# Generate QR Code
def generate_qr_code():
url = 'https://qrforgepro.com/api/qr/generate'
data = {
'type': 'text',
'content': {
'text': 'Hello from QRForgePro API!'
},
'customization': {
'size': 300,
'fill_color': '#000000',
'back_color': '#FFFFFF'
}
}
response = requests.post(url, json=data)
result = response.json()
if result['success']:
print(f"QR Code generated with ID: {result['qr_id']}")
# Decode base64 image
image_data = result['image_base64'].split(',')[1]
image_bytes = base64.b64decode(image_data)
# Save image
image = Image.open(BytesIO(image_bytes))
image.save(f"qr_code_{result['qr_id']}.png")
print("QR Code saved successfully!")
else:
print(f"Error: {result['error']}")
generate_qr_code()
PHP
<?php
// Generate QR Code
function generateQRCode() {
$url = 'https://qrforgepro.com/api/qr/generate';
$data = [
'type' => 'text',
'content' => [
'text' => 'Hello from QRForgePro API!'
],
'customization' => [
'size' => 300,
'fill_color' => '#000000',
'back_color' => '#FFFFFF'
]
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
if ($result['success']) {
echo "QR Code generated with ID: " . $result['qr_id'] . "\n";
// Download the image
$imageUrl = 'https://qrforgepro.com' . $result['download_url'];
$imageData = file_get_contents($imageUrl);
file_put_contents("qr_code_{$result['qr_id']}.png", $imageData);
echo "QR Code saved successfully!\n";
} else {
echo "Error: " . $result['error'] . "\n";
}
}
generateQRCode();
?>
cURL
# Generate QR Code
curl -X POST https://qrforgepro.com/api/qr/generate \
-H "Content-Type: application/json" \
-d '{
"type": "text",
"content": {
"text": "Hello from QRForgePro API!"
},
"customization": {
"size": 300,
"fill_color": "#000000",
"back_color": "#FFFFFF"
}
}'
# Download generated QR Code
curl -o qr_code.png https://qrforgepro.com/api/qr/download/123
# Scan QR Code from image
curl -X POST https://qrforgepro.com/api/scan \
-F "image=@path/to/your/image.jpg"
Need Help?
Our support team is here to help you integrate our API successfully.
Powered by QRForgePro - Professional QR Code & Barcode Generation
© 2025 QRForgePro. All rights reserved. | Privacy Policy | Terms of Service