Agent Studio

このページは機械翻訳により提供されています。翻訳内容と英語版に相違がある場合は、英語版が優先されます。

Agent Studio APIを使用すると、Genie、ナレッジベース、スキルなどのAgent Studioアセットをプログラムで作成および管理できます。

レート制限

Agent Studioリソースには、次のレート制限があります:

タイプリソース制限
GETGenieを一覧表示:
/api/agentic/genies
1分あたり1,000リクエスト
GETIDでGenieを取得:
/api/agentic/genies/:id
1分あたり1,000リクエスト
すべてその他すべてのGenieエンドポイント1分あたり60リクエスト
GETナレッジベースを一覧表示:
/api/agentic/knowledge_bases
1分あたり1,000リクエスト
GETIDでナレッジベースを取得:
/api/agentic/knowledge_bases/:id
1分あたり1,000リクエスト
すべてその他すべてのナレッジベース
エンドポイント
1分あたり60リクエスト
GETスキルを一覧表示:
/api/agentic/skills
1分あたり1,000リクエスト
GETIDでスキルを取得:
api/agentic/skills/:id
1分あたり1,000リクエスト
すべてその他すべてのスキルエンドポイント1分あたり60リクエスト

クイックリファレンス

タイプリソース説明
GET/api/agentic/geniesGenieのリストを返します。
POST/api/agentic/genies新しいGenieを作成します。
PUT/api/agentic/genies/:id既存のGenieを更新します。
GET/api/agentic/genies/:id指定したIDに関連付けられているGenieを返します。
DELETE/api/agentic/genies/:idGenieを削除します。
POST/api/agentic/genies/:id/start指定したIDに関連付けられているGenieを開始します。
POST/api/agentic/genies/:id/stop指定したIDに関連付けられているGenieを停止します。
POST/api/agentic/genies/:id/assign_skills指定したIDに関連付けられているGenieにスキルを割り当てます。
POST/api/agentic/genies/:id/remove_skills指定したIDに関連付けられているGenieからスキルを削除します。
POST/api/agentic/genies/:id/assign_knowledge_bases指定したIDに関連付けられているGenieにナレッジベースを割り当てます。
POST/api/agentic/genies/:id/remove_knowledge_bases指定したIDに関連付けられているGenieからナレッジベースを削除します。
POST/api/agentic/genies/:id/assign_user_groups指定したIDに関連付けられているGenieにユーザーグループアクセスを割り当てます。
POST/api/agentic/genies/:id/remove_user_groups指定したIDに関連付けられているGenieからユーザーグループアクセスを削除します。
GET/api/agentic/genies/clientsGenieクライアントのリストを返します。
POST/api/agentic/genies/clients新しいGenieクライアント(APIキーまたはOAuth)を作成します。
PUT/api/agentic/genies/clients/:client_idGenieクライアントの名前を更新します。
DELETE/api/agentic/genies/clients/:client_idGenieクライアントを削除します。
POST/api/agentic/genies/clients/:client_id/regenerateGenieクライアントのAPIキーを再生成します。
POST/api/agentic/genies/:id/clientsクライアントをGenieにアタッチします。
DELETE/api/agentic/genies/:id/clients/:client_idクライアントをGenieからデタッチします。
GET/api/agentic/genies/:genie_id/guardrails指定したIDに関連付けられているGenieのガードレールとそのポリシーを返します。
PUT/api/agentic/genies/:genie_id/guardrails/policies/:policy_type指定したIDに関連付けられているGenieで、単一のガードレールポリシーを作成または更新します。
GET/api/agentic/genies/guardrails/policies/pii_entitiespii_detectionポリシーで使用できるPIIエンティティタイプ文字列のリストを返します。
GET/api/agentic/knowledge_basesナレッジベースのリストを返します。
POST/api/agentic/knowledge_bases新しいナレッジベースを作成します。
GET/api/agentic/knowledge_bases/:id指定したIDに関連付けられているナレッジベースを返します。
PUT/api/agentic/knowledge_bases/:id既存のナレッジベースを更新します。
DELETE/api/agentic/knowledge_bases/:idナレッジベースを削除します。
GET/api/agentic/knowledge_bases/:id/data_sources指定したナレッジベースIDに関連付けられているデータソースを返します。
GET/api/agentic/knowledge_bases/:id/recipes指定したナレッジベースIDに関連付けられているレシピを返します。
GET/api/agentic/skillsスキルのリストを返します。
POST/api/agentic/skills新しいスキルを作成します。
GET/api/agentic/skills/:id指定したIDに関連付けられているスキルを返します。

Genie

Agent StudioのGenieは、次のエンドポイントと構成をサポートしています:

Genieの一覧表示

Genieのリストを返します。

bash
GET /api/agentic/genies

クエリパラメーター

名前タイプ説明
folder_idstring
任意
Genieが存在するフォルダのID。
project_idstring
任意
Genieが存在するプロジェクトのID。
statestring
任意
Genieの状態。 例: activeまたはinactive
pageinteger
任意
取得するGenieのページ番号。 最小値は1です。
per_pageinteger
任意
1ページで返すGenieの数。 最小値は1です。 最大値は50です。
サンプルリクエスト
shell
curl  -X GET "https://www.workato.com/api/agentic/genies?per_page=10&page=1" \
      -H 'Authorization: Bearer <api_token>'
サンプルレスポンス

チャネル構成フィールドは常に返され、明示的な構成が設定されていない場合はデフォルト値が使用されます。

