Hướng dẫn API QR Code cho Nhà phát triển

API QR Code cho phép người dùng tạo mã QR chất lượng cao một cách tự động hoặc tích hợp khả năng tạo mã QR số lượng lớn với tốc độ cao. API cung cấp một cách đơn giản và hiệu quả để tạo mã QR cho nhiều mục đích khác nhau, chẳng hạn như thanh toán tự động, tích hợp vào ứng dụng, tạo nhãn sản phẩm và nhiều hơn nữa. API hỗ trợ nhiều tùy chọn tùy chỉnh, bao gồm kích thước, màu sắc, hình dạng, viền, loại mã, v.v. Các nhà phát triển có thể tích hợp API vào ứng dụng của mình bằng cách gửi yêu cầu HTTP và sử dụng khóa API để xác thực hoặc sử dụng các thư viện của chúng tôi.

Khóa API

Khóa API cho tài khoản của bạn có thể được tạo trên trang tài khoản. Khóa API có thể được bao gồm trong yêu cầu dưới dạng tham số URL, ví dụ: https://genqrcode.com/api/public/generate?apikey=YOUR_API_KEY, hoặc trong tiêu đề `GenQRCode-apikey`. Trong phần còn lại của hướng dẫn này, chúng tôi sẽ giả định sử dụng tiêu đề, vì đây là phương thức an toàn hơn, nhưng cả hai cách đều có thể được sử dụng thay thế cho nhau. Khóa API cần được giữ bí mật và không nên chia sẻ với bất kỳ ai.

Giới hạn tốc độ

Giới hạn tốc độ được áp dụng để đảm bảo việc sử dụng công bằng API. Gói Miễn phí bao gồm 180 token mỗi giờ. Mỗi mã QR thông thường tiêu tốn 1 token, với giới hạn tối đa là 180 token mỗi giờ, tương đương với 1 mã QR mỗi 20 giây. Ngoài ra, các điểm cuối tốc độ cao sẽ tiêu tốn 1/50 token, tương đương với 2,5 mã QR mỗi giây. Các điểm cuối tốc độ cao được khuyến nghị khi không cần tùy chỉnh mã QR. Nếu vượt quá giới hạn token, API sẽ trả về mã trạng thái 429, cho biết yêu cầu đã bị giới hạn.

Việc sử dụng nhiều tài khoản để vượt qua giới hạn này bị nghiêm cấm. Nếu bạn cần giới hạn cao hơn, vui lòng liên hệ với chúng tôi để biết giá.

Thư viện

Java Library

API Mã QR Tĩnh

Các loại mã QR

Loại mã QR là nền tảng của mọi mã QR. Nó xác định cách dữ liệu được mã hóa và cách mã QR hoạt động khi quét. Việc chọn đúng loại là rất quan trọng vì nó ảnh hưởng đến chức năng của mã QR. Dưới đây là tất cả các loại mã QR có sẵn để lựa chọn.

Text

Tham số Loại Tùy chọn Mô tả
type Int false Use 0 For a Text QR Code
text String false Văn bản bên trong Mã QR.

WiFi

Tham số Loại Tùy chọn Mô tả
type Int false Use 1 For a WiFi QR Code
network String false Tên mạng Wi-Fi.
password String true Mật khẩu Wi-Fi.
hidden String true Mạng Wi-Fi có bị ẩn không.
encryption String true Loại mã hóa được sử dụng cho mạng Wi-Fi.

Các giá trị có thể có

wep Sử dụng tùy chọn này nếu mạng Wi-Fi vẫn đang sử dụng mã hóa WEP cũ.
nopass Sử dụng tùy chọn này nếu mạng Wi-Fi không có mật khẩu.
wpa Giá trị mặc định. Sử dụng WPA để mã hóa. Nếu không chắc chắn, hãy sử dụng tùy chọn này.

SMS

Tham số Loại Tùy chọn Mô tả
type Int false Use 2 For a SMS QR Code
text String false Nội dung tin nhắn SMS.
number String false Số điện thoại.

