Braidrun SDK
12 言語をカバーする 13 のタイプセーフなクライアントで、ワークフロー、実行、成果物、承認、Webhook の API を呼び出せます。
Braidrun SDK は、オープンプラットフォーム API の公式タイプセーフクライアント集です。ワークフロー、実行、成果物、人による承認、Webhook の各エンドポイントを、言語ごとに使い慣れたメソッドとデータモデルで提供するため、HTTP リクエストやレスポンス型を手書きする必要がありません。
対応クライアント
リポジトリには 12 言語をカバーする 13 のクライアント実装があります。各ディレクトリは独立したクライアントで、パッケージメタデータ、API モデル、テスト、その言語向けの完全なエンドポイントドキュメントを収録しています。
サーバーとバックエンド
Web と Node.js
モバイルとクロスプラットフォーム
API の対応範囲
各言語のクライアントは同じ公開機能をカバーし、メソッド名は言語の慣習に合わせて自動変換されます。
| 機能領域 | できること |
|---|---|
| ワークフロー | ワークフローを一覧・取得し、非同期で実行を開始します。 |
| 実行する | 状態、履歴、最終結果を取得するか、実行中の処理をキャンセルします。 |
| 成果物 | 実行によって生成されたファイルと成果物のメタデータを取得します。 |
| 手動承認 | 承認待ち項目を取得し、承認または却下の判断を送信します。 |
| Webhook | Webhook の登録と管理、統計の確認、Webhook によるワークフローの実行を行います。 |
クイックスタート
- 「アカウント設定 → API キー」でキーを作成し、呼び出しに必要なスコープだけを付与します。
- 技術スタックに合うクライアントを選び、そのディレクトリの README を開きます。
- ソースから依存関係をインストールし、環境変数で API Key を設定します。
- API クライアントを作成し、まずワークフロー一覧を呼び出して接続と権限を確認します。
python -m pip install "git+https://github.com/Braidrun/braidrun-sdk.git#subdirectory=python"import os
import braidrun_sdk
configuration = braidrun_sdk.Configuration(
host="https://braidrun.com",
access_token=os.environ["BRAIDRUN_API_KEY"],
)
with braidrun_sdk.ApiClient(configuration) as client:
workflows = braidrun_sdk.WorkflowsApi(client)
result = workflows.list_workflows()
print(result)SDK は現在、GitHub のソースリポジトリから提供しており、各言語のパッケージマネージャーでの公開状況は異なる場合があります。該当ディレクトリの README を参照し、すべてのクライアントが公開パッケージリポジトリに公開済みとは想定しないでください。
認証と権限
dyk_ で始まる API Key は環境変数またはシークレット管理サービスから読み込み、Bearer Header を使用することを推奨します。実際のキーをソースコード、ログ、ブラウザーのフロントエンドに書き込まないでください。各エンドポイントでは対応するスコープが引き続き検証されます。クライアントがタイプセーフでも、権限が自動的に付与されるわけではありません。
SDK には Webhook 管理 API も生成されますが、/api/webhooks 配下の管理エンドポイントはブラウザーセッションまたは管理者サービスアカウントを使用し、通常の細粒度オープンプラットフォーム API Key は受け付けません。Webhook トリガーエンドポイントでは、WEBHOOK_TRIGGER スコープを持つオープンプラットフォームキーを引き続き使用できます。
API が 429 を返した場合は Retry-After に従い、X-RateLimit-Limit と X-RateLimit-Window を使って再試行間隔を調整してください。
SDK とワークフローエンジンの選び方
| プロジェクト | シーンに合わせて | 実行場所 |
|---|---|---|
braidrun-sdk | 言語固有の型とモデルを使い、アプリケーションから Braidrun クラウドプラットフォーム API を呼び出します。 | アプリケーション + Braidrun クラウドプラットフォーム |
braidrun-workflow | 自身の環境で YAML ワークフローを実行するか、Kotlin/JVM プロジェクトにランタイムを組み込みます。 | 自身で管理するローカル、サーバー、CI 環境 |