TypeScript SDK
リポジトリのSDKで型付きの読み取り、変更の確定、ローカルファイルのアップロードを行います。
@influence/app-sdkは現在、リポジトリ内の非公開パッケージです。npmから公開インストールできるパッケージではありません。以下の例には、開発ワークスペース内でこのパッケージが利用できる必要があります。独立したクライアントにはHTTP APIを使ってください。
信頼できるオリジンを明示し、プロセスのシークレット環境からキーを読み込みます:
import { InfluenceClient } from "@influence/app-sdk/client";
const accessToken = process.env.PUBLISH_API_TOKEN;
if (!accessToken) throw new Error("PUBLISH_API_TOKEN");
const client = new InfluenceClient({
baseUrl: "https://influence.so",
accessToken,
});
const catalog = await client.listTools();
const accounts = await client.callTool("accountList", {});
console.log(catalog.tools, accounts.output);
listTools()でツールを検出し、callTool(name, input)で読み取ります。変更にはprepareTool(name, input)、続いてconfirmTool(name, input, confirmationCapability, { idempotencyKey })を使います。結果が不明な場合は同じ値を保持してください。SDKはリクエストとレスポンスを検証し、HTTPやツールの失敗時にInfluenceSdkErrorをスローします。
uploadMedia(file, { clientKey, name, contentType, sizeBytes })はBlobを受け取り、確認を伴う分割転送を処理します。再試行には同じファイルとclientKeyを使います。アセットの準備が整うまでmediaUploadGetで状態を確認してください。処理中のアップロードは公開できる状態ではありません。レビューと再試行のルールに従ってください。