GetQR API はベータ版で、一部のワークスペースでのみご利用いただけます。正式リリースまでに内容が変更される場合があります。
qrType があり、その種類によって data に入れる内容が決まります。このガイドでは、すべての種類について形式、そのまま使えるリクエストボディ、印刷後に変更できる内容を説明します。
例は QR コードの作成 のリクエストボディです。次のように送ります。
すべての種類の一覧
QR コードの解決のしくみ
すべての QR コードは、短縮リンクとペイロードの組み合わせです。内容を持つフィールドは 2 つあります。
すべての種類に共通するルール:
- 既定値。 作成時に
link.urlを省略するか空にすると、dataが使われます。linkオブジェクト全体を省略してもかまいません。両方を送って値が異なる場合は、link.urlが優先されます。同じ値を送るか、dataだけを送ってください。 - 画像に埋め込まれる内容。
wifi以外のすべての種類で、画像には短縮リンクが埋め込まれます。そのため、印刷したコードのリンク先を変更でき、スキャンも計測されます。WiFi QR コードはネットワーク情報そのものを埋め込むため、印刷後は変更できず、スキャンも計測されません。 - スキーム。
link.urlが受け付けるのはhttp:、https:、wifi:、mailto:、sms:、begin:だけです。それ以外(geo:、smsto:、matmsg:、tel:を含む)は、dataでは受け付けられる場合でも422 Invalid destination URLになります。 - 空の data。
dataが空の場合、種類のチェックは行われません。その場合、リダイレクト型の種類ではlink.urlを指定する必要があり、指定しないと400 Missing destination URLが返ります。 - 形。 種類のチェック以外に、サーバーはペイロードを検証しません。JSON 型の種類は JSON オブジェクトとしてパースできればよく、vCard は
BEGIN:VCARDで始まっていれば十分です。
Website
qrType: "website"。ダッシュボードのガイド:Website QR コード。
Request body
422 Expected an http(s) URL, e.g. "https://example.com" for qrType "website".422 Invalid destination URL
Feedback
qrType: "feedback"。ダッシュボードのガイド:Feedback QR コード。
data はフィードバックフォームの http(s) URL です。たとえば Google フォームやレビューページです。それ以外は Website と同じです。
Request body
Payment
qrType: "payment"。ダッシュボードのガイド:Payment QR コード。
data は決済サービスの支払い URL です。例:
paypal.me、paypal.com/paypalme、cash.app、venmo.com、buy.stripe.com、stripe.com、square.link、payoneer.com。PayPal の場合、金額はパスの最後のセグメントです。その他の http(s) URL も使えますが、ビルダーはサービスと金額に分けて表示しません。それ以外は Website と同じです。
Request body
qrType: "whatsapp"。ダッシュボードのガイド:WhatsApp QR コード。
data は wa.me リンクです。+ を付けない数字だけの国際電話番号で、必要に応じて事前入力テキストを付けます。
api.whatsapp.com/send のリンクも読み取ります。それ以外は Website と同じです。
Request body
Location
qrType: "location"。ダッシュボードのガイド:Location QR コード。
data は地図の URL です。ダッシュボードで QR コードを編集できる状態に保つには、次の形式を使います(query_place_id は任意)。
geo: URI は data のチェックを通過しますが、リンク先としては拒否されるので使わないでください。それ以外は Website と同じです。
Request body
App Link
qrType: "app"。ダッシュボードのガイド:App Link QR コード。
Request body
422 Invalid URL400 Missing destination URL
qrType: "email"。ダッシュボードのガイド:Email QR コード。
Request body
422 Expected a mailto URI, e.g. "mailto:[email protected]?subject=Hello" for qrType "email".
SMS
qrType: "sms"。ダッシュボードのガイド:SMS QR コード。
Request body
422 Expected an SMS URI, e.g. "sms:+14155550123?body=Hello" for qrType "sms".
WiFi
qrType: "wifi"。ダッシュボードのガイド:WiFi QR コード。
Request body
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 コード 1 つにつきファイルは 1 つです。PDF バンドルと画像ギャラリーは API では利用できません。API で未対応の機能 をご覧ください。
fileId を取得する方法は、ファイル をご覧ください。
vCard
qrType: "vcard"。ダッシュボードのガイド:vCard QR コード。
ランディングページとビルダーが読み取るのは、以下の行の形式だけです。
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::電話、携帯、勤務先、FAX の番号(+と数字)。EMAIL:<email>:メールアドレス。URL:<url>:Web サイト。NOTE:<text>:概要。\\、\n、\;、\,でエスケープします。ビルダー: 最大 200 文字。ADR:;;<street>;<city>;<state>;<zip>;<country>:住所。X-SOCIALPROFILE;TYPE=<platform>:<url>またはURL;TYPE=<PLATFORM>:<url>:SNS のリンク。プラットフォームごとに 1 行です。PHOTO;VALUE=URI:<url>:プロフィール画像の URL。どのファイル ID よりも優先されます。X-GETQR-IMAGE-FILEID:<fileId>:プロフィール画像(logo用途)。X-GETQR-PAGE-LOGO-FILEID:<fileId>:ページのロゴ(logo用途)。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。
Request body
422 Expected a vCard payload starting with "BEGIN:VCARD" for qrType "vcard".
Social Media
qrType: "social"。ダッシュボードのガイド:Social Media QR コード。
data のフィールド:
Request body
422 Expected a JSON object describing the social profile page for qrType "social".
Multi-Link
qrType: "multilink"。ダッシュボードのガイド:Multi-Link QR コード。
data のフィールドは Social Media と同じですが、firstName、lastName、summary の代わりに次のフィールドを使います。
customItems では logoFileId は任意で、ない場合は代替アイコンが表示されます。ビルダー: SNS リンクまたは空でないカスタム項目が 1 つ以上必要です。
Request body
422 Expected a JSON object describing the multi-link page for qrType "multilink".
Event
qrType: "event"。ダッシュボードのガイド:Event QR コード。
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設備
設備
Request body
422 Expected a JSON object describing the event page for qrType "event".
QR コードで使うファイル
ファイル でファイルを登録してアップロードし、そのfileId を渡します。使い道に合った用途を指定してください。
pdf、image、video。 PDF、Image、Video の QR コードのコンテンツ。logo。 プロフィール画像、ページのロゴ、カスタムリンクのアイコン、中央のロゴ。
fileId のエラー(作成時と、fileId を送った PATCH で返ります):
ペイロード内のファイル ID(
fileId、pageLogoFileId、customItems[].logoFileId、X-GETQR-*-FILEID 行)は検証されません。表示されるのは logo 用途でアップロードされた場合だけです。これらは QR コードに紐付けられるため、クリーンアップで削除されることはありません。
種類の切り替え
qrType は QR コードの更新 で変更できます。新しい種類に合った data を送ってください。保存されているペイロードは古い種類のものなので、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へ。 画像は生のペイロードに切り替わります。すでに印刷されたコードには短縮リンクが残り、wifi:URL にリダイレクトするようになります。wifiから別の種類へ。 印刷済みのコードには古いネットワーク情報が残ります。vcard、social、multilink、eventへ。 短縮リンクは新しいホストされたページを指すようになります。vcard、social、multilink、eventから別の種類へ。 新しいdataを送ってください。リンク先はそれに従います。
link.url を変更すると 422 になります。
API で未対応の機能
以下のダッシュボードの機能は、v1 API には含まれていません。不明なフィールドはエラーなしで破棄されるため、送っても効果はありません。
ダッシュボードで作成したバンドルとギャラリーも、API で読み取り、一時停止、削除できます。ただし、そのファイルを 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 のうち少なくとも 1 つを指定してください。レスポンスの data が自分の URL ではなく短縮リンクになっている
レスポンスの data が自分の URL ではなく短縮リンクになっている
リンク型の種類では、保存される
data は短縮リンクです。リンク先は url から読み取ってください。ペイロードの一部がランディングページに表示されない
ペイロードの一部がランディングページに表示されない
ページが読み取るのは、その種類について記載したフィールドと行の形式だけです。それ以外のフィールドは保存されますが、表示されません。