Руководство по 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, указывающий на ограничение запроса.

Использование нескольких аккаунтов для обхода этих ограничений запрещено. Если вам нужны более высокие лимиты, пожалуйста, свяжитесь с нами для обсуждения тарифов.

Библиотеки

Java Library

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 сети.

Возможные значения

wep Используйте этот вариант, если Wi-Fi сеть использует устаревшее WEP-шифрование.
nopass Используйте этот вариант, если Wi-Fi сеть не имеет пароля.
wpa Значение по умолчанию. Используйте для WPA-шифрования. Если не уверены, какой вариант выбрать, используйте этот.

SMS

Параметр Тип Необязательно Описание
type Int false Use 2 For a SMS QR Code
text String false Текстовое сообщение.
number String false Номер телефона.

Email

Параметр Тип Необязательно Описание
type Int false Use 3 For a Email QR Code
email 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 Адрес электронной почты.

Whatsapp

Параметр Тип Необязательно Описание
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"
}
Ответ Text QR Code example

Пример 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"
}
Ответ WiFi QR Code example

Общие параметры

Здесь описаны все настраиваемые общие параметры и способы их использования.

Параметр Тип Значение по умолчанию Описание
imageformat String png Формат изображения QR-кода.

Возможные значения

tiff Формат изображения TIFF.
svg Формат изображения SVG.
gif Формат изображения GIF.
obj Формат изображения OBJ. Полная поддержка цвета.
png Формат изображения PNG.
jpeg Формат изображения JPEG. Не поддерживает прозрачность.
eps Формат изображения EPS.
stl Формат изображения STL. Без поддержки цвета.
webp Формат изображения WEBP.
3mf Формат изображения 3MF.
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"
}
Ответ Color QR Code example

Пример 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"
}
Ответ Color pattern QR Code example

Параметры рамки, формы и логотипа

Здесь описаны все настраиваемые параметры рамки, формы и логотипа и способы их использования.

Параметр Тип Значение по умолчанию Описание
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
/> /> /> /> /> />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 Текст внутри рамки. Чтобы этот текст был видимым, необходимо сначала настроить рамку с текстом.
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
}
Ответ Style and logo QR Code example

Пример 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-кода.

Возможные значения

svg Формат изображения SVG.
png Формат изображения PNG.
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"
}
Ответ Text QR Code example

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.