json
[
  {
      "id": "gin-BWLSPX4z-BaT3D9",
      "name": "Customer Support Genie",
      "description": "Handles customer support inquiries and provides quick responses.",
      "state": "stopped",
      "folder_id": 22991030,
      "instructions": "You are a helpful, friendly support agent who answers customer questions clearly and politely.",
      "ai_provider": "open_ai",
      "chat_interface": "slack",
      "channel_mode": "dms_only",
      "channel_scope": "specific",
      "response_mode": "on_mention",
      "channel_whitelist": [],
      "skills_count": 5,
      "knowledge_bases_count": 3,
      "user_groups_count": 0,
      "active_recipes_count": 0,
      "inactive_skills_count": 5,
      "logo_url": "https://example.com/logo.png",
      "created_at": "2025-07-15T11:07:34.060-07:00",
      "updated_at": "2026-02-24T08:38:29.099-08:00"
  },
  {
      "id": "gin-ZWSMPR4a-TaG7S9",
      "name": "Customer Support Genie v2",
      "description": "Updated to handle billing inquiries in addition to general support.",
      "state": "stopped",
      "folder_id": 21285720,
      "instructions": "You are a knowledgeable, polite support assistant. Always prioritize clear, concise answers.",
      "ai_provider": "open_ai",
      "chat_interface": "slack",
      "channel_mode": "everywhere",
      "channel_scope": "all_invited",
      "response_mode": "helpdesk",
      "channel_whitelist": [],
      "skills_count": 5,
      "knowledge_bases_count": 3,
      "user_groups_count": 0,
      "active_recipes_count": 0,
      "inactive_skills_count": 5,
      "logo_url": "https://example.com/logo.png",
      "created_at": "2026-02-24T08:54:34.585-08:00",
      "updated_at": "2026-02-25T09:34:14.013-08:00"
  }
]

Genieを作成する

新しいGenieを作成します。

bash
POST /api/agentic/genies

ペイロード

名前タイプ説明
namestring
必須
Genieの名前。
説明string
必須
Genieの目的の説明。
folder_idstring
必須
Genieが存在するフォルダのID。
instructionsstring
必須
Genieが目的、パーソナリティ、ジョブの説明を識別するために使用する指示。
ai_providerstring
必須
Genieを動作させるAIプロバイダー。 使用できる値はanthropicまたはopen_aiです。
shared_account_idinteger
必須
GenieのコネクションID。
custom_oauth_key_idinteger
必須
カスタムOAuthキーID。
matrixboolean
必須
Workato GOをチャットインターフェイスとして有効にするかどうかを決定します。 使用できる値はtrueまたはfalseです。
channel_modestring
任意
Genieが応答する場所を制御します。 使用可能な値はdms_onlyまたはeverywhereです。 デフォルトはdms_onlyです。
channel_scopestring
任意
Genieが応答するチャネルを決定します。 使用可能な値はspecificまたはall_invitedです。 デフォルトはspecificです。
response_modestring
任意
Genieがチャネルでトリガーされる方法を制御します。 使用可能な値はon_mentionまたはhelpdeskです。 デフォルトはon_mentionです。
channel_whiteliststring[]
任意
Genieによる応答が許可されているSlackチャネルIDの配列です。 channel_scopespecificの場合にのみ適用されます。 デフォルトは[]です。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "name": "Customer Support Genie",
           "description": "Handles customer support inquiries and provides quick responses.",
           "folder_id": "7498",
           "instructions": "You are a helpful, friendly support agent who answers customer questions clearly and politely.",
           "ai_provider": "open_ai",
           "shared_account_id": 1234,
           "custom_oauth_key_id": 5678,
           "matrix": true,
           "channel_mode": "everywhere",
           "channel_scope": "specific",
           "response_mode": "helpdesk",
           "channel_whitelist": ["C0A9H9EN7J6", "C1B2C3D4E5F"]
         }'
サンプルレスポンス
json
{
  "id": "gin-BWLSPX4z-BaT3D9"
}

Genieを更新

既存のGenieを更新します。

bash
PUT /api/agentic/genies/:id

クエリパラメータ

名前タイプ説明
idstring
必須
更新するGenieのID。
namestring
任意
Genieの名前。
説明string
任意
Genieの目的の説明。
folder_idstring
任意
Genieが存在するフォルダのID。
instructionsstring
任意
Genieが目的、パーソナリティ、ジョブの説明を識別するために使用する指示。
ai_providerstring
任意
Genieを動作させるAIプロバイダー。 使用できる値はanthropicまたはopen_aiです。
shared_account_idinteger
任意
GenieのコネクションID。
custom_oauth_key_idinteger
任意
カスタムOAuthキーID。
matrixboolean
任意
Workato GOをチャットインターフェイスとして有効にするかどうかを決定します。 使用できる値はtrueまたはfalseです。
channel_modestring
任意
Genieが応答する場所を制御します。 使用可能な値はdms_onlyまたはeverywhereです。
channel_scopestring
任意
Genieが応答するチャネルを決定します。 使用可能な値はspecificまたはall_invitedです。
response_modestring
任意
Genieがチャネルでトリガーされる方法を制御します。 使用可能な値はon_mentionまたはhelpdeskです。
channel_whiteliststring[]
任意
Genieによる応答が許可されているSlackチャネルIDの配列です。 channel_scopespecificの場合にのみ適用されます。 空の配列を渡すと、リストがクリアされます。
サンプルリクエスト
shell
curl -X PUT https://www.workato.com/api/agentic/genies/101 \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "name": "Customer Support Genie v2",
           "description": "Updated to handle billing inquiries in addition to general support.",
           "instructions": "You are a knowledgeable, polite support assistant. Always prioritize clear, concise answers.",
           "matrix": false,
           "channel_mode": "everywhere",
           "channel_scope": "specific",
           "response_mode": "on_mention",
           "channel_whitelist": ["C0A9H9EN7J6"]
         }'
