QR-коды

Создавайте QR-коды с логотипом, цветами, стилями и типами содержимого, затем перечисляйте или обновляйте их.

Поддерживаемые типы

Передайте type как один из этих ключей. Поля содержимого меняются вместе с типом.

  • text
  • url
  • phone
  • sms
  • email
  • whatsapp
  • facetime
  • location
  • wifi
  • event
  • vcard
  • crypto
  • paypal
  • upi
  • epc
  • pix
POST/api/v1/qr-codes
Создать QR-код

Отправьте JSON в теле запроса. name и type обязательны. Для типов url передайте url. Добавьте style, цвета и qr_code_logo, чтобы повторить код из студии. Тип file в API недоступен.

ИмяТипОбязательноПо умолчаниюОписание
namestringДаМетка, сохранённая на ресурсе.
typestringДаurlТип содержимого. Один из поддерживаемых ключей QR, кроме file.
urlstringНетURL назначения. Обязателен, когда type равен url.
textstringНетОбычный текст. Обязателен, когда type равен text. Для массового текста разделяйте строки в этом поле.
url_dynamicbooleanНетfalseЕсли true, создаётся короткая ссылка, и QR кодирует её, чтобы назначение можно было изменить позже.
project_idintegerНетПроект, к которому прикрепить ресурс.
is_bulkbooleanНетfalseЕсли true и type равен text, для каждой строки в text создаётся один QR.
stylestringНетsquareФорма модуля. Примеры: square, dot, rounded, heart, hexagon.
inner_eye_stylestringНетsquareФорма внутреннего поискового узора. Примеры: square, dot, circle, rounded.
outer_eye_stylestringНетsquareФорма внешнего поискового узора. Примеры: square, circle, rounded, flower.
sizeintegerНет500Размер изображения в пикселях, 50–2000.
marginintegerНет0Модули тихой зоны, 0–25.
eccstringНетMКоррекция ошибок: L, M, Q или H. Используйте H, когда добавляете логотип.
foreground_typestringНетcolorcolor или gradient.
foreground_colorstringНет#000000Цвет модулей в HEX.
foreground_gradient_stylestringНетhorizontalvertical, horizontal, diagonal, inverse_diagonal или radial.
foreground_gradient_onestringНетПервый HEX-цвет градиента.
foreground_gradient_twostringНетВторой HEX-цвет градиента.
background_colorstringНет#ffffffHEX-цвет фона. Делайте его светлее модулей.
background_color_transparencyintegerНет0Прозрачность фона, 0–100.
custom_eyes_colorbooleanНетfalseЕсли true, глаза используют eyes_inner_color и eyes_outer_color.
eyes_inner_colorstringНет#000000HEX-цвет внутреннего глаза.
eyes_outer_colorstringНет#000000HEX-цвет внешнего глаза.
qr_code_logostringНетURL изображения логотипа или ключ загруженного файла.
qr_code_logo_sizenumberНет25Размер логотипа в процентах от QR, 5–40.
framestringНетНеобязательный ключ рамки из студии.
frame_textstringНетПодпись на рамке.

Поля содержимого по типу

ИмяТипОбязательноПо умолчаниюОписание
phonestringНетНомер телефона, когда type равен phone.
smsstringНетНомер телефона, когда type равен sms.
sms_bodystringНетТекст SMS-сообщения.
emailstringНетПолучатель, когда type равен email.
email_subjectstringНетТема письма.
email_bodystringНетТекст письма.
whatsappstringНетНомер WhatsApp, только цифры.
whatsapp_bodystringНетПредзаполненный текст WhatsApp.
wifi_ssidstringНетИмя сети, когда type равен wifi.
wifi_passwordstringНетПароль Wi-Fi.
wifi_encryptionstringНетWPAnopass, WEP, WPA или WPA/WPA2.
location_latitudenumberНетШирота, когда type равен location.
location_longitudenumberНетДолгота, когда type равен location.
eventstringНетНазвание события, когда type равен event.
event_start_datetimestringНетISO дата-время начала события.
vcard first_name / last_name / emailstringНетПоля vCard: first_name, last_name, email и остальные ключи студии.

Пример запроса

curl -X POST 'https://forqrcode.com/api/v1/qr-codes' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Website QR",
  "type": "url",
  "url": "https://forqrcode.com",
  "style": "rounded",
  "size": 500,
  "ecc": "M",
  "foreground_color": "#17191c",
  "background_color": "#ffffff",
  "qr_code_logo": "https://forqrcode.com/logo.png",
  "qr_code_logo_size": 25
}'

Ещё примеры

QR с градиентом

