SDK 提供予定
Python と TypeScript のクライアントは、API と同じソースから生成されるため、実際の挙動から乖離しようがありません。まだ公開はしていません。先に API の契約が固まる必要があります。
なぜ待つのか
どちらのクライアントも、OpenAPI ドキュメントを生成するのと同じ定義から生成されます。手作業でメンテナンスされる SDK は 2 リリースで API から取り残され、そのずれは、当社側ではなくお客様側のコードが壊れるまで見えません。
これは同時に、API サーフェスが安定した瞬間、どちらかが遅れることなく両言語が同時に揃うことも意味します。
確定済みのスコープ
想定している形 提供予定
実物ができる前に、自分たちのコードベースに合うかを判断できるよう、いま公開しています。
from untactit import Client
c = Client(token="YOUR_TOKEN")
for a in c.assets.list(layer="company", status="live"):
print(f"{a.name} v{a.version} -> {a.targets}")
draft = c.assets.get("pricing-objection-handler")
c.assets.propose(draft.id, note="Updated Q3 pricing")
import { Untactit } from "untactit-sdk";
const c = new Untactit({ token: process.env.TOKEN! });
const assets = await c.assets.list({
layer: "company",
status: "live",
});
3 つのパターンで大半をカバーできます。いずれも十数行以内です。
リリースパイプラインの一部として昇格と配信を行い、エージェントへの指示を、それに依存するコードと一緒に出荷できます。
監査エンドポイントを定期的に取得し、セキュリティチームが普段見ている場所へ転送します。これは素の HTTP だけで、今日から実現できます。
部門別のカバレッジ、プラットフォーム別のドリフト、半年間誰も触れていないアセット。チームが本当に必要としているビューです。
API は HTTPS 上の素の REST なので、どの HTTP クライアントでも動作しますし、今後も変わりません。当社が Python と TypeScript をメンテナンスするのは、自社のツーリングがこの 2 つを使っているからです。自分たちで動かさないクライアントの保守は、テストしないものを出荷することと同じです。
Go・Ruby・Rust のクライアントをここに掲載してほしい場合は、 [email protected]までご連絡ください。こちらでリンクを掲載し、API の変更はリリース前にお知らせします。