サンプルレスポンス
json
{
  "id": "gin-ZWSMPR4a-TaG7S9",
  "name": "Customer Support Genie v2",
  "description": "Updated to handle billing inquiries in addition to general support.",
  "folder_id": "7498",
  "project_id": "4567",
  "instructions": "You are a knowledgeable, polite support assistant. Always prioritize clear, concise answers.",
  "ai_provider": "open_ai",
  "shared_account_id": 1234,
  "custom_oauth_key_id": 5678,
  "matrix": false,
  "channel_mode": "everywhere",
  "channel_scope": "specific",
  "response_mode": "on_mention",
  "channel_whitelist": ["C0A9H9EN7J6"]
}

IDでGenieを取得

指定したIDに関連付けられているGenieを返します。

bash
GET /api/agentic/genies/:id

クエリパラメータ

名前タイプ説明
idstring
必須
取得するGenieのID。
サンプルリクエスト
shell
curl -X GET https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9 \
     -H 'Authorization: Bearer <api_token>'
サンプルレスポンス

チャネル構成フィールドは常に返され、明示的な構成が設定されていない場合はデフォルト値が使用されます。

json
{
  "id": "gin-ZWSMPR4a-TaG7S9",
  "name": "Customer Support Genie v2",
  "description": "Updated to handle billing inquiries in addition to general support.",
  "state": "stopped",
  "folder_id": 21285720,
  "project_id": 93761783,
  "instructions": "You are a knowledgeable, polite support assistant. Always prioritize clear, concise answers.",
  "ai_provider": "open_ai",
  "chat_interface": "slack",
  "channel_mode": "dms_only",
  "channel_scope": "specific",
  "response_mode": "on_mention",
  "channel_whitelist": [],
  "skills_count": 5,
  "knowledge_bases_count": 3,
  "user_groups_count": 0,
  "active_recipes_count": 0,
  "inactive_skills_count": 5,
  "custom_oauth_key_id": 5678,
  "connection_id": null,
  "folders": [
      {
          "id": 21285720,
          "name": "Customer Assistants"
      }
  ],
  "logo_url": "https://example.com/logo.png",
  "user_groups": [],
  "created_at": "2026-02-24T08:54:34.170-08:00",
  "updated_at": "2026-02-25T09:34:14.300-08:00"
}

Genieを削除

Genieを削除します。

bash
DELETE /api/agentic/genies/:id

クエリパラメータ

名前タイプ説明
idstring
必須
削除するGenieのID。
サンプルリクエスト
shell
curl -X DELETE https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9 \
     -H 'Authorization: Bearer <api_token>'
サンプルレスポンス
json
{
    "success": "true"
}

Genieを開始

指定したIDに関連付けられているGenieを開始します。

bash
POST /api/agentic/genies/:id/start

クエリパラメータ

名前タイプ説明
idstring
必須
開始するGenieのID。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9/start \
     -H 'Authorization: Bearer <api_token>'
サンプルレスポンス
json
{
  "success": true
}

Genieを停止

指定したIDに関連付けられているGenieを停止します。

bash
POST /api/agentic/genies/:id/stop

クエリパラメータ

名前タイプ説明
idstring
必須
停止するGenieのID。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9/stop \
     -H 'Authorization: Bearer <api_token>'
サンプルレスポンス
json
{
  "success": true
}

Genieにスキルを割り当て

指定したIDに関連付けられているGenieにスキルを割り当てます。

bash
POST /api/agentic/genies/:id/assign_skills

クエリパラメータ

名前タイプ説明
idstring
必須
スキルを割り当てるGenieのID。

ペイロード

名前タイプ説明
skill_idsstringの配列
必須
Genieに割り当てるスキルIDの配列。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9/assign_skills \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "skill_ids": ["65001201", "65704499", "65039789"]
         }'
サンプルレスポンス
json
{
    "skills": [
    {
      "id": "65001201",
      "name": "Sales Lead"
    },
    {
      "id": "65704499",
      "name": "Ticket Escalation"
    },
    {
      "id": "65039789",
      "name": "Order Tracking"
    }
  ],
}

Genieからスキルを削除

指定したIDに関連付けられているGenieからスキルを削除します。

bash
POST /api/agentic/genies/:id/remove_skills

クエリパラメータ

名前タイプ説明
idstring
必須
スキルを削除するGenieのID。

ペイロード

名前タイプ説明
skill_idsstringの配列
必須
Genieから削除するスキルIDの配列。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9/assign_skills \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "skill_ids": ["65001201", "65704499"]
         }'
サンプルレスポンス
json
{
    "skills": [
    {
      "id": "65001201",
      "name": "Sales Lead"
    },
    {
      "id": "65704499",
      "name": "Ticket Escalation"
    }
  ],
}

Genieにナレッジベースを割り当て

指定したIDに関連付けられているGenieにナレッジベースを割り当てます。

bash
POST /api/agentic/genies/:id/assign_knowledge_bases

クエリパラメータ

名前タイプ説明
idstring
必須
ナレッジベースを割り当てるGenieのID。

ペイロード

名前タイプ説明
knowledge_base_idsstringの配列
必須
Genieに割り当てるナレッジベースIDの配列。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9/assign_knowledge_bases \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "knowledge_base_ids": ["kb-WSm8kore-blMxrh", "kb-ATx0crok-saMvba"]
         }'
サンプルレスポンス
json
{
    "knowledge_bases": [
    {
      "id": "kb-WSm8kore-blMxrh",
      "name": "Sync Jira"
    },
    {
      "id": "kb-ATx0crok-saMvba",
      "name": "PRD sync"
    }
  ],
}

Genieからナレッジベースを削除

指定したIDに関連付けられているGenieからナレッジベースを削除します。

bash
POST /api/agentic/genies/:id/remove_knowledge_bases

クエリパラメータ

名前タイプ説明
idstring
必須
ナレッジベースを削除するGenieのID。

ペイロード

