本文へ移動
◈hastdocs
日本語

AIP

API クイックスタート

AIP でキーを作成し、保存済み Agent の呼び出し、応答の取得、許可された業務リソースへのアクセスを行います。

サーバーから AIP の保存済み Agent を呼び出し、会話の結果を取得します。API キーは AIP ワークベンチで管理し、REST と MCP は同じキーと権限を使用します。詳細は API リファレンスを参照してください。

URL とキーを準備

  1. AIP で対象の Profile(業務上の ID)に切り替えます。Agent を作成してテストし、設定を保存して有効にします。
  2. API キーを管理でキーを作成し、アクセス範囲に単一 Agent の会話を選び、呼び出す Agent を指定します。
  3. メッセージ送信(agent:invoke)を有効にします。会話の読み取り(agent:conversations:read)も含まれ、他の連携で作成されたものを含む、その Agent の全会話履歴を取得できます。
  4. 作成直後に完全なキーをコピーします。後から完全な値を再表示することはできません。

サーバーの端末に環境変数を設定します。以下は本番 URL です。開発環境やセルフホストでは、その環境のバックエンド URL を使用してください。

export HAST_API_BASE='https://backend.hast.so/api/public/v1'
export HAST_API_KEY='<YOUR_SINGLE_AGENT_KEY>'

最初のタスクを送信

curl --fail-with-body --request POST \
  --url "$HAST_API_BASE/agent/prompts" \
  --header "Authorization: Bearer $HAST_API_KEY" \
  --header 'Content-Type: application/json' \
  --data '{"request_id":"message-001","prompt":"あなたの役割と、支援できる作業を説明してください。"}'

キーに紐付いた Agent と保存済み設定を使用します。session_id を省略すると会話を作成し、返された session_id を指定すると続行します。新しいメッセージごとに新しい request_id を使い、同じメッセージの再試行では ID と内容を維持します。

HTTP 202 は受け付け完了を示します。応答の session_id と request_id を保存し、イベントから今回の実行結果を確認します。

実行過程を取得

export SESSION_ID='<SESSION_ID_FROM_RESPONSE>'
curl --fail-with-body \
  "$HAST_API_BASE/agent/sessions/$SESSION_ID/events?after=0&limit=100" \
  --header "Authorization: Bearer $HAST_API_KEY"

応答には events、next_after、has_more が含まれます。次のリクエストでは next_after を after に指定します。has_more が true なら、表示対象イベントが空でも次のページを取得します。新しいイベントがなければ、間隔を空けて再度問い合わせます。

この API はユーザーのメッセージ、Agent の返信、実行状態を返します。run_id が受付応答の request_id と一致する run.completed、run.failed、run.interrupted で今回の終了を判断します。message.completed は 1 メッセージの完了です。詳細は会話イベントと SSEを参照してください。

単一 Agent の会話では JSON ポーリングを使用し、SSE パスはありません。GET /agent/sessions でその Agent の会話履歴を探し、各会話のイベントを取得できます。

Profile API key を使う

現在の業務 ID に属するリソースへ機能別にアクセスするには、API キーを管理で Profile API key を作成し、必要な権限を選びます。

用途権限とエンドポイント
保存済み Agent 設定の取得webhooks:read、GET /webhooks
特定の Agent の呼び出しwebhooks:write、POST /webhooks/{hook_id}/invoke
ナレッジベース、チャネル、CRM、スケジュールの管理対応するリソース権限。API リファレンスを参照
通常タスクの送信とイベント取得prompts:write と sessions:read、POST /prompts と /sessions/{id}/events

書き込み権限には対応する読み取り権限が含まれます。Profile key の /prompts は通常タスクのセッションを作成し、保存済み AIP Agent の設定を自動では適用しません。設定済み Agent を呼び出す場合は /webhooks/{hook_id}/invoke または上記の単一 Agent の手順を使います。