Email

Tham số Loại Tùy chọn Mô tả
type Int false Use 3 For a Email QR Code
email String true Địa chỉ email trong trường "Đến".
subject String true Tiêu đề email.
message String true Nội dung tin nhắn email.

Phone

Tham số Loại Tùy chọn Mô tả
type Int false Use 4 For a Phone QR Code
number String false Số điện thoại.

Crypto

Tham số Loại Tùy chọn Mô tả
type Int false Use 5 For a Crypto QR Code
cryptotype String false Loại tiền điện tử cần gửi.
address String false Địa chỉ tiền điện tử của người nhận.
amount String true Số lượng tiền điện tử cần gửi.

vCard

Tham số Loại Tùy chọn Mô tả
type Int false Use 6 For a vCard QR Code
vc_first_name String false Họ của vCard.
vc_last_name String false Tên của vCard.
vc_company String true Công ty.
vc_job String true Nghề nghiệp.
vc_street String true Đường phố.
vc_city String true Thành phố.
vc_state String true Bang/Tỉnh.
vc_zip String true Mã bưu điện.
vc_country String true Quốc gia.
vc_phone String true Số điện thoại.
vc_mobile String true Số điện thoại di động.
vc_fax String true Số fax.
vc_website String true URL trang web.
vc_email String true Địa chỉ email.

Whatsapp

Tham số Loại Tùy chọn Mô tả
type Int false Use 7 For a Whatsapp QR Code
number String false Số điện thoại.
text String true Nội dung tin nhắn WhatsApp.

vEvent

Tham số Loại Tùy chọn Mô tả
type Int false Use 8 For a vEvent QR Code
ve_summary String true Tóm tắt vEvent.
ve_description String true Mô tả vEvent.
ve_location String true Địa điểm của vEvent.
ve_timezone String true Múi giờ của thời gian bắt đầu và kết thúc vEvent. Ví dụ: sử dụng "Europe/Amsterdam" cho múi giờ Amsterdam.
ve_url String true URL của vEvent.
ve_start String true Thời gian bắt đầu vEvent. Ví dụ: sử dụng "20250101T083000" để chỉ 1 tháng 1 năm 2025 lúc 8:30.
ve_end String true Thời gian kết thúc vEvent. Ví dụ: sử dụng "20250101T093000" để chỉ 1 tháng 1 năm 2025 lúc 9:30.

Geo

Tham số Loại Tùy chọn Mô tả
type Int false Use 9 For a Geo QR Code
ge_latitude String false Vĩ độ cần mã hóa.
ge_longitude String false Kinh độ cần mã hóa.

Ví dụ Mã QR Văn bản

URL https://api.genqrcode.com/public/generate
Phương thức yêu cầu POST
Tiêu đề GenQRCode-apikey: API_KEY
Nội dung yêu cầu
{
  "type": 0,
  "text": "https://genqrcode.com"
}
Phản hồi Text QR Code example

Ví dụ Mã QR Wi-Fi

URL https://api.genqrcode.com/public/generate
Phương thức yêu cầu POST
Tiêu đề GenQRCode-apikey: API_KEY
Nội dung yêu cầu
{
  "type": 1,
  "network": "GenQRCode",
  "password": false,
  "hidden": false,
  "encryption": "wpa"
}
Phản hồi WiFi QR Code example

Tham số chung

Dưới đây là tất cả các tham số chung có thể tùy chỉnh và cách sử dụng chúng.

Tham số Loại Giá trị mặc định Mô tả
imageformat String png Định dạng hình ảnh của Mã QR.

Các giá trị có thể có

