GetQR API находится в бета-версии и доступен для отдельных рабочих пространств. До общего релиза детали могут измениться.
qrType, и тип определяет, что должно быть в data. В этом руководстве описаны формат каждого типа, рабочее тело запроса и то, что можно изменить после печати кода.
Примеры — это тела запросов для Создания QR-кода. Отправляйте их так:
Все типы кратко
Как QR-код ведёт к адресу назначения
Каждый QR-код — это короткая ссылка и данные. Содержимое задают два поля:
Правила для всех типов:
- Значения по умолчанию. При создании пропущенный или пустой
link.urlстановится равнымdata, и весь объектlinkможно не передавать. Если переданы оба и они различаются, приоритет уlink.url. Передавайте их одинаковыми или толькоdata. - Что кодирует изображение. Для всех типов, кроме
wifi, изображение кодирует короткую ссылку. Поэтому адрес назначения напечатанного кода можно менять, а его сканирования отслеживаются. QR-код WiFi кодирует саму сеть: после печати его нельзя изменить, и его сканирования не отслеживаются. - Схемы.
link.urlпринимает толькоhttp:,https:,wifi:,mailto:,sms:иbegin:. Всё остальное, включаяgeo:,smsto:,matmsg:иtel:, получает422 Invalid destination URL, даже еслиdataэто принимает. - Пустые данные. Пустое
dataпропускает проверку типа. Тогда для типа с перенаправлением должен быть заданlink.url, иначе вызов получит400 Missing destination URL. - Структура. Помимо проверки типа, сервер данные не валидирует. Для JSON-типа достаточно, чтобы строка разбиралась как JSON-объект, а vCard должна лишь начинаться с
BEGIN:VCARD.
Website
qrType: "website". Инструкция для панели управления: QR-код Website.
Тело запроса
422 Expected an http(s) URL, e.g. "https://example.com" for qrType "website".422 Invalid destination URL
Feedback
qrType: "feedback". Инструкция для панели управления: QR-код Feedback.
data — это URL http(s) формы обратной связи, например Google Form или страницы отзывов. Всё остальное — как у Website.
Тело запроса
Payment
qrType: "payment". Инструкция для панели управления: QR-код Payment.
data — это URL оплаты у провайдера, например:
paypal.me, paypal.com/paypalme, cash.app, venmo.com, buy.stripe.com, stripe.com, square.link и payoneer.com. Для PayPal сумма — последний сегмент пути. Подойдёт и любой другой URL http(s), но редактор не разделит его на провайдера и сумму. Всё остальное — как у Website.
Тело запроса
qrType: "whatsapp". Инструкция для панели управления: QR-код WhatsApp.
data — это ссылка wa.me: международный номер цифрами без +, при желании с заранее заполненным текстом.
api.whatsapp.com/send. Всё остальное — как у Website.
Тело запроса
Location
qrType: "location". Инструкция для панели управления: QR-код Location.
data — это URL карты. Чтобы QR-код оставался редактируемым в панели управления, используйте такой формат (query_place_id необязателен):
geo: проходит проверку data, но отклоняется как адрес назначения, поэтому не используйте его. Всё остальное — как у Website.
Тело запроса
App Link
qrType: "app". Инструкция для панели управления: QR-код App Link.
Тело запроса
422 Invalid URL400 Missing destination URL
qrType: "email". Инструкция для панели управления: QR-код Email.
Тело запроса
422 Expected a mailto URI, e.g. "mailto:[email protected]?subject=Hello" for qrType "email".
SMS
qrType: "sms". Инструкция для панели управления: QR-код SMS.
Тело запроса
422 Expected an SMS URI, e.g. "sms:+14155550123?body=Hello" for qrType "sms".
WiFi
qrType: "wifi". Инструкция для панели управления: QR-код WiFi.
Тело запроса
422 Expected a Wi-Fi payload, e.g. "WIFI:T:WPA;S:MyNetwork;P:secret;H:false;" for qrType "wifi".
PDF, Image и Video
qrType: "pdf", "image" или "video". Инструкции для панели управления: PDF, Image, Video.
Один файл на QR-код: наборы PDF и галереи изображений в API недоступны. См. Не поддерживается в API.
fileId, см. в разделе Файлы.
vCard
qrType: "vcard". Инструкция для панели управления: QR-код vCard.
Лендинг и редактор распознают только перечисленные ниже формы строк. Другие варианты, например
TEL;CELL: или EMAIL;TYPE=INTERNET:, сохраняются, но на странице не отображаются.
N:<last>;<first>;;;: фамилия и имя. Конструктор: оба обязательны, до 40 символов.FN:<first> <last>: страница его не читает. Из него берётся подпись в списке панели управления.ORG:<company>иTITLE:<role>: компания и должность. Конструктор: до 40 символов.TEL;TYPE=HOME:,TEL;TYPE=CELL:,TEL;TYPE=WORK:,TEL;TYPE=FAX:: номера телефона, мобильного, рабочего и факса (+и цифры).EMAIL:<email>: адрес электронной почты.URL:<url>: сайт.NOTE:<text>: описание. Экранируйте\\,\n,\;и\,. Конструктор: до 200 символов.ADR:;;<street>;<city>;<state>;<zip>;<country>: адрес.X-SOCIALPROFILE;TYPE=<platform>:<url>илиURL;TYPE=<PLATFORM>:<url>: ссылки на соцсети, по одной строке на платформу.PHOTO;VALUE=URI:<url>: URL изображения профиля. Имеет приоритет над любым ID файла.X-GETQR-IMAGE-FILEID:<fileId>: изображение профиля (targetlogo).X-GETQR-PAGE-LOGO-FILEID:<fileId>: логотип страницы (targetlogo).X-GETQR-LANDING-THEME:p|<0-4>илиX-GETQR-LANDING-THEME:c|#RRGGBB|#RRGGBB|#RRGGBB: тема лендинга — либо индекс готовой темы (от 0 до 4), либо свои цвета фона, кнопок и иконок.
facebook, whatsapp, instagram, youtube, tiktok, messenger, snapchat, linkedin, x, reddit, pinterest, telegram, wechat, viber, line.
Тело запроса
422 Expected a vCard payload starting with "BEGIN:VCARD" for qrType "vcard".
Social Media
qrType: "social". Инструкция для панели управления: QR-код Social Media.
Поля в
data:
Тело запроса
422 Expected a JSON object describing the social profile page for qrType "social".
Multi-Link
qrType: "multilink". Инструкция для панели управления: QR-код Multi-Link.
Поля в
data такие же, как у Social Media, но вместо firstName, lastName и summary используются:
В
customItems поле logoFileId необязательно: показывается запасная иконка. Конструктор: нужна хотя бы одна ссылка на соцсеть или один непустой свой элемент.
Тело запроса
422 Expected a JSON object describing the multi-link page for qrType "multilink".
Event
qrType: "event". Инструкция для панели управления: QR-код Event.
Поля в
data:
Типы событий
Типы событий
conference, seminar, workshop, training, webinar, meetup, networking, corporateEvent, productLaunch, tradeShow, jobFair, fundraiser, charity, wedding, engagement, birthday, anniversary, babyShower, graduation, reunion, party, religious, funeralMemorial, ceremony, concert, festival, clubNight, theater, comedy, filmScreening, exhibition, sports, tournament, raceMarathon, fitnessClass, foodDrink, market, openHouse, community, schoolEvent, kids, travelTourУдобства
Удобства
Тело запроса
422 Expected a JSON object describing the event page for qrType "event".
Файлы в QR-кодах
Зарегистрируйте файл через Файлы, загрузите его, затем передайте егоfileId. Используйте target, который соответствует назначению файла:
pdf,image,video. Содержимое QR-кода PDF, Image или Video.logo. Изображения профиля, логотипы страниц, иконки своих ссылок и логотипы в центре кода.
fileId возвращаются при создании и при PATCH, если передан fileId:
ID файлов внутри данных (
fileId, pageLogoFileId, customItems[].logoFileId, строки X-GETQR-*-FILEID) не проверяются. Они отображаются, только если загружены с target logo. QR-код закрепляет их за собой, поэтому очистка их не трогает.
Смена типа
qrType можно изменить через Обновление QR-кода. Передайте data, подходящее для нового типа: сохранённые данные относятся к старому типу, поэтому смена без них отклоняется.
После обновления адрес назначения определяется в таком порядке:
vcard,social,multilink,event: всегда размещённая страница.- Набор PDF или галерея изображений, созданные в панели управления: их лендинг.
pdf,image,video: URL файла (новыйfileId, иначе сохранённый).link.url, если передан.- Изменённое
data. - Сохранённый URL.
- Из
pdf,imageилиvideo.fileId, а также набор или галерея очищаются. - В
pdf,imageилиvideo. Передайте иfileId, иначе будет повторно использован сохранённый, а это может быть фото vCard. - Из
app. Название приложения,link.iosиlink.androidочищаются, поэтому телефоны переходят на новый адрес назначения. - В
wifi. Изображение начинает кодировать исходные данные. Уже напечатанные коды по-прежнему содержат короткую ссылку, которая теперь перенаправляет на URLwifi:. - Из
wifi. Напечатанные коды сохраняют старую сеть. - В
vcard,social,multilinkилиevent. Короткая ссылка начинает вести на новую размещённую страницу. - Из
vcard,social,multilinkилиevent. Передайте новоеdata. Адрес назначения определяется по нему.
link.url возвращает 422.
Не поддерживается в API
Эти возможности панели управления не входят в API v1. Неизвестные поля отбрасываются без ошибки, поэтому их передача ни на что не влияет.
Наборы и галереи, созданные в панели управления, по-прежнему можно читать, приостанавливать и удалять через API, но изменить их файлы через него нельзя.
Частые проблемы
422 Invalid destination URL
422 Invalid destination URL
link.url использует схему, на которую короткая ссылка не может перенаправить, например geo:, smsto:, matmsg: или tel:. Используйте форматы с этой страницы.400 Missing destination URL
400 Missing destination URL
data пустое, и link.url нет. Для app задайте хотя бы одно из link.ios, link.android, link.url или data.В data ответа короткая ссылка, а не мой URL
В data ответа короткая ссылка, а не мой URL
Для типов-ссылок в сохранённом
data находится короткая ссылка. Адрес назначения читайте из url.На лендинге не хватает данных из моего запроса
На лендинге не хватает данных из моего запроса
Страница читает только поля и формы строк, перечисленные для типа. Другие поля сохраняются, но не отображаются.