API GetQR перебуває в бета-версії та доступний для окремих робочих просторів. До загального релізу деталі можуть змінитися.
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.На лендінгу бракує деяких даних із мого запиту
На лендінгу бракує деяких даних із мого запиту
Сторінка читає лише поля й форми рядків, наведені для типу. Інші поля зберігаються, але не відображаються.