tiff Định dạng hình ảnh TIFF.
svg Định dạng hình ảnh SVG.
gif Định dạng hình ảnh GIF.
obj Định dạng hình ảnh OBJ. Hỗ trợ đầy đủ màu sắc.
png Định dạng hình ảnh PNG.
jpeg Định dạng hình ảnh JPEG. Không hỗ trợ độ trong suốt.
eps Định dạng hình ảnh EPS.
stl Định dạng hình ảnh STL. Không hỗ trợ màu sắc.
webp Định dạng hình ảnh WEBP.
3mf Định dạng hình ảnh 3MF.
bordersize Int 4 Kích thước viền xung quanh Mã QR.
width Int 500 Chiều rộng của Mã QR. Kích thước tối đa là 2000.
height Int 500 Chiều cao của Mã QR. Kích thước tối đa là 2000.

Tham số màu sắc

Dưới đây là tất cả các tham số màu sắc có thể tùy chỉnh cùng hướng dẫn sử dụng.

Tham số Loại Giá trị mặc định Mô tả
color String #000000 Màu sắc của Mã QR. Định dạng phải là #RRGGBB hoặc #RRGGBBAA. Các giá trị RGBA ở dạng thập lục phân, từ 00 đến FF.
custom_color_pattern String 1 Mẫu màu sử dụng. Ví dụ: nếu các màu là #ff0000, #00ff00 và #0000ff, và mẫu là 1,2,3,3,2,1, thì các màu sẽ thay đổi theo mẫu đó. Ví dụ cụ thể sẽ được cung cấp sau trong hướng dẫn.
background_color String #FFFFFF Màu nền của Mã QR. Để làm cho nền trong suốt, đặt kênh alpha thành 00. Ví dụ: #00000000.
inner_eye_color String #000000 Màu của mắt trong Mã QR.
outer_eye_color String #000000 Màu của mắt ngoài Mã QR.
frame_color String #000000 Màu của khung xung quanh Mã QR. Cần bật khung để màu này có hiệu lực.

Ví dụ Mã QR Màu sắc

URL https://api.genqrcode.com/public/generate
Phương thức yêu cầu POST
Tiêu đề GenQRCode-apikey: API_KEY
Nội dung yêu cầu
{
  "type": 0,
  "text": "https://genqrcode.com",
  "color": "#ff0000",
  "background_color": "#aaffaa",
  "inner_eye_color": "#ffaaaa",
  "outer_eye_color": "#ffaaff"
}
Phản hồi Color QR Code example

Ví dụ Mã QR với mẫu màu

URL https://api.genqrcode.com/public/generate
Phương thức yêu cầu POST
Tiêu đề GenQRCode-apikey: API_KEY
Nội dung yêu cầu
{
  "type": 0,
  "text": "https://genqrcode.com",
  "color": "#e81416,#faeb36,#79c314,#487de7,#4b369d,#70369d",
  "custom_color_pattern": "1,1,2,2,3,3,4,4,5,5,6,6"
}
Phản hồi Color pattern QR Code example

Tham số Khung, Hình dạng và Logo

Dưới đây là tất cả các tham số về khung, hình dạng và logo có thể tùy chỉnh cùng hướng dẫn sử dụng.

Tham số Loại Giá trị mặc định Mô tả
style Int 0 Kiểu của các ô trong Mã QR.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
inner_eye_style Int 0 Kiểu của mắt trong Mã QR.
0
1
2
3
4
5
6
7
outer_eye_style Int 0 Kiểu của mắt ngoài Mã QR.
0
1
2
3
4
5
6
frame_style Int 0 Kiểu của khung xung quanh Mã QR.
0
1
/> /> /> /> /> />SCAN ME
2
/> /> /> /> /> /> /> />SCAN ME
3
/> /> /> />SCAN ME
4
/> /> />SCAN ME
5
/>SCAN ME
6
/>SCAN ME
7
/> /> />
8
/> /> /> /> />
9
/> /> /> /> /> /> /> /> /> /> /> /> />
10
/> /> /> /> /> /> />SCAN ME
11
/> />SCAN ME
12
SCAN ME
13
SCAN ME
frame_text String SCAN ME Văn bản bên trong khung. Cần cấu hình khung có văn bản trước khi văn bản này hiển thị.
logo String Logo sử dụng bên trong Mã QR.
youtube
wifi
google-maps
facebook
spotify
threads
zoom
instagram
linkedin
genqrcode
google-drive
airbnb
skype
snapchat
twitter
x-twitter
reddit
logo_remove_background Boolean false Có loại bỏ nền phía sau logo hay không.