curl -X POST 'https://forqrcode.com/api/v1/qr-codes' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Gradient QR",
  "type": "url",
  "url": "https://forqrcode.com",
  "style": "dot",
  "inner_eye_style": "circle",
  "outer_eye_style": "rounded",
  "foreground_type": "gradient",
  "foreground_gradient_style": "radial",
  "foreground_gradient_one": "#5c8b29",
  "foreground_gradient_two": "#25492f",
  "background_color": "#ffffff",
  "size": 600
}'

Wi-Fi QR

curl -X POST 'https://forqrcode.com/api/v1/qr-codes' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "name": "Office Wi-Fi",
  "type": "wifi",
  "wifi_ssid": "Guest",
  "wifi_password": "correct-horse",
  "wifi_encryption": "WPA",
  "style": "square",
  "ecc": "H"
}'

Пример ответа

{
  "data": {
    "id": 1,
    "type": "url",
    "name": "Website QR",
    "qr_code": "https://…/qr-codes/…/qr.svg",
    "settings": {
      "style": "rounded",
      "size": 500,
      "ecc": "M"
    }
  }
}
GET/api/v1/qr-codes
Список QR-код
ИмяТипОбязательноОписание
pageintegerНетPage number (default 1)
results_per_pageintegerНетItems per page (default 25, max 100)
searchstringНетSearch term
search_bystringНетColumn to search
order_bystringНетSort column
order_typestringНетasc or desc
datetime_startstringНетISO datetime filter start
datetime_endstringНетISO datetime filter end
project_idintegerНет
typestringНет
curl -X GET 'https://forqrcode.com/api/v1/qr-codes' \
  -H 'Authorization: Bearer YOUR_API_KEY'
GET/api/v1/qr-codes/{id}
Прочитать один QR-код
ИмяТипОбязательноОписание
idintegerДа
curl -X GET 'https://forqrcode.com/api/v1/qr-codes/{id}' \
  -H 'Authorization: Bearer YOUR_API_KEY'
PATCH/api/v1/qr-codes/{id}
Обновить QR-код
ИмяТипОбязательноПо умолчаниюОписание
idintegerДа
namestringНетМетка, сохранённая на ресурсе.
typestringНетurlТип содержимого. Один из поддерживаемых ключей QR, кроме file.
urlstringНетURL назначения. Обязателен, когда type равен url.
textstringНетОбычный текст. Обязателен, когда type равен text. Для массового текста разделяйте строки в этом поле.
url_dynamicbooleanНетfalseЕсли true, создаётся короткая ссылка, и QR кодирует её, чтобы назначение можно было изменить позже.
project_idintegerНетПроект, к которому прикрепить ресурс.
is_bulkbooleanНетfalseЕсли true и type равен text, для каждой строки в text создаётся один QR.
stylestringНетsquareФорма модуля. Примеры: square, dot, rounded, heart, hexagon.
inner_eye_stylestringНетsquareФорма внутреннего поискового узора. Примеры: square, dot, circle, rounded.
outer_eye_stylestringНетsquareФорма внешнего поискового узора. Примеры: square, circle, rounded, flower.
sizeintegerНет500Размер изображения в пикселях, 50–2000.
marginintegerНет0Модули тихой зоны, 0–25.
eccstringНетMКоррекция ошибок: L, M, Q или H. Используйте H, когда добавляете логотип.
foreground_typestringНетcolorcolor или gradient.
foreground_colorstringНет#000000Цвет модулей в HEX.
foreground_gradient_stylestringНетhorizontalvertical, horizontal, diagonal, inverse_diagonal или radial.
foreground_gradient_onestringНетПервый HEX-цвет градиента.
foreground_gradient_twostringНетВторой HEX-цвет градиента.
background_colorstringНет#ffffffHEX-цвет фона. Делайте его светлее модулей.
background_color_transparencyintegerНет0Прозрачность фона, 0–100.
custom_eyes_colorbooleanНетfalseЕсли true, глаза используют eyes_inner_color и eyes_outer_color.
eyes_inner_colorstringНет#000000HEX-цвет внутреннего глаза.
eyes_outer_colorstringНет#000000HEX-цвет внешнего глаза.
qr_code_logostringНетURL изображения логотипа или ключ загруженного файла.
qr_code_logo_sizenumberНет25Размер логотипа в процентах от QR, 5–40.
framestringНетНеобязательный ключ рамки из студии.
frame_textstringНетПодпись на рамке.

Пример запроса

curl -X PATCH 'https://forqrcode.com/api/v1/qr-codes/{id}' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "url": "https://forqrcode.com/pricing",
  "foreground_color": "#5d2a1a"
}'
DELETE/api/v1/qr-codes/{id}
Удалить QR-код
ИмяТипОбязательноОписание
idintegerДа
curl -X DELETE 'https://forqrcode.com/api/v1/qr-codes/{id}' \
  -H 'Authorization: Bearer YOUR_API_KEY'

Имена параметров и примеры JSON на английском. Замените YOUR_API_KEY на ключ вашего аккаунта.