名前タイプ説明
knowledge_base_idsstringの配列
必須
Genieから削除するナレッジベースIDの配列。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9/remove_knowledge_bases \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "knowledge_base_ids": ["kb-WSm8kore-blMxrh"]
         }'
サンプルレスポンス
json
{
    "knowledge_bases": [
    {
      "id": "kb-WSm8kore-blMxrh",
      "name": "Sync Jira"
    }
  ],
}

Genieにユーザーグループを割り当て

指定したIDに関連付けられているGenieにユーザーグループアクセスを割り当てます。

bash
POST /api/agentic/genies/:id/assign_user_groups

クエリパラメータ

名前タイプ説明
idstring
必須
ユーザーグループアクセスを割り当てるGenieのID。

ペイロード

名前タイプ説明
user_group_idsstringの配列
必須
Genieに追加するユーザーグループIDの配列。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9/assign_user_groups \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "user_group_ids": ["ertXU2Z3sQaL47T8PssX2V, gpzHU1Y3mJaG77W1JbbZ2B"]
         }'
サンプルレスポンス
json
{
    "user_groups": [
    {
      "id": "ertXU2Z3sQaL47T8PssX2V",
      "name": "Sales"
    },
    {
      "id": "gpzHU1Y3mJaG77W1JbbZ2B",
      "name": "Finance"
    },
  ],
}

Genieからユーザーグループを削除

指定したIDに関連付けられているGenieからユーザーグループアクセスを削除します。

bash
POST /api/agentic/genies/:id/remove_user_groups

クエリパラメータ

名前タイプ説明
idstring
必須
ユーザーグループアクセスを削除するGenieのID。

ペイロード

名前タイプ説明
user_group_idsstringの配列
必須
Genieから削除するユーザーグループIDの配列。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9/remove_user_groups \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "user_group_ids": ["ertXU2Z3sQaL47T8PssX2V"]
         }'
サンプルレスポンス
json
{
    "user_groups": [
    {
      "id": "ertXU2Z3sQaL47T8PssX2V",
      "name": "Sales"
    }
  ],
}

Genieクライアント

Genieクライアントは、アプリケーションがHeadless APIを通じてGenieを呼び出すために使用するランタイム認証情報を使用します。 クライアントを作成し、Genieにアタッチする必要があります。 クライアントは実行時にAPIキーまたはOAuth 2.0(PKCE)のいずれかで認証します。

GENIEごとに1つのクライアント

Genieは、アタッチされた単一のクライアントをサポートします。 クライアントとGenieの関係は1:1です。すでにクライアントがあるGenieにクライアントをアタッチする場合、または別のGenieにすでにアタッチされているクライアントをアタッチする場合、409競合が返されます。 クライアントの参照先を変更するには、まず既存のペアリングをデタッチします。

Genieクライアントのリスト

ワークスペース内のGenieクライアントを返します。

bash
GET /api/agentic/genies/clients
サンプルリクエスト
shell
curl -X GET https://www.workato.com/api/agentic/genies/clients \
     -H 'Authorization: Bearer <api_token>'
サンプルレスポンス
json
{
  "data": [
    { "client_id": "gincl-AaBGpLGx-HLdsJL", "client_name": "HR Concierge Web" }
  ],
  "total": 1,
  "page": 1,
  "per_page": 10
}

Genieクライアントの作成

Genieクライアントを作成します。 サーバー間認証情報の場合はauth.typeapi_keyに、ブラウザーベースのOAuth 2.0(PKCE)クライアントの場合はoauthに設定します。

bash
POST /api/agentic/genies/clients

ペイロード

名前タイプ説明
client_namestring
必須
クライアントの名前。
authオブジェクト
必須
認証設定。
auth.typestring
必須
認証タイプ。 使用できる値はapi_keyoauthです。
auth.oauth_redirect_urlstring
任意
OAuthフローに登録されたリダイレクトURL。 auth.typeoauthの場合に必須。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies/clients \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{ "client_name": "HR Concierge Web", "auth": { "type": "api_key" } }'
サンプルレスポンス

APIキーのクライアントは、作成時に1回だけ返される64文字の16進文字列を含むapi_keyを使用します。 すべてのクライアントは公開oauth_client_idも返します。 OAuthクライアントはシークレットを返しません。

json
{
  "data": {
    "client_id": "gincl-AaBGpLGx-HLdsJL",
    "client_name": "HR Concierge Web",
    "oauth_client_id": "MtaJ4c5oIc3_c0TASWnCW0rfmCr6R4UTO7",
    "api_key": "<64-character hex string>"
  }
}

Genieクライアントの更新

Genieクライアントの名前を更新します。

bash
PUT /api/agentic/genies/clients/:client_id

ペイロード

名前タイプ説明
client_namestring
必須
クライアントの新しい名前。
サンプルリクエスト
shell
curl -X PUT https://www.workato.com/api/agentic/genies/clients/gincl-AaBGpLGx-HLdsJL \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{ "client_name": "HR Concierge Web v2" }'

Genieクライアントの削除

Genieクライアントを削除し、その認証情報を無効化します。 Genieクライアントを削除せずにGenieから削除するには、Genieクライアントをデタッチします。

bash
DELETE /api/agentic/genies/clients/:client_id
サンプルリクエスト
shell
curl -X DELETE https://www.workato.com/api/agentic/genies/clients/gincl-AaBGpLGx-HLdsJL \
     -H 'Authorization: Bearer <api_token>'

Genieクライアントキーの再生成

APIキーのクライアントのAPIキーを再生成します。 以前のキーは直ちに無効化され、新しいキーは1回だけ返されます。

bash
POST /api/agentic/genies/clients/:client_id/regenerate
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies/clients/gincl-AaBGpLGx-HLdsJL/regenerate \
     -H 'Authorization: Bearer <api_token>'
