REFERENCE
開発者リファレンス
認証、API、SDK、Flow Agent のプロセッサ、パラメータ解決のリファレンスです。
SDK 概要
Asgard SDK のインストール、設定、クイックスタート
Asgard は JavaScript と React の公式 SDK を提供しています。低レベルな API の詳細を自分で扱わずに、チャットボット機能を組み込めます。
SDK が提供するもの
- API アクセスの簡素化: REST リクエストをラップし、認証とエンドポイント設定を一箇所にまとめます
- SSE ストリームの処理: Server-Sent Events を自動で処理し、ボットの応答を生成されたそばから受け取れます
- Channel の管理: セッションの永続化が組み込まれており、複数ターンの対話に対応します
- React コンポーネント:
@asgard-js/reactがすぐ使えるチャット UI とフックを同梱しています
クイックスタート
次の例は
@asgard-js/coreの低レベル API でメッセージを送り、ストリーミング応答を受け取るものです。import { AsgardServiceClient, Channel, Conversation } from '@asgard-js/core';
const client = new AsgardServiceClient({
botProviderEndpoint:
'https://api.asgard-ai.com/ns/{namespace}/bot-provider/{botProviderId}',
});
const conversation = new Conversation({ messages: new Map() });
const channel = await Channel.reset({
client,
customChannelId: 'channel-123',
conversation,
statesObserver: (states) => {
console.log('Messages:', Array.from(states.conversation.messages.values()));
},
});
await channel.sendMessage({ text: 'こんにちは、自己紹介をお願いします' });React を使う場合は
<Chatbot>コンポーネントから始めるのが簡単です。import { Chatbot } from '@asgard-js/react';
import '@asgard-js/react/style';
export default function App() {
return (
<div style={{ height: '100vh' }}>
<Chatbot
title="マイ AI アシスタント"
customChannelId="user-123"
config={{
botProviderEndpoint:
'https://api.asgard-ai.com/ns/{namespace}/bot-provider/{botProviderId}',
}}
/>
</div>
);
}SDK と REST API 直接呼び出しの比較
機能 SDK REST API SSE ストリームの処理 自動 自前で実装 認証 初期化時に一度設定すれば自動付与 リクエストごとにヘッダーを付与 Channel の管理 セッション永続化が組み込み済み channelIdを自前で保持React 連携 フックとコンポーネントを提供 自前でラップ エラー処理 統一されたエラーインターフェース 種類ごとに自前で解析 TypeScript 対応 完全な型定義 自前で型を定義 関連ドキュメント
- JavaScript SDK リファレンス —
@asgard-js/coreの全 API - React SDK リファレンス —
@asgard-js/reactのコンポーネントとフック - SDK Demo — SDK の各機能を実際に動かせるサンプル(メッセージテンプレート、テーマ、認証、headless での利用など)
- SDK Demo — 統合の全体像 — ボットの作成からフロントエンド公開までの一連の流れ
- JavaScript SDK リファレンス —
GitHub
ソースコードと最新版: asgard-ai-platform/asgard-js-sdk