QR-коды
Создавайте QR-коды с логотипом, цветами, стилями и типами содержимого, затем перечисляйте или обновляйте их.
Поддерживаемые типы
Передайте type как один из этих ключей. Поля содержимого меняются вместе с типом.
- text
- url
- phone
- sms
- 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 недоступен.
| Имя | Тип | Обязательно | По умолчанию | Описание |
|---|---|---|---|---|
| name | string | Да | — | Метка, сохранённая на ресурсе. |
| type | string | Да | url | Тип содержимого. Один из поддерживаемых ключей QR, кроме file. |
| url | string | Нет | — | URL назначения. Обязателен, когда type равен url. |
| text | string | Нет | — | Обычный текст. Обязателен, когда type равен text. Для массового текста разделяйте строки в этом поле. |
| url_dynamic | boolean | Нет | false | Если true, создаётся короткая ссылка, и QR кодирует её, чтобы назначение можно было изменить позже. |
| project_id | integer | Нет | — | Проект, к которому прикрепить ресурс. |
| is_bulk | boolean | Нет | false | Если true и type равен text, для каждой строки в text создаётся один QR. |
| style | string | Нет | square | Форма модуля. Примеры: square, dot, rounded, heart, hexagon. |
| inner_eye_style | string | Нет | square | Форма внутреннего поискового узора. Примеры: square, dot, circle, rounded. |
| outer_eye_style | string | Нет | square | Форма внешнего поискового узора. Примеры: square, circle, rounded, flower. |
| size | integer | Нет | 500 | Размер изображения в пикселях, 50–2000. |
| margin | integer | Нет | 0 | Модули тихой зоны, 0–25. |
| ecc | string | Нет | M | Коррекция ошибок: L, M, Q или H. Используйте H, когда добавляете логотип. |
| foreground_type | string | Нет | color | color или gradient. |
| foreground_color | string | Нет | #000000 | Цвет модулей в HEX. |
| foreground_gradient_style | string | Нет | horizontal | vertical, horizontal, diagonal, inverse_diagonal или radial. |
| foreground_gradient_one | string | Нет | — | Первый HEX-цвет градиента. |
| foreground_gradient_two | string | Нет | — | Второй HEX-цвет градиента. |
| background_color | string | Нет | #ffffff | HEX-цвет фона. Делайте его светлее модулей. |
| background_color_transparency | integer | Нет | 0 | Прозрачность фона, 0–100. |
| custom_eyes_color | boolean | Нет | false | Если true, глаза используют eyes_inner_color и eyes_outer_color. |
| eyes_inner_color | string | Нет | #000000 | HEX-цвет внутреннего глаза. |
| eyes_outer_color | string | Нет | #000000 | HEX-цвет внешнего глаза. |
| qr_code_logo | string | Нет | — | URL изображения логотипа или ключ загруженного файла. |
| qr_code_logo_size | number | Нет | 25 | Размер логотипа в процентах от QR, 5–40. |
| frame | string | Нет | — | Необязательный ключ рамки из студии. |
| frame_text | string | Нет | — | Подпись на рамке. |
Поля содержимого по типу
| Имя | Тип | Обязательно | По умолчанию | Описание |
|---|---|---|---|---|
| phone | string | Нет | — | Номер телефона, когда type равен phone. |
| sms | string | Нет | — | Номер телефона, когда type равен sms. |
| sms_body | string | Нет | — | Текст SMS-сообщения. |
| string | Нет | — | Получатель, когда type равен email. | |
| email_subject | string | Нет | — | Тема письма. |
| email_body | string | Нет | — | Текст письма. |
| string | Нет | — | Номер WhatsApp, только цифры. | |
| whatsapp_body | string | Нет | — | Предзаполненный текст WhatsApp. |
| wifi_ssid | string | Нет | — | Имя сети, когда type равен wifi. |
| wifi_password | string | Нет | — | Пароль Wi-Fi. |
| wifi_encryption | string | Нет | WPA | nopass, WEP, WPA или WPA/WPA2. |
| location_latitude | number | Нет | — | Широта, когда type равен location. |
| location_longitude | number | Нет | — | Долгота, когда type равен location. |
| event | string | Нет | — | Название события, когда type равен event. |
| event_start_datetime | string | Нет | — | ISO дата-время начала события. |
| vcard first_name / last_name / email | string | Нет | — | Поля 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-код
| Имя | Тип | Обязательно | Описание |
|---|---|---|---|
| page | integer | Нет | Page number (default 1) |
| results_per_page | integer | Нет | Items per page (default 25, max 100) |
| search | string | Нет | Search term |
| search_by | string | Нет | Column to search |
| order_by | string | Нет | Sort column |
| order_type | string | Нет | asc or desc |
| datetime_start | string | Нет | ISO datetime filter start |
| datetime_end | string | Нет | ISO datetime filter end |
| project_id | integer | Нет | — |
| type | string | Нет | — |
curl -X GET 'https://forqrcode.com/api/v1/qr-codes' \ -H 'Authorization: Bearer YOUR_API_KEY'
GET/api/v1/qr-codes/{id}Прочитать один QR-код
| Имя | Тип | Обязательно | Описание |
|---|---|---|---|
| id | integer | Да | — |
curl -X GET 'https://forqrcode.com/api/v1/qr-codes/{id}' \
-H 'Authorization: Bearer YOUR_API_KEY'PATCH/api/v1/qr-codes/{id}Обновить QR-код
| Имя | Тип | Обязательно | По умолчанию | Описание |
|---|---|---|---|---|
| id | integer | Да | — | — |
| name | string | Нет | — | Метка, сохранённая на ресурсе. |
| type | string | Нет | url | Тип содержимого. Один из поддерживаемых ключей QR, кроме file. |
| url | string | Нет | — | URL назначения. Обязателен, когда type равен url. |
| text | string | Нет | — | Обычный текст. Обязателен, когда type равен text. Для массового текста разделяйте строки в этом поле. |
| url_dynamic | boolean | Нет | false | Если true, создаётся короткая ссылка, и QR кодирует её, чтобы назначение можно было изменить позже. |
| project_id | integer | Нет | — | Проект, к которому прикрепить ресурс. |
| is_bulk | boolean | Нет | false | Если true и type равен text, для каждой строки в text создаётся один QR. |
| style | string | Нет | square | Форма модуля. Примеры: square, dot, rounded, heart, hexagon. |
| inner_eye_style | string | Нет | square | Форма внутреннего поискового узора. Примеры: square, dot, circle, rounded. |
| outer_eye_style | string | Нет | square | Форма внешнего поискового узора. Примеры: square, circle, rounded, flower. |
| size | integer | Нет | 500 | Размер изображения в пикселях, 50–2000. |
| margin | integer | Нет | 0 | Модули тихой зоны, 0–25. |
| ecc | string | Нет | M | Коррекция ошибок: L, M, Q или H. Используйте H, когда добавляете логотип. |
| foreground_type | string | Нет | color | color или gradient. |
| foreground_color | string | Нет | #000000 | Цвет модулей в HEX. |
| foreground_gradient_style | string | Нет | horizontal | vertical, horizontal, diagonal, inverse_diagonal или radial. |
| foreground_gradient_one | string | Нет | — | Первый HEX-цвет градиента. |
| foreground_gradient_two | string | Нет | — | Второй HEX-цвет градиента. |
| background_color | string | Нет | #ffffff | HEX-цвет фона. Делайте его светлее модулей. |
| background_color_transparency | integer | Нет | 0 | Прозрачность фона, 0–100. |
| custom_eyes_color | boolean | Нет | false | Если true, глаза используют eyes_inner_color и eyes_outer_color. |
| eyes_inner_color | string | Нет | #000000 | HEX-цвет внутреннего глаза. |
| eyes_outer_color | string | Нет | #000000 | HEX-цвет внешнего глаза. |
| qr_code_logo | string | Нет | — | URL изображения логотипа или ключ загруженного файла. |
| qr_code_logo_size | number | Нет | 25 | Размер логотипа в процентах от QR, 5–40. |
| frame | string | Нет | — | Необязательный ключ рамки из студии. |
| frame_text | string | Нет | — | Подпись на рамке. |
Пример запроса
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-код
| Имя | Тип | Обязательно | Описание |
|---|---|---|---|
| id | integer | Да | — |
curl -X DELETE 'https://forqrcode.com/api/v1/qr-codes/{id}' \
-H 'Authorization: Bearer YOUR_API_KEY'Имена параметров и примеры JSON на английском. Замените YOUR_API_KEY на ключ вашего аккаунта.