サンプルレスポンス
json
{
  "data": {
    "api_key": "<64-character hex string>",
    "updated_at": "2026-06-15T06:44:40-07:00"
  }
}

クライアントのGenieへのアタッチ

指定したGenieにクライアントをアタッチします。 Genieに既存のクライアントがあってはなりません。 クライアントは一度に1つのGenieにのみアタッチできます。

bash
POST /api/agentic/genies/:id/clients

ペイロード

名前タイプ説明
genie_client_idstring
必須
アタッチするクライアントのID。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9/clients \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{ "genie_client_id": "gincl-AaBGpLGx-HLdsJL" }'

クライアントのGenieからのデタッチ

指定したGenieからクライアントをデタッチします。 クライアントは削除されず、別のGenieにアタッチできます。

bash
DELETE /api/agentic/genies/:id/clients/:client_id
サンプルリクエスト
shell
curl -X DELETE https://www.workato.com/api/agentic/genies/gin-ZWSMPR4a-TaG7S9/clients/gincl-AaBGpLGx-HLdsJL \
     -H 'Authorization: Bearer <api_token>'

Guardrails

ガードレールを使用すると、コンテンツ安全性ポリシーをGenieにアタッチできます。 ガードレールが存在する場合、モデルが応答する前に、各チャットターンがそのポリシーに照らして評価されます。 各ガードレールには、最初にアタッチされたときに2つのデフォルトポリシーがあります: prompt_attackharmful_content

ベータ機能

Guardrails APIエンドポイントはベータ版です。 詳細については、カスタマーマネージャーにお問い合わせください。

ポリシーの無効化または削除

APIを使用してガードレールからポリシーを削除するためのDELETEガードレールエンドポイントはありません。 ポリシーの作成または更新エンドポイントでガードレールを再構成する必要があります。 次の表で、タイプに基づいてポリシーをオフにする方法を確認してください。

ポリシー種別ポリシーをオフにする方法
pii_detection, profanity_filterenabled: falseを設定します。 ポリシーはアタッチされたままですが、アクションは実行されません。
harmful_content各カテゴリのフィルターをstrength: "NONE"に設定して無効にします。 filtersは空でない状態を維持する必要があります(空の配列は422を返します)。そのため、完全に無効化されたポリシーでは5つすべてのエントリがstrength: "NONE"のままになります。 enabledを送信すると422が返されます。
prompt_attackstrength: "NONE"を設定します。 enabledを送信すると422が返されます。
custom_word_filterリストをクリアするにはcustom_words: []を送信します。
topic_boundarytopicsは空でない必要があります。 配列を空にするのではなく、トピックを再構成します。

NONEは有効なstrength値であり、GenieビルダーUIでprompt_attackharmful_contentをオフにするために使用されます。 2つのデフォルトポリシーであるprompt_attackharmful_contentは、ガードレールがアタッチされると常に存在します。 これらのポリシーはstrength: "NONE"でオフにできますが、ポリシーを削除することはできません。

Genieガードレールの取得

指定したIDに関連付けられているGenieのガードレールとそのポリシーを返します。

bash
GET /api/agentic/genies/:genie_id/guardrails

クエリパラメータ

名前タイプ説明
genie_idstring
必須
取得するガードレールが属するGenieのID。 Genieハンドルはgin-で始まります。 例: gin-aBC123-xYz789-prod1
サンプルリクエスト
shell
curl -sS https://www.workato.com/api/agentic/genies/gin-aBC123-xYz789-prod1/guardrails \
  -H 'Authorization: Bearer <api_token>'
サンプルレスポンス
json
{
  "data": {
    "id": "aigrl-aBC123-xYz789-prod1",
    "policies": [
      {
        "id": "aigrlp-aBC123-pQr456-prod1",
        "policy_type": "harmful_content",
        "configuration": {
          "filters": [
            { "type": "HATE",        "strength": "LOW" },
            { "type": "INSULTS",     "strength": "LOW" },
            { "type": "SEXUAL",      "strength": "LOW" },
            { "type": "VIOLENCE",    "strength": "LOW" },
            { "type": "MISCONDUCT",  "strength": "LOW" }
          ]
        }
      },
      {
        "id": "aigrlp-aBC123-sTu789-prod1",
        "policy_type": "prompt_attack",
        "configuration": { "strength": "LOW" }
      }
    ]
  }
}
サンプルレスポンス
json
{ "data": { "id": null, "policies": [] } }

エラーレスポンス

Status条件
401 UnauthorizedAPIトークンが欠落しているか無効です。
404 Not FoundGenieハンドルが不明である、フォルダスコープ外である、またはgenie_guardrails_enabledフラグがオフです。

ポリシーの作成または更新

指定したIDに関連付けられているGenieで、単一のガードレールポリシーを作成または更新します。 指定したpolicy_typeのポリシーが存在しない場合、新しいポリシーが作成されます。 それ以外の場合、既存のポリシーの設定が完全に置き換えられます。 使用する予定の完全な設定を送信する必要があります。 部分更新はサポートされていません。

bash
PUT /api/agentic/genies/:genie_id/guardrails/policies/:policy_type

クエリパラメータ

名前タイプ説明
genie_idstring
必須
作成または更新するポリシーが属するGenieのID。
policy_typestring
必須
作成または更新するポリシーのタイプ。 使用可能な値: harmful_contentprompt_attackpii_detectiontopic_boundaryprofanity_filtercustom_word_filter

ペイロード

名前タイプ説明
configurationオブジェクト
必須
ポリシーの設定。 形式はpolicy_typeによって異なります。 詳細については、ポリシータイプを参照してください。
サンプルリクエスト
shell
curl -X PUT https://www.workato.com/api/agentic/genies/gin-aBC123-xYz789-prod1/guardrails/policies/harmful_content \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "configuration": {
             "filters": [
               { "type": "HATE",      "strength": "HIGH" },
               { "type": "INSULTS",   "strength": "HIGH" },
               { "type": "SEXUAL",    "strength": "HIGH" },
               { "type": "VIOLENCE",  "strength": "MEDIUM" },
               { "type": "MISCONDUCT","strength": "MEDIUM" }
             ]
           }
         }'