通常タスクの SSE は /sessions/{id}/events/stream で受信できます。SSE 接続を参照してください。Profile key と単一 Agent のキーではアクセス範囲が異なり、/agent/* と通常タスクのパスを相互に置き換えることはできません。

API/MCP でチャネルを自動作成する

channels:write を持つ Profile API key を使います。参照には channels:read が必要です。単一 Agent の会話キーではチャネルを管理できません。以下は $HAST_API_BASE からの相対パスです。

操作REST APIMCP ツール
設定の作成・再開POST /channels/automaticpost_channels_automatic
進捗の参照GET /channels/automatic/{setup_id}get_channels_automatic_setup_id
認可 URL の取得POST /channels/automatic/{setup_id}/authorizepost_channels_automatic_setup_id_authorize
検証済みチャネルの登録POST /channels/automatic/{setup_id}/completepost_channels_automatic_setup_id_complete
未完了設定の取消DELETE /channels/automatic/{setup_id}delete_channels_automatic_setup_id

作成リクエスト例です。新規設定ごとに新しい UUID を発行し、同じ設定の再試行では UUID、プラットフォーム、名前を維持します。

{"provider":"slack","name":"Customer Support","request_key":"7d4ee264-3665-4d51-9363-b43bb302a790"}

provider は slack または telegram。名前の上限はそれぞれ 35、64 文字です。応答の id が後続の setup_id です。MCP の作成引数は body に包み、後続呼び出しでは path.setup_id に返された ID を指定します。

  1. authorize を呼び出します。Slack は一時的な configuration_token(Slack Configuration Access Token)を安全なクライアント保管先から渡します。チャット、ログ、リポジトリには記載しません。Telegram の本文は {} です。MCP 認可は path と body を指定します。
  2. 権限を持つ本人が返された url を開きます。Slack の認可後、awaiting_verification なら verification_url で Click here to verify を押します。Telegram では START、Create my bot の順に進み、名前とユーザー名を確認します。API/MCP は本人の認可を代行しません。
  3. 同じ設定を照会し、status=complete になったら complete を呼び出して connection.id を保存します。初回登録は 201、繰り返しは同じ接続と 200 を返します。Agent との関連付けは自動では行いません。
  4. Agent の既存チャネルを読み、必要な関連付けを残した完全な connection_ids を PUT /webhooks/{hook_id}/channels で保存します。管理されたテスト送信者からメッセージを送り、実際の返信を確認します。

未完了設定は 30 分で期限切れになります。failed、expired、canceled、uncertain では error_code と既存の結果を確認し、新しい UUID で Bot を重複作成しないでください。コールバックと戻り先は環境設定、Profile はキーで固定されます。取消は未完了設定の一時認証情報を消去しますが、作成済みの外部 App/Bot は削除しません。完了済み設定には通常のチャネル切断・削除を使います。

実行履歴・メール・チャネル設定

以下には対応する MCP ツールがあります。正確な引数は API リファレンス と再取得したツール Schema で確認してください。

機能API と権限
Agent 実行履歴GET /webhooks/{hook_id}/runs を limit、cursor でページ取得し、/runs/{task_id} で個別実行を参照。webhooks:read が必要
Token・推定費用Agent 詳細と GET /schedules/{scheduleID}/runs の token_usage。それぞれ webhooks:read、schedules:read が必要
メール名/webhooks/{hook_id} 以下で GET /email/address-suggestion、GET /email/address?local_part=NAME、PUT /email/address。更新本文は local_part と現在の address_version。channels:read/write が必要
複数接続アカウントGET /connectors/accounts、追加認可は POST /connectors/{provider}/oauth/authorize。connectors:read/write が必要
Slack 進捗PATCH /channels/{connection_id}/slack の show_tool_progress。channels:write が必要
Telegram ルール・ストリーミングPATCH /channels/{connection_id}/telegram の default_group_mode、show_tool_progress、streaming_replies。channels:write が必要

設定変更前に /channels/{connection_id}/installation を読み、完全なトリガールール配列を維持します。任意フラグの省略時は保存済み値を維持します。新規 Telegram チャネルはグループ内のメンションまたは Bot への返信で起動し、既存ルールは移行しません。メール改名後も旧アドレスは受信エイリアスとして残ります。バージョンや名前の競合時は再参照してください。

Runtime の execute_tool/proxy_execute はローカルの connector_account_ref_id でアカウントを選択します。同じプロバイダーに複数の利用可能アカウントがある場合は必須です。アカウント管理 API と外部業務ツールの実行は別の操作です。

実行、送達、業務カバレッジは別々に判断します。不明な使用量はゼロではなく、推定費用は確定請求ではありません。budget_status=unavailable は Agent/実行単位の予算台帳がないことを示します。削除済み履歴は復元できません。

接続を続ける

引数、応答、OpenAPI JSON は API リファレンスを参照してください。外部 Agent クライアントには MCP 連携、Agent 詳細画面の完全な Hook URL を使う場合は Webhook HTTP 連携を利用します。

Hast についてHast AIP、Hast Agent、Hast GTM と、FDE チームによる導入支援を紹介します。AIP の紹介FDE の導入ワークベンチで Agent を設定し、業務システムを接続します。最初の Agent を作成外部サービスを使わずに、設定・保存・デバッグを試します。Agent の設定と管理役割、モデル、機能を設定し、現在有効な設定を管理します。Skills の管理Agent が使うスキルファイルを作成、インポート、選択します。ナレッジベースの追加URL、ファイル、Drive の資料を組み合わせ、ナレッジベースのソース、インデックス、コンパイル済み内容を管理します。業務シークレットの管理認証情報を保存して Agent にバインドし、設定例に実際の値を含めないようにします。業務ツールの接続入力と認証方法を指定して、Agent から既存の HTTP サービスを呼び出します。長期メモリの設定Agent が読めるメモリと、新しいメモリの保存先を指定します。Agent のデバッグ保存した設定、会話の継続、ツールの結果を検証します。インポート・エクスポート・複製設定を再利用し、移行後にリソースと認証情報を再確認します。Webhook HTTP 連携サーバーから Agent を呼び出し、会話の継続、応答の取得、停止を行います。MCP 接続Public API Key で外部 Agent クライアントから AIP ツールを利用します。Slack を接続するAgent を Slack に追加して、チャンネルやダイレクトメッセージで質問したり、ファイルを扱ったり、チームで利用したりできます。WhatsApp を接続WhatsApp で顧客からの質問やファイルを受け取り、Agent が返信します。WeChat カスタマーサービスを接続Agent を WeChat カスタマーサービスに接続し、顧客の質問に返信します。API クイックスタートAIP でキーを作成し、保存済み Agent の呼び出し、応答の取得、許可された業務リソースへのアクセスを行います。会話イベントと SSE単一 Agent の会話イベントを取得し、Profile API key で通常タスクの SSE に接続します。API リファレンスAIP 公開 API の認証、Agent の会話、業務リソースのエンドポイントを確認します。Task Agent の紹介計画から実行、成果物まで、ツール・ファイル・継続的な文脈を使って作業を進めます。最初のタスクを完了依頼を送信し、進捗を確認して、最終成果物を検証します。タスクの実行と会話の管理要件の補足、実行の停止、会話履歴の管理を行います。ファイルのアップロード・閲覧・取得入力資料を渡し、タスクが作成した成果物を保存します。アプリ接続と機能設定外部アプリを認証し、タスク間で使う背景情報を管理します。定期タスクの作成周期とタイムゾーンを設定し、各実行の結果を確認します。Task Agent のトラブルシューティング権限、接続、タスク状態、ファイルを確認します。GTM の紹介Web サイトの共通プロジェクトで調査、露出分析、マーケティング原稿を扱います。最初の GTM プロジェクトを作成サイトを入力し、初期化を待って最初の結果を確認します。プロジェクトとサイト資料の管理プロジェクトの切り替え、サイト情報の更新、設定の管理を行います。会社分析とプロジェクト文書製品、競合、マーケティング資料を確認し、コンテンツ作成の背景に使います。SEO とサイト性能モバイルとデスクトップの PageSpeed レポートを確認します。AI によるブランド言及購買者の質問と、モデル回答でのブランド言及を確認します。Google Analytics の接続アカウントを認証し、GA プロパティを選んでトラフィックを確認します。X 原稿の生成と公開投稿を生成し、プレビューを確認して X で公開します。記事の下書きを生成スタイル、言語、読者を指定し、Markdown を確認してコピーします。Growth Agent の利用会話でプロジェクト資料を参照し、対応するバックグラウンド操作を開始します。実行状態とトラブルシューティングキュー、依存関係、結果を確認し、未完了をデータなしと混同しないようにします。プランと使用量現在の Profile の利用権限、使用量、請求を確認します。