GetQR API はベータ版で、一部のワークスペースでのみご利用いただけます。正式リリースまでに内容が変更される場合があります。
QR コードの種類別データ
16 種類それぞれの
data の形式。カスタマイズ
ドットのスタイル、色、フレーム、ロゴ。
アクセスルール
スケジュール、スキャン上限、パスワード。
QR コードオブジェクト
削除 と ダウンロード を除くすべての QR コードのエンドポイントは、このオブジェクトを返します。一覧ではこのオブジェクトの配列が返ります。string
QR コードの一意な ID。例:
qr_1EPcVfeHZAY2iNoVLsgW2Aqf。string
QR コードの種類。例:
website。16 個の値すべては QR コードの種類別データ をご覧ください。string | null
ダッシュボードに表示される QR コードの名前。
string | null
QR コードについての自由記述のメモ。
string
保存されているペイロード。
wifi、vcard、social、multilink、event、sms では、送ったペイロードそのものです。それ以外の種類では短縮リンクなので、リンク先は url から読み取ってください。boolean
QR コードが一時停止中の場合は
true。boolean
ダッシュボードで作成された、短縮リンクのない静的 QR コードの場合は
true。API が作成するのは常に動的 QR コードです。string | null
短縮リンクの完全な URL。例:
https://getqr.sh/x7Kd2p1。string | null
短縮リンクのドメイン。
string | null
短縮リンクのスラッグ。
boolean
スラッグが自動生成ではなく指定されたものである場合は
true。string | null
短縮リンクのリダイレクト先。
string | null
app QR コードで、iOS の訪問者向けのリンク先。string | null
app QR コードで、Android の訪問者向けのリンク先。integer
スキャンの総数。
string
読み取り専用。
custom は API で完全に編集できるデザインです。branded と ai は、ダッシュボードで作成された Branded design または AI design です。API ではその画像を編集できませんが、他のフィールドを変更しても画像は維持されます。object
保存されているデザイン:
styles、frameOptions、logoOptions。それぞれオブジェクトまたは null です。リクエストのフィールドと同じ形なので、そのまま送り返せます。カスタマイズ をご覧ください。object | null
pdf、image、video の QR コードのファイル:id、name、size(バイト)。string | null
読み取り専用。ダッシュボードで作成された
app QR コードの表示名。object | null
読み取り専用。ダッシュボードで作成された、複数のファイルを持つ
pdf QR コード:title、layout、files。object | null
読み取り専用。ダッシュボードで作成された、複数の画像を持つ
image QR コード:title、layout、files。string
作成日時(ISO 8601)。
string
最終更新日時(ISO 8601)。
password、userId、workspaceId、projectId)は返されません。
QR コードを一覧表示する
GET /api/v1/qrs
ワークスペースの QR コードを 1 ページずつ返します。
integer
デフォルト:"1"
返すページ。1 以上。
integer
デフォルト:"100"
1 ページあたりの QR コードの数。1 から 100 まで。これより大きい値は拒否されます。
string
QR コードのタイトルと照合します。2 文字より長いクエリは、保存されている
data とも照合されます。リンク型の種類では保存されている data は短縮リンクなので、リンク先の URL では検索できません。string
デフォルト:"createdAt"
並べ替えに使うフィールド:
createdAt、updatedAt、clicks(総スキャン数)、lastClicked(最新のスキャン)、type。type は常に降順で並べ替えられ、sortOrder は無視されます。string
デフォルト:"desc"
並べ替えの方向:
asc または desc。boolean
デフォルト:"false"
一時停止中の QR コードも含めます。
boolean
デフォルト:"false"
一時停止中の QR コードだけを返します。
showArchived より優先されます。true または false を指定します。pagination.hasMore が true の間は、次のページをリクエストしてください。ページネーション をご覧ください。
QR コードを作成する
POST /api/v1/qrs
QR コードとその短縮リンクを一緒に作成します。新しい QR コード を 201 Created で返します。
string
必須
QR コードに埋め込む内容。
data の形式もこれで決まります。website、pdf、image、video、whatsapp、social、wifi、app、feedback、vcard、sms、payment、location、multilink、email、event のいずれかです。string
必須
その種類のペイロードで、
qrType に照らして検証されます。空文字列の場合、検証は行われません。各種類の形式は QR コードの種類別データ をご覧ください。object
QR コードが経由する短縮リンク。任意です。省略すると、
link.url は data に従います。string
ダッシュボードに表示される QR コードの名前。前後の空白は除去され、1〜40 文字です。省略すると、QR コードは無題になります。
string
QR コードについての自由記述のメモ。最大 280 文字。
string
pdf、image、video の QR コードのファイル。対応する用途でアップロードします。vcard、social、multilink では、logo 用途でアップロードした任意のプロフィール画像です。event でも受け付けますが、イベントページはカバー画像を data.fileId から読み取ります。それ以外の種類では 422 になります。先に ファイル でファイルをアップロードしてください。QR コードで使うファイル をご覧ください。string
新しい QR コードにデザインを適用する テンプレート。送ったデザインのフィールドは、その上にマージされます。Branded design または AI design のテンプレートは
422(art_template_unsupported)になります。不明なテンプレートや別のワークスペースのテンプレートは 404 になります。object
中央のロゴ。おすすめのロゴ、または
logo 用途でアップロードした独自のファイルです。不明なファイル、アップロードが完了していないファイル、別の用途のファイルは拒否されます。カスタマイズ をご覧ください。boolean
QR コードが一時停止中かどうか。
true にすると一時停止した状態で作成され、スキャンするとリンク先ではなく停止ページが表示されます。再試行と重複
- キーがある場合。
Idempotency-Keyヘッダーがあると、24 時間はレスポンスが再送されます。 - キーがない場合。 30 秒以内に送られた同一のボディは重複として扱われます。
- 再送。 再送では、保存済みのレスポンスが
x-idempotent-replay: true付きで返ります。新しい QR コードの場合はfalseが返ります。 - 処理中。 最初のリクエストの処理中に届いた 2 つ目のリクエストには
409 conflictが返ります。 - 失敗。 作成に失敗するとキーはすぐに解放されるため、同じキーで再試行できます。
- ベストエフォート。 この保護が利用できない場合、作成は保護なしで処理されます。
QR コードを取得する
GET /api/v1/qrs/{qrId}
QR コード を、短縮リンク、アクセスルール、デザイン、およびファイル型の種類ではそのファイルとともに返します。
string
必須
QR コードの ID。一覧または作成のレスポンスから取得します。
QR コードを更新する
PATCH /api/v1/qrs/{qrId}
QR コードのコンテンツ、リンク先、デザイン、アクセスルールを変更します。変更したいフィールドだけを送ってください。更新された QR コード を返します。
string
必須
QR コードの ID。
templateId。 受け付けません。link。 部分的に指定できます。link.urlを省略すると、現在のリンク先が維持されます。link.domainとlink.keyは422になります。印刷されたコードに埋め込まれているのは短縮リンクなので、別の短縮リンクを使うには新しい QR コードを作成してください。data。 結果の種類に照らして検証されるのは、dataまたはqrTypeが変わる場合だけです。対応するdataなしでqrTypeを切り替えると拒否されます。種類の切り替え をご覧ください。- デザイン。
styles、frameOptions、logoOptionsは保存済みのデザインにマージされるため、部分的なオブジェクトは指定した項目だけを変更します。別のロゴを選ぶとロゴは置き換えられますが、サイズは維持されます。 access。 各キーは、指定された場合に適用されます。nullはルールをクリアします。アクセスルールはaccessの下に置きます。linkの下で送ると422になります。archived。 一時停止 や 再開 と同じように、QR コードとその短縮リンクを一緒に一時停止または再開します。
一時停止状態を設定する
PUT /api/v1/qrs/{qrId}
一時停止状態を直接設定します。一時停止 と 再開 でも同じことができ、そちらのほうがわかりやすく読めます。
string
必須
QR コードの ID。
boolean
必須
QR コードを一時停止するには
true、再開するには false。QR コードを一時停止する
POST /api/v1/qrs/{qrId}/pause
QR コードがリンク先に進まないようにします。スキャンすると、代わりに停止ページが表示されます。印刷されたコードとその短縮リンクは有効なままです。リクエストボディはありません。
string
必須
QR コードの ID。
QR コードを再開する
POST /api/v1/qrs/{qrId}/activate
一時停止中の QR コードが再びリンク先に進むようにします。スケジュールとスキャン上限は引き続き適用されます。リクエストボディはありません。
string
必須
QR コードの ID。
QR コードを複製する
POST /api/v1/qrs/{qrId}/duplicate
同じコンテンツとデザインを持つコピーを作成します。リクエストボディはありません。新しい QR コード を 201 Created で返します。
string
必須
コピーする QR コードの ID。
- 短縮リンク。 コピーには独自の短縮リンクが付きます。スラッグはランダムで、ドメインはコピー元のドメインではなく、ワークスペースの既定のドメインです。スキャンは別々にカウントされます。
- タイトル。 タイトルの末尾に
(Copy)が付きます。結果は 40 文字以内に収まり、長いタイトルは先に短縮されます。無題の QR コードは無題のままです。 - コピーされないもの。 アクセスルール(パスワード、スケジュール、スキャン上限)と一時停止状態。コピーは常に有効な状態です。
- ファイル。 PDF と画像のファイル(バンドルとギャラリーのファイルを含む)はコピーされ、コピー側が所有します。動画ファイルと、ロゴなどのデザインファイルはコピー元と共有されます。
QR コードを削除する
DELETE /api/v1/qrs/{qrId}
QR コードとその短縮リンクを削除します。削除された ID を返します。
string
必須
QR コードの ID。
string
削除された QR コードの ID。
boolean
常に
true。QR コードの画像をダウンロードする
GET /api/v1/qrs/{qrId}/download
QR コードをデザインどおりにレンダリングし、ファイルを返します。
string
必須
レンダリングする QR コードの ID。一覧または作成のレスポンスから取得します。
string
デフォルト:"jpg"
出力形式:
jpg、png、svg、pdf(A4 ページ)、eps。Branded design と AI design は jpg、png、pdf でのみダウンロードできます。integer
デフォルト:"1024"
画像のサイズ(ピクセル):
1024、2048、4096。svg と pdf では無視されます。Branded design と AI design は 1024 でのみダウンロードできます。- ボディ。 レスポンスボディはファイルそのものです。推奨ファイル名は
Content-Dispositionヘッダーにあり、タイトルから作られます。無題の QR コードの場合はqr-codeです。 - キャッシュ。 レスポンスには
ETagとCache-Control: private, max-age=3600, must-revalidateが付きます。ETagをIf-None-Matchで送り返すと、QR コードが変更されていない場合に304 Not Modifiedが返ります。 - エラー。 サポートされていない形式や解像度は
400 bad_requestになります。エラーメッセージには理由が示されます:qr_download_invalid_format、qr_download_invalid_resolution、qr_download_art_format_unsupported、qr_download_art_resolution_unsupported。
アクセスルール
作成時または更新時にaccess オブジェクトを送ると、開始と終了の予約、スキャン数の上限、パスワードの要求を設定できます。省略したルールは変更されず、null はルールをクリアします。例を含む詳しい動作は アクセスルール をご覧ください。
デザインオブジェクト
styles、frameOptions、logoOptions は、ドットとコーナーの形、色、フレーム、ロゴを設定します。QR コード、テンプレート、一括作成 で同じように使えます。不明な形、フレーム、ロゴは拒否されます。受け付けるすべての値と実例は カスタマイズ をご覧ください。
よくある問題
パスワード、スケジュール、スキャン上限の設定時に 422 になる
パスワード、スケジュール、スキャン上限の設定時に 422 になる
ルールは
link の下ではなく、access の下で送ってください。link.domain や link.key を変更すると 422 になる
link.domain や link.key を変更すると 422 になる
印刷されたコードには短縮リンクが埋め込まれているため、作成後に短縮リンクは変更できません。代わりに新しい QR コードを作成してください。
422 "Expected … for qrType"
422 "Expected … for qrType"
data が qrType の形式と一致していません。QR コードの種類別データ で種類を確認してください。QR コードの作成時に 409 conflict になる
QR コードの作成時に 409 conflict になる
同一の作成リクエストがまだ処理中か、
link.key が使用済みです。最初のリクエストが終わってから再試行してください。Idempotency-Key を付けていれば、再試行で元の QR コードが返ります。PNG ではなく JPEG でダウンロードされる
PNG ではなく JPEG でダウンロードされる
パラメータは
format と resolution で、format の既定値は jpg です。format=png を送ってください。ダッシュボードで見える QR コードで 404 になる
ダッシュボードで見える QR コードで 404 になる
すべてのリクエストは、API キーのワークスペースで実行されます。QR コードがそのワークスペースに属していることを確認してください。認証 をご覧ください。