Руководство по API QR-кодов для разработчиков
API QR-кодов позволяет пользователям программно генерировать высококачественные QR-коды или интегрировать массовую и быструю генерацию QR-кодов. Он предоставляет простой и эффективный способ создания QR-кодов для различных случаев использования, таких как автоматические платежи, интеграция в приложения, создание этикеток для продуктов и многое другое. API поддерживает различные параметры кастомизации, включая размер, цвет, форму, границы, тип и т. д. Разработчики могут интегрировать его в свои приложения, выполняя HTTP-запросы и указывая API-ключ для аутентификации или используя наши библиотеки.
API-ключ
API-ключ для вашего аккаунта можно создать на странице аккаунта. API-ключ можно включить в запросы либо в качестве параметра URL, например: https://genqrcode.com/api/public/generate?apikey=YOUR_API_KEY, либо в заголовке `GenQRCode-apikey`. В оставшейся части этого руководства мы будем использовать заголовок, так как это более безопасный вариант, но оба метода могут использоваться взаимозаменяемо. API-ключ следует считать конфиденциальным, и его нельзя передавать третьим лицам.
Ограничение запросов
Ограничение запросов вводится для обеспечения справедливого использования API. Бесплатный тариф включает 180 токенов в час. Обычные QR-коды стоят 1 токен за каждый, с максимальным лимитом 180 токенов в час, что эквивалентно 1 QR-коду каждые 20 секунд. Кроме того, быстрые конечные точки (fast call endpoints) стоят 1/50 токена, что позволяет создавать 2,5 QR-кода в секунду. Эти быстрые конечные точки рекомендуются, если не требуется настройка QR-кода. Если лимит токенов превышен, будет возвращен код состояния 429, указывающий на ограничение запроса.
Использование нескольких аккаунтов для обхода этих ограничений запрещено. Если вам нужны более высокие лимиты, пожалуйста, свяжитесь с нами для обсуждения тарифов.
Библиотеки
API статических QR-кодов
Типы QR-кодов
Тип QR-кода является основой каждого QR-кода. Он определяет, как данные кодируются и как QR-код ведет себя при сканировании. Выбор правильного типа имеет решающее значение, так как он влияет на функциональность вашего QR-кода. Ниже перечислены все доступные типы.
Text
Параметр | Тип | Необязательно | Описание |
---|---|---|---|
type | Int | false | Use 0 For a Text QR Code |
text | String | false | Текст внутри QR-кода. |
WiFi
Параметр | Тип | Необязательно | Описание | ||||||
---|---|---|---|---|---|---|---|---|---|
type | Int | false | Use 1 For a WiFi QR Code | ||||||
network | String | false | Название Wi-Fi сети. | ||||||
password | String | true | Пароль Wi-Fi сети. | ||||||
hidden | String | true | Скрыта ли Wi-Fi сеть. | ||||||
encryption | String | true |
Тип шифрования Wi-Fi сети.
Возможные значения
|
SMS
Параметр | Тип | Необязательно | Описание |
---|---|---|---|
type | Int | false | Use 2 For a SMS QR Code |
text | String | false | Текстовое сообщение. |
number | String | false | Номер телефона. |
Параметр | Тип | Необязательно | Описание |
---|---|---|---|
type | Int | false | Use 3 For a Email QR Code |
String | true | Адрес электронной почты в поле "Кому". | |
subject | String | true | Тема письма. |
message | String | true | Сообщение электронной почты. |
Phone
Параметр | Тип | Необязательно | Описание |
---|---|---|---|
type | Int | false | Use 4 For a Phone QR Code |
number | String | false | Номер телефона. |
Crypto
Параметр | Тип | Необязательно | Описание |
---|---|---|---|
type | Int | false | Use 5 For a Crypto QR Code |
cryptotype | String | false | Тип криптовалюты для отправки. |
address | String | false | Адрес криптовалютного кошелька получателя. |
amount | String | true | Сумма криптовалюты для отправки. |
vCard
Параметр | Тип | Необязательно | Описание |
---|---|---|---|
type | Int | false | Use 6 For a vCard QR Code |
vc_first_name | String | false | Имя vCard. |
vc_last_name | String | false | Фамилия vCard. |
vc_company | String | true | Компания. |
vc_job | String | true | Должность. |
vc_street | String | true | Улица. |
vc_city | String | true | Город. |
vc_state | String | true | Штат/регион. |
vc_zip | String | true | Почтовый индекс. |
vc_country | String | true | Страна. |
vc_phone | String | true | Телефонный номер. |
vc_mobile | String | true | Номер мобильного телефона. |
vc_fax | String | true | Номер факса. |
vc_website | String | true | URL-адрес веб-сайта. |
vc_email | String | true | Адрес электронной почты. |
Параметр | Тип | Необязательно | Описание |
---|---|---|---|
type | Int | false | Use 7 For a Whatsapp QR Code |
number | String | false | Номер телефона. |
text | String | true | Текст сообщения в WhatsApp. |
vEvent
Параметр | Тип | Необязательно | Описание |
---|---|---|---|
type | Int | false | Use 8 For a vEvent QR Code |
ve_summary | String | true | Краткое описание vEvent. |
ve_description | String | true | Описание vEvent. |
ve_location | String | true | Местоположение vEvent. |
ve_timezone | String | true | Часовой пояс начала и окончания vEvent. Например, используйте "Europe/Amsterdam" для часового пояса Амстердама. |
ve_url | String | true | URL-адрес vEvent. |
ve_start | String | true | Время начала vEvent. Например, "20250101T083000" для 1 января 2025 года в 08:30. |
ve_end | String | true | Время окончания vEvent. Например, "20250101T093000" для 1 января 2025 года в 09:30. |
Geo
Параметр | Тип | Необязательно | Описание |
---|---|---|---|
type | Int | false | Use 9 For a Geo QR Code |
ge_latitude | String | false | Широта для кодирования. |
ge_longitude | String | false | Долгота для кодирования. |
Пример текстового QR-кода
URL | https://api.genqrcode.com/public/generate |
---|---|
Метод запроса | POST |
Заголовки | GenQRCode-apikey: API_KEY |
Тело запроса | { "type": 0, "text": "https://genqrcode.com" } |
Ответ | ![]() |
Пример QR-кода Wi-Fi
URL | https://api.genqrcode.com/public/generate |
---|---|
Метод запроса | POST |
Заголовки | GenQRCode-apikey: API_KEY |
Тело запроса | { "type": 1, "network": "GenQRCode", "password": false, "hidden": false, "encryption": "wpa" } |
Ответ | ![]() |
Общие параметры
Здесь описаны все настраиваемые общие параметры и способы их использования.
Параметр | Тип | Значение по умолчанию | Описание | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
imageformat | String | png |
Формат изображения QR-кода.
Возможные значения
|
||||||||||||||||||||
bordersize | Int | 4 | Размер границы вокруг QR-кода. | ||||||||||||||||||||
width | Int | 500 | Ширина QR-кода. Максимальный размер 2000. | ||||||||||||||||||||
height | Int | 500 | Высота QR-кода. Максимальный размер 2000. |
Параметры цвета
Здесь описаны все настраиваемые параметры цвета и способы их использования.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
color | String | #000000 | Цвет QR-кода. Формат должен быть #RRGGBB или #RRGGBBAA. Значения RGBA представлены в шестнадцатеричном формате, от 00 до FF. |
custom_color_pattern | String | 1 | Шаблон цветов для использования. Например, если цвета заданы как #ff0000, #00ff00 и #0000ff, а шаблон — 1,2,3,3,2,1, цвета будут чередоваться в соответствии с этим шаблоном. Пример будет приведен далее в руководстве. |
background_color | String | #FFFFFF | Цвет фона QR-кода. Чтобы сделать фон прозрачным, установите альфа-канал в 00. Например, #00000000. |
inner_eye_color | String | #000000 | Цвет внутренних глаз QR-кода. |
outer_eye_color | String | #000000 | Цвет внешних глаз QR-кода. |
frame_color | String | #000000 | Цвет рамки вокруг QR-кода. Рамка должна быть включена, чтобы этот параметр вступил в силу. |
Пример цветного QR-кода
URL | https://api.genqrcode.com/public/generate |
---|---|
Метод запроса | POST |
Заголовки | GenQRCode-apikey: API_KEY |
Тело запроса | { "type": 0, "text": "https://genqrcode.com", "color": "#ff0000", "background_color": "#aaffaa", "inner_eye_color": "#ffaaaa", "outer_eye_color": "#ffaaff" } |
Ответ | ![]() |
Пример QR-кода с цветовым узором
URL | https://api.genqrcode.com/public/generate |
---|---|
Метод запроса | POST |
Заголовки | GenQRCode-apikey: API_KEY |
Тело запроса | { "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" } |
Ответ | ![]() |
Параметры рамки, формы и логотипа
Здесь описаны все настраиваемые параметры рамки, формы и логотипа и способы их использования.
Параметр | Тип | Значение по умолчанию | Описание |
---|---|---|---|
style | Int | 0 |
Стиль квадратов 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 |
Стиль внутренних глаз QR-кода.
0
1
2
3
4
5
6
7
|
outer_eye_style | Int | 0 |
Стиль внешних глаз QR-кода.
0
1
2
3
4
5
6
|
frame_style | Int | 0 |
Стиль рамки вокруг QR-кода.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
|
frame_text | String | SCAN ME | Текст внутри рамки. Чтобы этот текст был видимым, необходимо сначала настроить рамку с текстом. |
logo | String |
Логотип для использования внутри 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 | Удалять ли фон позади логотипа. |
Пример QR-кода с логотипом и формой
URL | https://api.genqrcode.com/public/generate |
---|---|
Метод запроса | POST |
Заголовки | GenQRCode-apikey: API_KEY |
Тело запроса | { "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 } |
Ответ | ![]() |
Пример QR-кода с пользовательским логотипом
Чтобы использовать пользовательский логотип, необходимо загрузить его с помощью запроса с данными формы (multipart form data request). Затем результат можно использовать в поле логотипа.
URL | https://api.genqrcode.com/public/upload/logo |
---|---|
Метод запроса | POST |
Заголовки | GenQRCode-apikey: API_KEY Content-Type: multipart/form-data |
Ответ | 586d0136af8a06e4a2b50cf9f2af0b72 |
API быстрых QR-кодов
API быстрых QR-кодов расходует всего 1/50 токена от обычного API. QR-коды оптимизированы для скорости и минимального размера файла. Хотя он поддерживает все типы QR-кодов, параметры настройки ограничены.
Параметры быстрого QR-кода
Здесь описаны все параметры быстрого QR-кода и способы их использования.
Параметр | Тип | Значение по умолчанию | Описание | ||||
---|---|---|---|---|---|---|---|
imageformat | String | png |
Формат изображения QR-кода.
Возможные значения
|
||||
bordersize | Int | 4 | Размер границы вокруг QR-кода. | ||||
width | Int | 500 | Ширина QR-кода. Автоматически подстраивается под ближайший доступный размер, чтобы избежать артефактов масштабирования. Максимальный размер 4000. | ||||
height | Int | 500 | Высота QR-кода. Автоматически подстраивается под ближайший доступный размер, чтобы избежать артефактов масштабирования. Максимальный размер 4000. |
Пример быстрого текстового QR-кода
URL | https://api.genqrcode.com/public/fastgenerate |
---|---|
Метод запроса | POST |
Заголовки | GenQRCode-apikey: API_KEY |
Тело запроса | { "imageformat": "png", "type": 0, "text": "https://genqrcode.com" } |
Ответ | ![]() |
API быстрого пакетного создания QR-кодов
Пример быстрого пакетного текстового QR-кода
URL | https://api.genqrcode.com/public/fastbatch |
---|---|
Метод запроса | POST |
Заголовки | GenQRCode-apikey: API_KEY |
Тело запроса | { "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 } } |
Ответ | QR Codes in a zip file. |