GET /intent)を使用してください。
必要なスコープ
API キーにはsr:v2:create と sr:v2:read に加えて media:v2:private-read が必要です。組織でプライベートメディアが有効になると、Legitmark がこのスコープを付与します。
以下のすべての呼び出しで同じ leo_ キーを送信してください。
media:v2:private-read がない場合、プライベート CDN 組織では GET /api/v2/sr/{sr_uuid} の media_url は空配列、certificate_url は null になります。
統合ステップ
公開パートナー API と同じ流れです。違いは 2 点です。/intent を呼ばないこと、すべてのメディア URL を短命として扱うことです。
1
サービスリクエストを作成
通常のボディで
POST /api/v2/sr?sides=true&item=true を leo_ キー付きで呼び出します。sides=true&item=true を付けると、必須 / 任意の写真リストがレスポンスに含まれるため、アップロード前に再度取得する必要はありません。API リファレンス: POST /api/v2/sr2
写真をアップロード
すべてのサイドに対して
POST /api/media/signed-urls/{sr_uuid} を 1 回呼び、返ってきた signed_url に画像を PUT します。GET /intent は呼び出さないでください。3
写真を読み取る
同じキーで
GET /api/v2/sr/{sr_uuid}?item=true&sides=true を呼び出します。media_url(summary=true の場合は summary.thumbnail も)は、約 15 分間有効な署名付きプライベート CDN リンクです。4
証明書を読み取る
最新の Get Full SR の
certificate_url を使います。Access Denied または 403 が返ったら再取得してください。ダッシュボードの Download certificate からも再発行できます。写真のアップロード
GET https://asset.legitmark.com/intent(および開発・ステージングのアセットホスト)は呼び出さないでください。この経路は公開バケットに書き込み、プライベート組織のアップロードをルーティングできません。
すべてのサイドのアップロード URL を 1 回の呼び出しで取得し、各 URL に画像バイトを PUT します。
API リファレンス: POST /api/media/signed-urls/{sr_uuid}
レスポンス
TypeScript SDK は現在も
GET /intent を使用します。プライベート CDN の組織は、SDK が更新されるまで HTTP で POST /api/media/signed-urls/{sr_uuid} を呼び出してください。ブラウザからのアップロード(CORS)
倉庫アプリや Web アプリがブラウザから画像をPUT する場合、S3 がそのページのオリジンを許可している必要があります。アップロードオリジンをすべて Legitmark に共有してください(完全一致のオリジンと https://*.example.com ワイルドカード)。組織で既に許可されているオリジンはそのまま使えます。PUT で CORS エラーが出た場合は新しいオリジンの追加が必要です。/intent にフォールバックしないでください。
写真の読み取り
同じ API キーでサービスリクエストを取得します。media_url はプライベート CDN ホスト上の CloudFront 署名付きリンクです。
API リファレンス: GET /api/v2/sr/{sr_uuid}
Expires、Key-Pair-Id、Signatureを URL から外さないでください。クエリ文字列を削除すると403になります。summary=trueのときのsummary.thumbnailも同じ方法で署名されます。- 以前のテストで使った公開の
cdn.legitmark.comリンクでは、これらの写真は配信されません。
証明書
最新のGET /api/v2/sr/{sr_uuid} の certificate_url は、同じプライベートホスト上の署名付き PDF リンクです。その URL を使用してください。Access Denied または 403 が返った場合は署名の期限切れです。もう一度 GET して新しい URL を使ってください。
ダッシュボード(https://app.legitmark.com または開発・ステージングのアプリホスト)の Download certificate からも新しいリンクを再発行できます。
以前保存した証明書リンクを再利用しないでください。
URL の有効期限
署名付き読み取り URL は発行時点から 15 分 有効です(expires_in のデフォルトは 900 秒)。
- 署名付き URL をデータベースに保存したり、キャッシュしたりしないでください。
- 署名付き URL を恒久的な共有リンクとしてログや転送に使わないでください。URL を持っている人は期限までオブジェクトを取得できます。
- 写真や証明書を表示・ダウンロードするたびに、
GET /api/v2/sr/{sr_uuid}を再実行してください。 - 期限切れまたは署名なしの URL は
403を返します。これは想定どおりの動作です。新しい URL を取得してください。
state_change を受け取ったら、写真や証明書が必要な場合は SR を取得してください。
公開シェアページ
公開シェアページには、プライベート CDN 組織の写真は表示されません。これは意図した動作です。写真と証明書は、API キー付きのパートナー API 経由でのみ利用できます。環境
{org} は Legitmark が組織向けにプロビジョニングしたホスト名に置き換えてください。CDN ホストを自分で組み立てず、API が返す URL を使用してください。
画像要件
公開ワークフローと同じです。- 形式: JPG/JPEG/PNG
- サイズ: 最小 600 x 600 ピクセル
- ファイルサイズ: 画像あたり最大 5 MB
- 品質: 鮮明で、十分な照明、ピントが合った画像