Devin v1 API、セッション作成の再試行で重複を防ぎやすく
セッション作成を再送しても重複を避けやすくなりました。v1 Sessions APIに同じ作成要求を識別する`idempotency_key`が追加され、同じキーなら作成済みの元セッションを返し、作成中は409を返します。
AT A GLANCE
まず知りたいこと
MAIN CHANGE
一番大きい変化
同じセッション作成要求を再送しても、重複を避けやすくなりました。Devinのv1 Sessions APIでは、同じ要求を識別する`idempotency_key`を使い、作成済みなら元のセッションを返します。
KEY POINTS
このリリースの注目点
同じキーの再送ではセッションを増やさない
同じ`idempotency_key`を付けてセッション作成を再送すると、すでに作成済みなら元のセッションが返ります。
作成中なら409で再試行を待てる
同じキーのセッション作成がまだ進行中ならAPIは409を返します。公式Release Notesは、呼び出し側が少し待ってから再試行できると案内しています。
BENEFIT
ここがいい
同じセッション作成要求を再送する必要がある場面でも、作成済みなら元のセッションを使い、作成中なら待って再試行できるため、重複したセッションを作るリスクを下げられます。
RELEVANT TO
こんな人に関係する
- Devin v1 APIからセッションを自動作成している人
- キューやバックエンド処理でAPI再試行を実装しているチーム
従来のオン・オフ指定idempotentは非推奨になりました。今回のRelease Notesは削除日や、この旧指定からの期限付き移行を示していません。
この機能の対象はv1 Sessions APIです。現在のDevin APIドキュメントではv1を旧APIとして非推奨とし、v3への移行を推奨しています。移行ガイドでは、セッション作成の移行先をPOST /v3/organizations/{org_id}/sessionsと示しています。既存のv1連携で再試行を扱いやすくする変更であり、新しい連携でv1の採用を勧めるものではありません。