Руководство по API QR-кодов для разработчиков
API QR-кодов позволяет пользователям программно генерировать высококачественные QR-коды или интегрировать массовую и быструю генерацию QR-кодов. Он предоставляет простой и эффективный способ создания QR-кодов для различных случаев использования, таких как автоматические платежи, интеграция в приложения, создание этикеток для продуктов и многое другое. API поддерживает различные параметры кастомизации, включая размер, цвет, форму, границы, тип и т. д. Разработчики могут интегрировать его в свои приложения, выполняя HTTP-запросы и указывая API-ключ для аутентификации или используя наши библиотеки.
API-ключ
Ключ API для вашей учетной записи можно создать на странице учетной записи. Ключ API может быть включен в запросы либо как параметр URL, например: https://api.genqrcode.com/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 | Адрес электронной почты в поле "Кому". | |
| email-cc | String | true | Адрес электронной почты в поле «копия». |
| email-bcc | 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 | Адрес электронной почты. |
| vc_note | 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-кода. Рамка должна быть включена, чтобы этот параметр вступил в силу. |
| frame_background_color | String | #FFFFFF | Цвет фона рамки. Рамка должна быть включена, чтобы это подействовало. |
| frame_text_color | String | #FFFFFF | Цвет текста рамки. Рамка с текстом должна быть включена, чтобы это работало. |
Пример цветного 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
14
15
|
| 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. |