サンプルレスポンス
json
{
  "data": {
    "id": "aigrlp-aBC123-pQr456-prod1",
    "policy_type": "harmful_content",
    "configuration": {
      "filters": [
        { "type": "HATE",       "strength": "HIGH" },
        { "type": "INSULTS",    "strength": "HIGH" },
        { "type": "SEXUAL",     "strength": "HIGH" },
        { "type": "VIOLENCE",   "strength": "MEDIUM" },
        { "type": "MISCONDUCT", "strength": "MEDIUM" }
      ]
    }
  }
}

エラーレスポンス

Status条件
400 Bad Requestpolicy_typeが6つの有効な値のいずれでもありません。
401 UnauthorizedAPIトークンが欠落しているか無効です。
404 Not FoundGenieが見つからない、Genieにガードレールがアタッチされていない、または機能フラグがオフです。
422 Unprocessable Entityconfigurationの検証に失敗しました。 これは、必須フィールドの欠落、不明なキー、無効な列挙値、またはリクエストが制限を超えたことが原因で発生する場合があります。
サンプル422レスポンス
json
{
  "errors": [
    {
      "code": 422,
      "title": "Failed to update policy",
      "detail": "Configuration contains unknown keys: junk"
    }
  ]
}

使用可能なPIIエンティティタイプの一覧表示

pii_detectionポリシーのpii_entities[].typeフィールドで使用できるPIIエンティティタイプ文字列のリストを返します。 このリストは現在のEnvironmentに固有のものではありません。

bash
GET /api/agentic/genies/guardrails/policies/pii_entities
サンプルリクエスト
shell
curl -sS https://www.workato.com/api/agentic/genies/guardrails/policies/pii_entities \
     -H 'Authorization: Bearer <api_token>'
サンプルレスポンス
json
{
  "data": [
    "ADDRESS", "AGE", "AWS_ACCESS_KEY", "AWS_SECRET_KEY",
    "CA_HEALTH_NUMBER", "CA_SOCIAL_INSURANCE_NUMBER",
    "CREDIT_DEBIT_CARD_CVV", "CREDIT_DEBIT_CARD_EXPIRY", "CREDIT_DEBIT_CARD_NUMBER",
    "DRIVER_ID", "EMAIL", "INTERNATIONAL_BANK_ACCOUNT_NUMBER",
    "IP_ADDRESS", "LICENSE_PLATE", "MAC_ADDRESS", "NAME",
    "PASSWORD", "PHONE", "PIN", "SWIFT_CODE",
    "UK_NATIONAL_HEALTH_SERVICE_NUMBER", "UK_NATIONAL_INSURANCE_NUMBER", "UK_UNIQUE_TAXPAYER_REFERENCE_NUMBER",
    "URL", "USERNAME",
    "US_BANK_ACCOUNT_NUMBER", "US_BANK_ROUTING_NUMBER",
    "US_INDIVIDUAL_TAX_IDENTIFICATION_NUMBER", "US_PASSPORT_NUMBER", "US_SOCIAL_SECURITY_NUMBER",
    "VEHICLE_IDENTIFICATION_NUMBER"
  ]
}

ポリシータイプ

policy_typeは特定のconfiguration形式を受け入れます。 不明なトップレベルキーを送信すると422で失敗します。

harmful_content

有害なコンテンツのカテゴリについて、ユーザー入力とモデル出力をフィルタリングします。

フィールドタイプ必須メモ
filters配列はい空でないこと。 各要素は{ "type": <category>, "strength": <strength> }です。
filters[].typestringはいHATEINSULTSSEXUALVIOLENCEMISCONDUCTPROMPT_ATTACKのいずれか。
filters[].strengthstringはいNONELOWMEDIUMHIGHのいずれか。 カテゴリを無効にするには、NONEを使用するか、エントリを省略します。
json
{
  "configuration": {
    "filters": [
      { "type": "HATE",       "strength": "HIGH" },
      { "type": "INSULTS",    "strength": "HIGH" },
      { "type": "SEXUAL",     "strength": "HIGH" },
      { "type": "VIOLENCE",   "strength": "MEDIUM" },
      { "type": "MISCONDUCT", "strength": "MEDIUM" }
    ]
  }
}

prompt_attack

ユーザーのプロンプト内で、システム指示の上書き、脱獄、またはその他の方法でGenieを操作しようとする試みを検出します。

フィールドタイプ必須メモ
strengthstringはいNONELOWMEDIUMHIGHのいずれか。 ポリシーをオフにするにはNONEを使用します。
json
{ "configuration": { "strength": "HIGH" } }

pii_detection

チャットコンテンツ内のPIIを検出し、ブロック、匿名化、またはトークン化します。 組み込みエンティティタイプ、カスタム正規表現、またはその両方で照合できます。

フィールドタイプ必須メモ
enabledbooleanはい機能を有効にします。 falseに設定されている場合、他のフィールドは受け入れられますが無視されます。
actionstringはいBLOCKANONYMIZETOKENIZEのいずれか。 enabledfalseの場合でも必須です。
pii_entities配列条件付きenabledtrueで、pii_custom_regexesが空または存在しない場合は必須(空でないこと)。 各要素は{ "type": <entity> }です。 有効な値を確認するには、使用可能なPIIエンティティタイプの一覧表示を使用します。
pii_custom_regexes配列条件付きenabledtrueで、pii_entitiesが空または存在しない場合は必須(空でないこと)。 最大10エントリ。 各エントリは{ "name": <label>, "pattern": <regex> }です。
pii_custom_regexes[].namestringはい監査ログに表示される空でないラベル。
pii_custom_regexes[].patternstringはい有効な正規表現。 500文字未満である必要があります。
json
{
  "configuration": {
    "enabled": true,
    "action": "ANONYMIZE",
    "pii_entities": [
      { "type": "EMAIL" },
      { "type": "PHONE" },
      { "type": "CREDIT_DEBIT_CARD_NUMBER" },
      { "type": "US_SOCIAL_SECURITY_NUMBER" }
    ],
    "pii_custom_regexes": []
  }
}