Ví dụ Mã QR với Logo và Hình dạng

URL https://api.genqrcode.com/public/generate
Phương thức yêu cầu POST
Tiêu đề GenQRCode-apikey: API_KEY
Nội dung yêu cầu
{
  "type": 0,
  "text": "https://x.com/genqrcode",
  "style": 22,
  "inner_eye_style": 1,
  "outer_eye_style": 4,
  "frame": 10,
  "frame_text": "My X Page",
  "logo": "x-twitter",
  "logo_remove_background":true
}
Phản hồi Style and logo QR Code example

Ví dụ Mã QR với Logo Tùy chỉnh

Để sử dụng logo tùy chỉnh, chúng ta cần tải lên logo bằng yêu cầu dữ liệu dạng multipart form. Kết quả có thể được sử dụng trong trường logo.

URL https://api.genqrcode.com/public/upload/logo
Phương thức yêu cầu POST
Tiêu đề GenQRCode-apikey: API_KEY
Content-Type: multipart/form-data
Phản hồi 586d0136af8a06e4a2b50cf9f2af0b72

API Mã QR Tốc độ cao

API Mã QR Tốc độ cao chỉ tiêu tốn 1/50 token so với API thông thường. Mã QR được tối ưu hóa về tốc độ và kích thước tải xuống. Mặc dù hỗ trợ tất cả các loại mã QR, nhưng chỉ hỗ trợ một số tham số tùy chỉnh nhất định.

Tham số Mã QR Tốc độ cao

Dưới đây là tất cả các tham số của mã QR tốc độ cao và cách sử dụng chúng.

Tham số Loại Giá trị mặc định Mô tả
imageformat String png Định dạng hình ảnh của Mã QR.

Các giá trị có thể có

svg Định dạng hình ảnh SVG.
png Định dạng hình ảnh PNG.
bordersize Int 4 Kích thước viền xung quanh Mã QR.
width Int 500 Chiều rộng của Mã QR. Kích thước sẽ tự động điều chỉnh đến kích thước gần nhất được cấu hình để tránh lỗi làm mờ. Kích thước tối đa là 4000.
height Int 500 Chiều cao của Mã QR. Kích thước sẽ tự động điều chỉnh đến kích thước gần nhất được cấu hình để tránh lỗi làm mờ. Kích thước tối đa là 4000.

Ví dụ Mã QR Văn bản tốc độ cao

URL https://api.genqrcode.com/public/fastgenerate
Phương thức yêu cầu POST
Tiêu đề GenQRCode-apikey: API_KEY
Nội dung yêu cầu
{
  "imageformat": "png",
  "type": 0,
  "text": "https://genqrcode.com"
}
Phản hồi Text QR Code example

API Mã QR Tốc độ cao hàng loạt

Ví dụ Mã QR Văn bản hàng loạt tốc độ cao

URL https://api.genqrcode.com/public/fastbatch
Phương thức yêu cầu POST
Tiêu đề GenQRCode-apikey: API_KEY
Nội dung yêu cầu
{
  "QR Code 1": {
    "text": "https://genqrcode.com",
    "type": 0,
    "width": 500,
    "bordersize": 4,
    "imageformat": "png",
    "height": 500
  },
  "QR Code 2": {
    "text": "https://genqrcode.com/dynamicview",
    "type": 0,
    "width": 500,
    "bordersize": 4,
    "imageformat": "png",
    "height": 500
  },
  "QR Code 3": {
    "text": "https://genqrcode.com/pricing",
    "type": 0,
    "width": 500,
    "bordersize": 4,
    "imageformat": "png",
    "height": 500
  }
}
Phản hồi QR Codes in a zip file.