本ガイドは クイックスタート で
$LYMO_KEY・$LYMO_BASE・$VIDEO を設定済みであることを前提とします。$LYMO_BASE は /platform までで、バージョン付きパスは /v1 配下です。POST /v1/videos/:id/analyses— 動画を分析POST /v1/deals/:id/scorings— 案件をスコアリング
201 と status: "processing"、および安定した id を返します。完了はリソースをポーリングするか、Webhook を購読して取得してください。
ライフサイクル
ステータス値
外部ステータスは、内部ワークフローの複数の状態を 3 値に集約したものです。| ステータス | 意味 |
|---|---|
processing | キュー投入済み、または処理中 |
completed | 正常終了。result に結果が格納される |
failed | 終端的な失敗。error: { code, message } が付与される |
completed または failed に到達したリソースは、それ以上遷移しません。
完了結果の読み取り
分析やスコアリングがcompleted になると、同じ GET エンドポイントのレスポンスに result フィールドが加わります。フィールドごとの完全なスキーマは APIリファレンス タブを参照してください。概要は以下のとおりです。
- 分析(Analyses) —
resultには要約セクション、チェックリスト評価(組織で有効な場合)、検出された営業イベントが含まれます。個別に取得したい場合はGET /v1/videos/:id/summary、.../checklist、.../eventsを使ってください。 - スコアリング(Scorings) —
resultには案件に対して算出されたスコア因子が含まれます。GET /v1/deals/:idでも同じ因子を参照できます。
failed の場合は result の代わりに error: { code, message } が入ります。code は機械判読用の安定した文字列で、switch で分岐できます。message は人間向けの説明で、バージョン間で変わる可能性があります。
エンドツーエンドの処理時間は通常、分単位の範囲です。ポーリング間隔は 5〜10 秒で十分です。処理が本当に詰まった場合は内部のタイムアウトで failed に遷移するため、API 側がリソースを永遠に processing のままにすることはありません。
ポーリング
429 レスポンスには Retry-After ヘッダーが付くので、即時再試行せず必ずこれに従ってください。
冪等性
POST リクエストではIdempotency-Key ヘッダーを受け付けます。最初の 2xx レスポンスは 24 時間キャッシュされ、キーは (組織, メソッド, パス, キー, ボディハッシュ) の組で管理されます。再送時は同じレスポンスがそのまま返されます。
ポーリングの代わりに購読する
本番ワークロードでは Webhook を登録して Lymo からの通知を受け取るのが推奨です。video.analysis.completedvideo.analysis.failed
案件スコアリング系イベント(
deal.scoring.completed・deal.scoring.failed)は、SDK の型を安定させる目的でスキーマには定義されていますが、配信側はまだ実装されていません。現時点で購読しても通知は届きません。将来のリリースで有効化予定です。