topic_boundary

会話を特定のトピックに制限します。 任意の発話例は、境界線上のケースをモデルが分類するのに役立ちます。

フィールドタイプ必須メモ
topics配列はい空でないこと。 最大30トピック。
topics[].namestringはい50文字未満である必要があります。 空でないこと。
topics[].descriptionstringいいえ300文字未満である必要があります。
topics[].examples文字列の配列いいえ最大5件の例。各例は300文字未満である必要があります。
json
{
  "configuration": {
    "topics": [
      {
        "name": "Investment advice",
        "description": "Refuse to provide personalized financial or investment advice; suggest the user contact a licensed advisor.",
        "examples": [
          "Should I buy NVDA stock?",
          "How should I allocate my 401(k)?",
          "Is now a good time to invest in crypto?"
        ]
      }
    ]
  }
}

profanity_filter

不適切表現フィルタは有効または無効にできます。

フィールドタイプ必須メモ
enabledbooleanはい有効にするにはtrue、無効にするにはfalse
json
{ "configuration": { "enabled": true } }

custom_word_filter

明示的な単語または短いフレーズのリストに含まれるいずれかを含むメッセージをブロックします。

フィールドタイプ必須メモ
custom_words文字列の配列はい最大100エントリ。 各エントリは50文字未満である必要があります。 リストをクリアするには空の配列を送信します。
json
{
  "configuration": {
    "custom_words": ["Project Atlas", "Operation Falcon", "internal-only"]
  }
}

ナレッジベース

ナレッジベースの一覧表示

ナレッジベースのリストを返します。

bash
GET /api/agentic/knowledge_bases

クエリパラメータ

名前タイプ説明
folder_idstring
任意
ナレッジベースが存在するフォルダのID。
project_idstring
任意
ナレッジベースが存在するプロジェクトのID。
querystring
任意
検索クエリ。
pageinteger
任意
取得するナレッジベースのページ番号。 最小値は1です。
per_pageinteger
任意
1ページで返すナレッジベースの数。 最小値は1です。 最大値は50です。
sort_termstring
任意
結果の並べ替えに使用するフィールドまたは用語。 例: nameまたはlatest_activity
サンプルリクエスト
shell
curl -X GET https://www.workato.com/api/agentic/knowledge_bases \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "per_page": 10,
           "page": 1,
           "sort_term": "name"
         }'
サンプルレスポンス
json
[
  {
    "id": "kb-WSm8kore-blMxrh",
    "name": "Support FAQs",
    "description": "Knowledge base with frequently asked customer support questions.",
    "folder_id": "7498",
    "project_id": "4567"
  },
  {
    "id": "kb-BLm8cove-brMxrh",
    "name": "Sales Playbook",
    "description": "Guidelines and resources for the sales team.",
    "folder_id": "7302",
    "project_id": "9876"
  }
]

ナレッジベースを作成する

新しいナレッジベースを作成します。

bash
POST /api/agentic/knowledge_bases

ペイロード

名前タイプ説明
namestring
必須
ナレッジベースの名前。
説明string
必須
ナレッジベースの説明。
folder_idstring
必須
ナレッジベースが存在するフォルダのID。
source_typestring
必須
レシピなど、ナレッジベースのソース。
data_sourcesstring
必須
ナレッジベースのデータソースを設定します。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/knowledge_bases \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "name": "Support FAQs",
           "description": "Knowledge base with frequently asked customer support questions.",
           "folder_id": "7498",
           "source_type": "recipe",
           "data_sources": "zendesk_articles"
         }'
サンプルレスポンス
json
{
  "id": "kb-BRm8coke-rhMxsa",
  "name": "Support FAQs",
  "description": "Knowledge base with frequently asked customer support questions.",
  "folder_id": "7498",
  "source_type": "recipe",
  "data_sources": "zendesk_articles"

IDでナレッジベースを取得

指定したIDに関連付けられているナレッジベースを返します。

bash
GET /api/agentic/knowledge_bases/:id

クエリパラメータ

名前タイプ説明
idstring
必須
取得するナレッジベースのID。
サンプルリクエスト
shell
curl -X GET https://www.workato.com/api/agentic/knowledge_bases/kb-WSm8kore-blMxrh \
     -H 'Authorization: Bearer <api_token>' \
サンプルレスポンス
json
[
  {
    "id": "kb-WSm8kore-blMxrh",
    "name": "Support FAQs",
    "description": "Knowledge base with frequently asked customer support questions.",
    "folder_id": "7498",
    "project_id": "4567"
  }
]

ナレッジベースを更新

既存のナレッジベースを更新します。

bash
PUT /api/agentic/knowledge_bases/:id

クエリパラメータ

名前タイプ説明
idstring
必須
更新するナレッジベースのID。
namestring
任意
ナレッジベースの名前。
説明string
任意
ナレッジベースの説明。
folder_idstring
任意
ナレッジベースが存在するフォルダのID。
data_sourcesobject
任意
ナレッジベースに設定されているデータソース。
サンプルリクエスト
shell
curl -X PUT https://www.workato.com/api/agentic/knowledge_bases/kb-WSm8kore-blMxrh \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "name": "Support FAQs v2",
           "description": "Updated to include billing FAQs in addition to support.",
           "data_sources": {
             "zendesk_articles": true,
             "internal_docs": true
           }
         }'
