L’API GetQR est en version bêta et réservée à certains espaces de travail. Certains détails peuvent changer avant la disponibilité générale.
qrType, et ce type détermine ce que data doit contenir. Ce guide présente le format de chaque type, un corps de requête qui fonctionne, et ce que vous pouvez encore modifier une fois le code imprimé.
Les exemples sont des corps de requête pour Créer un QR code. Envoyez-les ainsi :
Aperçu de tous les types
Comment un QR code est résolu
Chaque QR code est un lien court associé à un payload. Deux champs portent le contenu :
Règles valables pour tous les types :
- Valeurs par défaut. À la création, un
link.urlomis ou vide prend la valeur dedata, et vous pouvez omettre tout l’objetlink. Si les deux sont envoyés et diffèrent,link.urll’emporte. Envoyez-les identiques, ou n’envoyez quedata. - Ce qu’encode l’image. L’image encode le lien court pour tous les types sauf
wifi. Vous pouvez donc changer la destination d’un code imprimé, et ses scans sont suivis. Un QR code WiFi encode le réseau lui-même : vous ne pouvez pas le modifier après impression, et ses scans ne sont pas suivis. - Schémas.
link.urln’accepte quehttp:,https:,wifi:,mailto:,sms:etbegin:. Tout autre schéma, y comprisgeo:,smsto:,matmsg:ettel:, renvoie422 Invalid destination URL, même là oùdatal’accepte. - Données vides. Un
datavide saute la vérification du type. Pour un type de redirection,link.urldoit alors être défini, sinon l’appel renvoie400 Missing destination URL. - Structure. Au-delà de la vérification du type, le serveur ne valide pas le payload. Un type JSON doit seulement être analysable comme un objet JSON, et une vCard doit seulement commencer par
BEGIN:VCARD.
Website
qrType : "website". Guide du tableau de bord : QR code Website.
Request body
422 Expected an http(s) URL, e.g. "https://example.com" for qrType "website".422 Invalid destination URL
Feedback
qrType : "feedback". Guide du tableau de bord : QR code Feedback.
data est l’URL http(s) du formulaire d’avis, par exemple un Google Form ou une page d’avis. Tout le reste fonctionne comme pour Website.
Request body
Payment
qrType : "payment". Guide du tableau de bord : QR code Payment.
data est l’URL de paiement du prestataire, par exemple :
paypal.me, paypal.com/paypalme, cash.app, venmo.com, buy.stripe.com, stripe.com, square.link et payoneer.com. Pour PayPal, le montant est le dernier segment du chemin. Toute autre URL http(s) fonctionne aussi, mais l’éditeur ne la décompose pas en prestataire et montant. Tout le reste fonctionne comme pour Website.
Request body
qrType : "whatsapp". Guide du tableau de bord : QR code WhatsApp.
data est un lien wa.me : le numéro international en chiffres sans +, éventuellement avec un texte prérempli.
api.whatsapp.com/send. Tout le reste fonctionne comme pour Website.
Request body
Location
qrType : "location". Guide du tableau de bord : QR code Location.
data est une URL de carte. Utilisez ce format pour que le QR code reste modifiable dans le tableau de bord (query_place_id est facultatif) :
geo: passe la vérification de data mais est refusée comme destination : ne l’utilisez pas. Tout le reste fonctionne comme pour Website.
Request body
App Link
qrType : "app". Guide du tableau de bord : QR code App Link.
Request body
422 Invalid URL400 Missing destination URL
qrType : "email". Guide du tableau de bord : QR code Email.
Request body
422 Expected a mailto URI, e.g. "mailto:[email protected]?subject=Hello" for qrType "email".
SMS
qrType : "sms". Guide du tableau de bord : QR code SMS.
Request body
422 Expected an SMS URI, e.g. "sms:+14155550123?body=Hello" for qrType "sms".
WiFi
qrType : "wifi". Guide du tableau de bord : QR code WiFi.
Request body
422 Expected a Wi-Fi payload, e.g. "WIFI:T:WPA;S:MyNetwork;P:secret;H:false;" for qrType "wifi".
PDF, Image et Video
qrType : "pdf", "image" ou "video". Guides du tableau de bord : PDF, Image, Video.
Un fichier par QR code : les lots de PDF et les galeries d’images ne sont pas disponibles via l’API. Consultez Non pris en charge par l’API.
fileId, consultez Fichiers.
vCard
qrType : "vcard". Guide du tableau de bord : QR code vCard.
La page de destination et l’éditeur ne lisent que les formes de lignes ci-dessous. Les autres variantes, comme
TEL;CELL: ou EMAIL;TYPE=INTERNET:, sont stockées mais n’apparaissent pas sur la page.
N:<last>;<first>;;;: nom et prénom. Builder : les deux obligatoires, jusqu’à 40 caractères.FN:<first> <last>: non lu par la page. Le libellé dans la liste du tableau de bord en provient.ORG:<company>etTITLE:<role>: entreprise et fonction. Builder : jusqu’à 40 caractères.TEL;TYPE=HOME:,TEL;TYPE=CELL:,TEL;TYPE=WORK:,TEL;TYPE=FAX:: numéros de téléphone, de mobile, professionnel et de fax (+et chiffres).EMAIL:<email>: adresse e-mail.URL:<url>: site web.NOTE:<text>: résumé. Échappez\\,\n,\;et\,. Builder : jusqu’à 200 caractères.ADR:;;<street>;<city>;<state>;<zip>;<country>: adresse.X-SOCIALPROFILE;TYPE=<platform>:<url>ouURL;TYPE=<PLATFORM>:<url>: liens de réseaux sociaux, une ligne par plateforme.PHOTO;VALUE=URI:<url>: URL de l’image de profil. L’emporte sur tout ID de fichier.X-GETQR-IMAGE-FILEID:<fileId>: image de profil (ciblelogo).X-GETQR-PAGE-LOGO-FILEID:<fileId>: logo de la page (ciblelogo).X-GETQR-LANDING-THEME:p|<0-4>ouX-GETQR-LANDING-THEME:c|#RRGGBB|#RRGGBB|#RRGGBB: thème de la page de destination, soit l’index d’un thème prédéfini (0 à 4), soit des couleurs personnalisées d’arrière-plan, de bouton et d’icône.
facebook, whatsapp, instagram, youtube, tiktok, messenger, snapchat, linkedin, x, reddit, pinterest, telegram, wechat, viber, line.
Request body
422 Expected a vCard payload starting with "BEGIN:VCARD" for qrType "vcard".
Social Media
qrType : "social". Guide du tableau de bord : QR code Social Media.
Champs de
data :
Request body
422 Expected a JSON object describing the social profile page for qrType "social".
Multi-Link
qrType : "multilink". Guide du tableau de bord : QR code Multi-Link.
Les champs de
data sont ceux de Social Media, sauf que firstName, lastName et summary sont remplacés par :
Dans
customItems, logoFileId est facultatif : une icône par défaut s’affiche. Builder : au moins un lien social ou un élément personnalisé non vide.
Request body
422 Expected a JSON object describing the multi-link page for qrType "multilink".
Event
qrType : "event". Guide du tableau de bord : QR code Event.
Champs de
data :
Types d'événement
Types d'événement
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Équipements
Équipements
Request body
422 Expected a JSON object describing the event page for qrType "event".
Fichiers dans les QR codes
Enregistrez un fichier avec Fichiers, importez-le, puis transmettez sonfileId. Utilisez la cible qui correspond à l’usage :
pdf,image,video. Le contenu d’un QR code PDF, Image ou Video.logo. Images de profil, logos de page, icônes de liens personnalisés et logos centraux.
fileId, renvoyées à la création et sur PATCH quand fileId est envoyé :
Les ID de fichiers à l’intérieur d’un payload (
fileId, pageLogoFileId, customItems[].logoFileId, lignes X-GETQR-*-FILEID) ne sont pas validés. Ils ne s’affichent que s’ils ont été importés avec la cible logo. Le QR code se les approprie, le nettoyage ne les touche donc pas.
Changer de type
Vous pouvez changerqrType avec Modifier un QR code. Envoyez un data qui correspond au nouveau type : le payload stocké appartient à l’ancien type, donc un changement sans lui est refusé.
Après une mise à jour, la destination est déterminée dans cet ordre :
vcard,social,multilink,event: toujours la page hébergée.- Un lot de PDF ou une galerie d’images créé dans le tableau de bord : sa page de destination.
pdf,image,video: l’URL du fichier (un nouveaufileId, sinon celui stocké).link.url, s’il est envoyé.- Le
datamodifié. - L’URL stockée.
- Depuis
pdf,imageouvideo.fileIdet tout lot ou galerie sont effacés. - Vers
pdf,imageouvideo. Envoyez aussifileId, sinon celui stocké est réutilisé, et il peut s’agir d’une photo de vCard. - Depuis
app. Le nom de l’application,link.iosetlink.androidsont effacés, pour que les téléphones suivent la nouvelle destination. - Vers
wifi. L’image passe au payload brut. Les codes déjà imprimés contiennent toujours le lien court, qui redirige désormais vers une URLwifi:. - Depuis
wifi. Les codes imprimés gardent leur ancien réseau. - Vers
vcard,social,multilinkouevent. Le lien court pointe vers la nouvelle page hébergée. - Depuis
vcard,social,multilinkouevent. Envoyez le nouveaudata. La destination le suit.
link.url renvoie donc 422.
Non pris en charge par l’API
Ces fonctionnalités du tableau de bord ne font pas partie de l’API v1. Les champs inconnus sont ignorés sans erreur, les envoyer n’a donc aucun effet.
Les lots et galeries créés dans le tableau de bord peuvent toujours être lus, mis en pause et supprimés via l’API, mais leurs fichiers ne peuvent pas être modifiés par ce biais.
Problèmes courants
422 Invalid destination URL
422 Invalid destination URL
link.url utilise un schéma vers lequel le lien court ne peut pas rediriger, comme geo:, smsto:, matmsg: ou tel:. Utilisez les formats de cette page.400 Missing destination URL
400 Missing destination URL
data est vide et il n’y a pas de link.url. Pour app, définissez au moins un champ parmi link.ios, link.android, link.url ou data.La valeur data de la réponse est un lien court, pas mon URL
La valeur data de la réponse est un lien court, pas mon URL
Pour les types de lien, le
data stocké est le lien court. Lisez la destination dans url.La page de destination n'affiche pas certains détails de mon payload
La page de destination n'affiche pas certains détails de mon payload
La page ne lit que les champs et formes de lignes listés pour le type. Les autres champs sont stockés mais pas affichés.