サンプルレスポンス
json
{
  "id": "kb-WSm8kore-blMxrh",
  "name": "Support FAQs v2",
  "description": "Updated to include billing FAQs in addition to support.",
  "folder_id": "7498",
  "source_type": "recipe",
  "data_sources": {
    "zendesk_articles": true,
    "internal_docs": true
  }
}

ナレッジベースを削除

ナレッジベースを削除します。

bash
DELETE /api/agentic/knowledge_bases/:id

クエリパラメータ

名前タイプ説明
idstring
必須
削除するナレッジベースのID。
サンプルリクエスト
shell
curl -X DELETE https://www.workato.com/api/agentic/knowledge_bases/kb-WSm8kore-blMxrh \
     -H 'Authorization: Bearer <api_token>' \
サンプルレスポンス
json
{
    "success": "true"
}

ナレッジベースのデータソースを取得

指定したナレッジベースIDに関連付けられているデータソースを返します。

bash
GET /api/agentic/knowledge_bases/:id/data_sources

クエリパラメータ

名前タイプ説明
idstring
必須
データソースを取得するナレッジベースのID。
サンプルリクエスト
shell
curl -X GET https://www.workato.com/api/agentic/knowledge_bases/kb-WSm8kore-blMxrh/data_sources \
     -H 'Authorization: Bearer <api_token>'
サンプルレスポンス
json
{
  "knowledge_base_id": "kb-WSm8kore-blMxrh",
  "data_sources": {
    "zendesk_articles": true,
    "internal_docs": true,
    "slack_channels": false
  }
}

ナレッジベースのレシピを取得

指定したナレッジベースIDに関連付けられているレシピを返します。

bash
GET /api/agentic/knowledge_bases/:id/recipes

クエリパラメータ

名前タイプ説明
idstring
必須
関連付けられているレシピを取得するナレッジベースのID。
querystring
任意
検索クエリ。
pageinteger
任意
取得するGenieのページ番号。 最小値は1です。
per_pageinteger
任意
1ページで返すGenieの数。 最小値は1です。 最大値は50です。
sort_termstring
任意
結果の並べ替えに使用するフィールドまたは用語。 例: nameまたはlatest_activity
サンプルリクエスト
shell
curl -X GET https://www.workato.com/api/agentic/knowledge_bases/kb-WSm8kore-blMxr/recipes \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "per_page": 10,
           "page": 1,
           "sort_term": "name"
         }'
サンプルレスポンス
json
[
  {
    "id": 45246391,
    "name": "Customer Support Escalation",
    "description": "Routes high-priority Zendesk tickets to Slack.",
    "knowledge_base_id": "kb-WSm8kore-blMxr/recipes"
  },
  {
    "id": 87654321,
    "name": "Billing Notifications",
    "description": "Sends alerts for overdue invoices to the finance team.",
    "knowledge_base_id": "kb-WSm8kore-blMxr/recipes"
  }
]

スキル

スキルの一覧表示

スキルのリストを返します。

bash
GET /api/agentic/skills

クエリパラメータ

名前タイプ説明
folder_idstring
任意
Genieが存在するフォルダのID。
project_idstring
任意
Genieが存在するプロジェクトのID。
querystring
任意
検索クエリ。
pageinteger
任意
取得するGenieのページ番号。 最小値は1です。
per_pageinteger
任意
1ページで返すGenieの数。 最小値は1です。 最大値は50です。
sort_termstring
任意
結果の並べ替えに使用するフィールドまたは用語。 例: nameまたはlatest_activity
サンプルリクエスト
shell
curl -X GET https://www.workato.com/api/agentic/skills \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "per_page": 10,
           "page": 1,
           "sort_term": "name"
         }'
サンプルレスポンス
json
[
  {
    "id": 65001201,
    "name": "Zendesk Ticket Management",
    "description": "Skill for handling customer support tickets from Zendesk.",
    "folder_id": "7498",
    "project_id": "4567"
  },
  {
    "id": 65039789,
    "name": "Slack Notifications",
    "description": "Skill for sending targeted Slack alerts.",
    "folder_id": "7302",
    "project_id": "4567"
  }
]

既存のレシピからスキルを作成

既存のレシピをスキルに変換します。 レシピは、定義済みの入力とアクションを含むStart workflowトリガーを使用する必要があります。 このエンドポイントをrecipe_idで呼び出して、レシピをAgent Studioのスキルとして登録します。

bash
POST /api/agentic/skills

ペイロード

名前タイプ説明
recipe_idinteger
必須
スキルに変換するレシピのID。
サンプルリクエスト
shell
curl -X POST https://www.workato.com/api/agentic/skills \
     -H 'Authorization: Bearer <api_token>' \
     -H 'Content-Type: application/json' \
     -d '{
           "recipe_id": 65039789
         }'
サンプルレスポンス
json
{
  "name": "Customer Escalation Skill",
  "description": "Skill automatically routes high-priority Zendesk tickets to Slack.",
  "recipe_id": 65039789,
  "folder_id": "7498",
  "project_id": "4567"
}

IDでスキルを取得

指定したIDに関連付けられているスキルを返します。

bash
GET /api/agentic/skills/:id

クエリパラメータ

名前タイプ説明
idstring
必須
取得するスキルのID。
サンプルリクエスト
shell
curl -X GET https://www.workato.com/api/agentic/skills/65039789 \
     -H 'Authorization: Bearer <api_token>' \
サンプルレスポンス
json
{
  "name": "Customer Escalation Skill",
  "description": "Skill automatically routes high-priority Zendesk tickets to Slack.",
  "recipe_id": 65039789,
  "folder_id": "7498",
  "project_id": "4567"
}

Last updated: