> For the complete documentation index, see [llms.txt](https://docs.maiagent.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.maiagent.ai/api/api-doc-ja/api-reference/ai-zhu-li.md).

# AI アシスタント

### AI アシスタントを新規作成 <a href="#ai" id="ai"></a>

POST `/api/chatbots/`

#### リクエスト内容

**リクエストパラメータ**

| フィールド                    | 種類                   | 必須 | 説明                                                                                                                  |
| ------------------------ | -------------------- | -- | ------------------------------------------------------------------------------------------------------------------- |
| name                     | string               | 必須 | ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます                                                       |
| rag                      | string (uuid)        | 任意 | RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します                                                            |
| largeLanguageModel       | string (uuid)        | 必須 | ボットが使用する大規模言語モデルです。回答の生成に使用します                                                                                      |
| embeddingModel           | string (uuid)        | 任意 | テキストをベクトル化するための埋め込みモデルです（任意項目）                                                                                      |
| rerankerModel            | string (uuid)        | 任意 | 再ランキングに使用するモデルです（任意項目）                                                                                              |
| instructions             | string               | 任意 | ボットの役割指示です。ボットの役割や振る舞いを記述します                                                                                        |
| knowledgeBases           | array\[IdName]       | 任意 | ボットがアクセスできるナレッジベースの一覧です                                                                                             |
| databases                | array\[IdName]       | 任意 | ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用）                                                                      |
| organization             | string (uuid)        | 任意 | ボットが所属する組織です。空の場合は個人用ボットになります                                                                                       |
| builtInWorkflow          | string (uuid)        | 任意 | 組み込みワークフローです。あらかじめ定義された処理フローに使用します                                                                                  |
| replyMode                | object               | 任意 | 返信モード：通常返信またはストリーミング返信 `normal`: 通常 ; `template`: テンプレート ; `hybrid`: ハイブリッド ; `workflow`: ワークフロー ; `agent`: エージェント; |
| template                 | string               | 任意 | テンプレートモード・ハイブリッドモードで使用するテンプレートです                                                                                    |
| unanswerableTemplate     | string               | 任意 | テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです                                                                           |
| totalWordsCount          | integer (int64)      | 任意 | 累計の総使用文字数です                                                                                                         |
| outputMode               | object               | 任意 | 出力モード：テキスト、表、またはカスタム形式 `text`: テキスト ; `json_schema`: JSON Schema;                                                   |
| rawOutputFormat          | object               | 任意 | カスタム出力形式の JSON 構造定義です                                                                                               |
| groups                   | array\[IdName]       | 任意 | ボットがアクセスできるグループの一覧です                                                                                                |
| tools                    | array\[ToolSummary]  | 任意 | ボットが使用できるツールの一覧です                                                                                                   |
| skills                   | array\[SkillSummary] | 任意 | ボットに関連付けられたスキルの一覧です                                                                                                 |
| agentMode                | object               | 任意 | エージェントモード：通常、SQL、またはワークフローモード `normal`: 通常 ; `canvas`: キャンバス;                                                       |
| numberOfRetrievedChunks  | integer              | 任意 | 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です                                                                                   |
| enableEvaluation         | boolean              | 任意 |                                                                                                                     |
| enableInlineCitations    | boolean              | 任意 | インライン引用機能を有効にします。回答内に \[1]\[2] 形式の引用マークを挿入します                                                                       |
| enableCodeInterpreter    | boolean              | 任意 | 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます                                                              |
| customMaxLlmOutputTokens | integer              | 任意 | LLM の最大出力トークン数のカスタム値です。最小値は 512 です                                                                                  |
| voiceAgentType           | string (uuid)        | 任意 | 音声エージェントモードの種類です                                                                                                    |
| sttProvider              | string (uuid)        | 任意 | Speech-to-Text サービスのプロバイダーです                                                                                        |
| sttConfig                | object               | 任意 | STT の実際の設定パラメータです（JSON 形式）                                                                                          |
| ttsProvider              | string (uuid)        | 任意 | Text-to-Speech サービスのプロバイダーです                                                                                        |
| ttsConfig                | object               | 任意 | TTS の実際の設定パラメータです（JSON 形式）                                                                                          |
| realtimeProvider         | string (uuid)        | 任意 | Realtime エンドツーエンド音声モデルのプロバイダーです                                                                                     |
| realtimeConfig           | object               | 任意 | Realtime の実際の設定パラメータです（JSON 形式）                                                                                     |
| thinkingConfig           | object               | 任意 | Thinking effort の設定です（JSON 形式）                                                                                      |
| enableToolSearching      | boolean              | 任意 | 動的ツール検索機能を有効にします。agent が tool\_searching\_tool を通じてツールを動的に発見・読み込みできるようになります                                         |

**リクエスト構造の例**

```typescript
{
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
    }
  ]
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
}
```

**リクエストの例**

```json
{
  "name": "サンプル名",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "サンプル文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "サンプル文字列",
  "unanswerableTemplate": "サンプル文字列",
  "totalWordsCount": 123,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 123,
  "enableEvaluation": true,
  "enableInlineCitations": true,
  "enableCodeInterpreter": true,
  "customMaxLlmOutputTokens": 123,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": true
}
```

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X POST "https://api.maiagent.ai/api/chatbots/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  }'

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
};

// リクエスト内容 (payload)
const data = {
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  };

axios.post("https://api.maiagent.ai/api/chatbots/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/chatbots/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "rag": "550e8400-e29b-41d4-a716-446655440000",
      "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
      "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
      "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
      "instructions": "サンプル文字列",
      "knowledgeBases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "databases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
      "replyMode": {},
      "template": "サンプル文字列",
      "unanswerableTemplate": "サンプル文字列",
      "totalWordsCount": 123,
      "outputMode": {},
      "rawOutputFormat": null,
      "groups": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "tools": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "skills": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "agentMode": {},
      "numberOfRetrievedChunks": 123,
      "enableEvaluation": true,
      "enableInlineCitations": true,
      "enableCodeInterpreter": true,
      "customMaxLlmOutputTokens": 123,
      "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
      "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
      "sttConfig": null,
      "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
      "ttsConfig": null,
      "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
      "realtimeConfig": null,
      "thinkingConfig": null,
      "enableToolSearching": true
    }

response = requests.post(url, json=data, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->post("https://api.maiagent.ai/api/chatbots/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "rag": "550e8400-e29b-41d4-a716-446655440000",
            "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
            "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
            "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
            "instructions": "サンプル文字列",
            "knowledgeBases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "databases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
            "replyMode": {},
            "template": "サンプル文字列",
            "unanswerableTemplate": "サンプル文字列",
            "totalWordsCount": 123,
            "outputMode": {},
            "rawOutputFormat": null,
            "groups": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "tools": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "skills": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "agentMode": {},
            "numberOfRetrievedChunks": 123,
            "enableEvaluation": true,
            "enableInlineCitations": true,
            "enableCodeInterpreter": true,
            "customMaxLlmOutputTokens": 123,
            "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
            "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
            "sttConfig": null,
            "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
            "ttsConfig": null,
            "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
            "realtimeConfig": null,
            "thinkingConfig": null,
            "enableToolSearching": true
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 201**

**レスポンス構造の例**

```typescript
{
  "id": string (uuid)
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "updatedAt": string (timestamp)
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
      "displayName": string
      "toolType": string
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
  "isMultimodalLlm": boolean // Whether the chatbot LLM supports multimodal (read-only)
}
```

**レスポンスの例**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "レスポンス文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "updatedAt": "レスポンス文字列",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "レスポンス文字列",
  "unanswerableTemplate": "レスポンス文字列",
  "totalWordsCount": 456,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列",
      "displayName": "レスポンス文字列",
      "toolType": "レスポンス文字列"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 456,
  "enableEvaluation": false,
  "enableInlineCitations": false,
  "enableCodeInterpreter": false,
  "customMaxLlmOutputTokens": 456,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": false,
  "isMultimodalLlm": false
}
```

***

### AI アシスタントを新規作成 <a href="#ai" id="ai"></a>

POST `/api/v1/chatbots/`

#### リクエスト内容

**リクエストパラメータ**

| フィールド                    | 種類                   | 必須 | 説明                                                                                                                  |
| ------------------------ | -------------------- | -- | ------------------------------------------------------------------------------------------------------------------- |
| name                     | string               | 必須 | ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます                                                       |
| rag                      | string (uuid)        | 任意 | RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します                                                            |
| largeLanguageModel       | string (uuid)        | 必須 | ボットが使用する大規模言語モデルです。回答の生成に使用します                                                                                      |
| embeddingModel           | string (uuid)        | 任意 | テキストをベクトル化するための埋め込みモデルです（任意項目）                                                                                      |
| rerankerModel            | string (uuid)        | 任意 | 再ランキングに使用するモデルです（任意項目）                                                                                              |
| instructions             | string               | 任意 | ボットの役割指示です。ボットの役割や振る舞いを記述します                                                                                        |
| knowledgeBases           | array\[IdName]       | 任意 | ボットがアクセスできるナレッジベースの一覧です                                                                                             |
| databases                | array\[IdName]       | 任意 | ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用）                                                                      |
| organization             | string (uuid)        | 任意 | ボットが所属する組織です。空の場合は個人用ボットになります                                                                                       |
| builtInWorkflow          | string (uuid)        | 任意 | 組み込みワークフローです。あらかじめ定義された処理フローに使用します                                                                                  |
| replyMode                | object               | 任意 | 返信モード：通常返信またはストリーミング返信 `normal`: 通常 ; `template`: テンプレート ; `hybrid`: ハイブリッド ; `workflow`: ワークフロー ; `agent`: エージェント; |
| template                 | string               | 任意 | テンプレートモード・ハイブリッドモードで使用するテンプレートです                                                                                    |
| unanswerableTemplate     | string               | 任意 | テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです                                                                           |
| totalWordsCount          | integer (int64)      | 任意 | 累計の総使用文字数です                                                                                                         |
| outputMode               | object               | 任意 | 出力モード：テキスト、表、またはカスタム形式 `text`: テキスト ; `json_schema`: JSON Schema;                                                   |
| rawOutputFormat          | object               | 任意 | カスタム出力形式の JSON 構造定義です                                                                                               |
| groups                   | array\[IdName]       | 任意 | ボットがアクセスできるグループの一覧です                                                                                                |
| tools                    | array\[ToolSummary]  | 任意 | ボットが使用できるツールの一覧です                                                                                                   |
| skills                   | array\[SkillSummary] | 任意 | ボットに関連付けられたスキルの一覧です                                                                                                 |
| agentMode                | object               | 任意 | エージェントモード：通常、SQL、またはワークフローモード `normal`: 通常 ; `canvas`: キャンバス;                                                       |
| numberOfRetrievedChunks  | integer              | 任意 | 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です                                                                                   |
| enableEvaluation         | boolean              | 任意 |                                                                                                                     |
| enableInlineCitations    | boolean              | 任意 | インライン引用機能を有効にします。回答内に \[1]\[2] 形式の引用マークを挿入します                                                                       |
| enableCodeInterpreter    | boolean              | 任意 | 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます                                                              |
| customMaxLlmOutputTokens | integer              | 任意 | LLM の最大出力トークン数のカスタム値です。最小値は 512 です                                                                                  |
| voiceAgentType           | string (uuid)        | 任意 | 音声エージェントモードの種類です                                                                                                    |
| sttProvider              | string (uuid)        | 任意 | Speech-to-Text サービスのプロバイダーです                                                                                        |
| sttConfig                | object               | 任意 | STT の実際の設定パラメータです（JSON 形式）                                                                                          |
| ttsProvider              | string (uuid)        | 任意 | Text-to-Speech サービスのプロバイダーです                                                                                        |
| ttsConfig                | object               | 任意 | TTS の実際の設定パラメータです（JSON 形式）                                                                                          |
| realtimeProvider         | string (uuid)        | 任意 | Realtime エンドツーエンド音声モデルのプロバイダーです                                                                                     |
| realtimeConfig           | object               | 任意 | Realtime の実際の設定パラメータです（JSON 形式）                                                                                     |
| thinkingConfig           | object               | 任意 | Thinking effort の設定です（JSON 形式）                                                                                      |
| enableToolSearching      | boolean              | 任意 | 動的ツール検索機能を有効にします。agent が tool\_searching\_tool を通じてツールを動的に発見・読み込みできるようになります                                         |

**リクエスト構造の例**

```typescript
{
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
    }
  ]
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
}
```

**リクエストの例**

```json
{
  "name": "サンプル名",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "サンプル文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "サンプル文字列",
  "unanswerableTemplate": "サンプル文字列",
  "totalWordsCount": 123,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 123,
  "enableEvaluation": true,
  "enableInlineCitations": true,
  "enableCodeInterpreter": true,
  "customMaxLlmOutputTokens": 123,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": true
}
```

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X POST "https://api.maiagent.ai/api/v1/chatbots/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  }'

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
};

// リクエスト内容 (payload)
const data = {
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  };

axios.post("https://api.maiagent.ai/api/v1/chatbots/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/v1/chatbots/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "rag": "550e8400-e29b-41d4-a716-446655440000",
      "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
      "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
      "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
      "instructions": "サンプル文字列",
      "knowledgeBases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "databases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
      "replyMode": {},
      "template": "サンプル文字列",
      "unanswerableTemplate": "サンプル文字列",
      "totalWordsCount": 123,
      "outputMode": {},
      "rawOutputFormat": null,
      "groups": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "tools": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "skills": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "agentMode": {},
      "numberOfRetrievedChunks": 123,
      "enableEvaluation": true,
      "enableInlineCitations": true,
      "enableCodeInterpreter": true,
      "customMaxLlmOutputTokens": 123,
      "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
      "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
      "sttConfig": null,
      "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
      "ttsConfig": null,
      "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
      "realtimeConfig": null,
      "thinkingConfig": null,
      "enableToolSearching": true
    }

response = requests.post(url, json=data, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->post("https://api.maiagent.ai/api/v1/chatbots/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "rag": "550e8400-e29b-41d4-a716-446655440000",
            "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
            "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
            "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
            "instructions": "サンプル文字列",
            "knowledgeBases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "databases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
            "replyMode": {},
            "template": "サンプル文字列",
            "unanswerableTemplate": "サンプル文字列",
            "totalWordsCount": 123,
            "outputMode": {},
            "rawOutputFormat": null,
            "groups": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "tools": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "skills": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "agentMode": {},
            "numberOfRetrievedChunks": 123,
            "enableEvaluation": true,
            "enableInlineCitations": true,
            "enableCodeInterpreter": true,
            "customMaxLlmOutputTokens": 123,
            "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
            "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
            "sttConfig": null,
            "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
            "ttsConfig": null,
            "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
            "realtimeConfig": null,
            "thinkingConfig": null,
            "enableToolSearching": true
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 201**

**レスポンス構造の例**

```typescript
{
  "id": string (uuid)
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "updatedAt": string (timestamp)
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
      "displayName": string
      "toolType": string
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
  "isMultimodalLlm": boolean // Whether the chatbot LLM supports multimodal (read-only)
}
```

**レスポンスの例**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "レスポンス文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "updatedAt": "レスポンス文字列",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "レスポンス文字列",
  "unanswerableTemplate": "レスポンス文字列",
  "totalWordsCount": 456,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列",
      "displayName": "レスポンス文字列",
      "toolType": "レスポンス文字列"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 456,
  "enableEvaluation": false,
  "enableInlineCitations": false,
  "enableCodeInterpreter": false,
  "customMaxLlmOutputTokens": 456,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": false,
  "isMultimodalLlm": false
}
```

***

### Embedding Model の一覧を取得 <a href="#embedding-model" id="embedding-model"></a>

GET `/api/embedding-models/`

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X GET "https://api.maiagent.ai/api/embedding-models/" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

axios.get("https://api.maiagent.ai/api/embedding-models/", config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/embedding-models/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.get(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->get("https://api.maiagent.ai/api/embedding-models/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
[
  {
    "id": string (uuid)
    "name": string
    "isDefault"?: boolean // 任意
    "isMultimodal"?: boolean // Whether this embedding model supports multimodal (text + image) embeddings (任意)
    "icon": 
    {
      "id": string (uuid)
      "name": string
      "image": string (uri)
    }
  }
]
```

**レスポンスの例**

```json
[
  {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "レスポンス文字列",
    "isDefault": false,
    "isMultimodal": false,
    "icon": {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "image": "https://example.com/file.jpg"
    }
  }
]
```

***

### Embedding Model の一覧を取得 <a href="#embedding-model" id="embedding-model"></a>

GET `/api/v1/embedding-models/`

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/embedding-models/" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

axios.get("https://api.maiagent.ai/api/v1/embedding-models/", config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/v1/embedding-models/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.get(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->get("https://api.maiagent.ai/api/v1/embedding-models/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
[
  {
    "id": string (uuid)
    "name": string
    "isDefault"?: boolean // 任意
    "isMultimodal"?: boolean // Whether this embedding model supports multimodal (text + image) embeddings (任意)
    "icon": 
    {
      "id": string (uuid)
      "name": string
      "image": string (uri)
    }
  }
]
```

**レスポンスの例**

```json
[
  {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "レスポンス文字列",
    "isDefault": false,
    "isMultimodal": false,
    "icon": {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "image": "https://example.com/file.jpg"
    }
  }
]
```

***

### Reranker Model の一覧を取得 <a href="#reranker-model" id="reranker-model"></a>

GET `/api/reranker-models/`

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X GET "https://api.maiagent.ai/api/reranker-models/" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

axios.get("https://api.maiagent.ai/api/reranker-models/", config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/reranker-models/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.get(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->get("https://api.maiagent.ai/api/reranker-models/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
[
  {
    "id": string (uuid)
    "name": string
    "isDefault"?: boolean // 任意
    "icon": 
    {
      "id": string (uuid)
      "name": string
      "image": string (uri)
    }
  }
]
```

**レスポンスの例**

```json
[
  {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "レスポンス文字列",
    "isDefault": false,
    "icon": {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "image": "https://example.com/file.jpg"
    }
  }
]
```

***

### Reranker Model の一覧を取得 <a href="#reranker-model" id="reranker-model"></a>

GET `/api/v1/reranker-models/`

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/reranker-models/" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

axios.get("https://api.maiagent.ai/api/v1/reranker-models/", config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/v1/reranker-models/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.get(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->get("https://api.maiagent.ai/api/v1/reranker-models/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
[
  {
    "id": string (uuid)
    "name": string
    "isDefault"?: boolean // 任意
    "icon": 
    {
      "id": string (uuid)
      "name": string
      "image": string (uri)
    }
  }
]
```

**レスポンスの例**

```json
[
  {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "レスポンス文字列",
    "isDefault": false,
    "icon": {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "image": "https://example.com/file.jpg"
    }
  }
]
```

***

### 大規模言語モデルの一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/large-language-models/`

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X GET "https://api.maiagent.ai/api/large-language-models/" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

axios.get("https://api.maiagent.ai/api/large-language-models/", config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/large-language-models/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.get(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->get("https://api.maiagent.ai/api/large-language-models/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
[
  {
    "id": string (uuid)
    "name": string
    "contextWindow"?: integer // この値は OpenAILike または Ollama のモデルでのみ使用され、その他のモデルでは使用されません (任意)
    "isDefault"?: boolean // 任意
    "provider": string
    "icon": 
    {
      "id": string (uuid)
      "name": string
      "image": string (uri)
    }
    "isMultiModalSupport"?: boolean // 任意
    "isFunctionalCallingAvailable"?: boolean // 任意
    "isToolCallingAvailable"?: boolean // 任意
    "isTemplateAvailable": boolean
    "isOutputFormatAvailable": boolean
    "isThinkingAvailable"?: boolean // 任意
    "thinkingConfigSchema": object
    "replyMode": [
      string
    ]
    "outputMode": [
      string
    ]
    "agentMode": [
      string
    ]
    "maxTokens"?: integer // 任意
    "minTokens": integer
  }
]
```

**レスポンスの例**

```json
[
  {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "レスポンス文字列",
    "contextWindow": 456,
    "isDefault": false,
    "provider": "レスポンス文字列",
    "icon": {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "image": "https://example.com/file.jpg"
    },
    "isMultiModalSupport": false,
    "isFunctionalCallingAvailable": false,
    "isToolCallingAvailable": false,
    "isTemplateAvailable": false,
    "isOutputFormatAvailable": false,
    "isThinkingAvailable": false,
    "thinkingConfigSchema": {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス例の名前",
      "description": "レスポンス例の説明"
    },
    "replyMode": [
      "レスポンス文字列"
    ],
    "outputMode": [
      "レスポンス文字列"
    ],
    "agentMode": [
      "レスポンス文字列"
    ],
    "maxTokens": 456,
    "minTokens": 456
  }
]
```

***

### 大規模言語モデルの一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/v1/large-language-models/`

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/large-language-models/" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

axios.get("https://api.maiagent.ai/api/v1/large-language-models/", config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/v1/large-language-models/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.get(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->get("https://api.maiagent.ai/api/v1/large-language-models/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
[
  {
    "id": string (uuid)
    "name": string
    "contextWindow"?: integer // この値は OpenAILike または Ollama のモデルでのみ使用され、その他のモデルでは使用されません (任意)
    "isDefault"?: boolean // 任意
    "provider": string
    "icon": 
    {
      "id": string (uuid)
      "name": string
      "image": string (uri)
    }
    "isMultiModalSupport"?: boolean // 任意
    "isFunctionalCallingAvailable"?: boolean // 任意
    "isToolCallingAvailable"?: boolean // 任意
    "isTemplateAvailable": boolean
    "isOutputFormatAvailable": boolean
    "isThinkingAvailable"?: boolean // 任意
    "thinkingConfigSchema": object
    "replyMode": [
      string
    ]
    "outputMode": [
      string
    ]
    "agentMode": [
      string
    ]
    "maxTokens"?: integer // 任意
    "minTokens": integer
  }
]
```

**レスポンスの例**

```json
[
  {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "レスポンス文字列",
    "contextWindow": 456,
    "isDefault": false,
    "provider": "レスポンス文字列",
    "icon": {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "image": "https://example.com/file.jpg"
    },
    "isMultiModalSupport": false,
    "isFunctionalCallingAvailable": false,
    "isToolCallingAvailable": false,
    "isTemplateAvailable": false,
    "isOutputFormatAvailable": false,
    "isThinkingAvailable": false,
    "thinkingConfigSchema": {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス例の名前",
      "description": "レスポンス例の説明"
    },
    "replyMode": [
      "レスポンス文字列"
    ],
    "outputMode": [
      "レスポンス文字列"
    ],
    "agentMode": [
      "レスポンス文字列"
    ],
    "maxTokens": 456,
    "minTokens": 456
  }
]
```

***

### AI アシスタントの一覧を取得 <a href="#ai" id="ai"></a>

GET `/api/chatbots/`

#### パラメータ

| パラメータ名               | 必須 | 種類      | 説明                                             |
| -------------------- | -- | ------- | ---------------------------------------------- |
| `largeLanguageModel` | ❌  | string  |                                                |
| `page`               | ❌  | integer | A page number within the paginated result set. |
| `pageSize`           | ❌  | integer | Number of results to return per page.          |
| `pagination`         | ❌  | string  | ページネーションするかどうか (true/false)                    |
| `query`              | ❌  | string  |                                                |
| `replyMode`          | ❌  | string  |                                                |

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X GET "https://api.maiagent.ai/api/chatbots/?largeLanguageModel=550e8400-e29b-41d4-a716-446655440000&page=1&pageSize=1&pagination=example&query=example&replyMode=example" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

axios.get("https://api.maiagent.ai/api/chatbots/?largeLanguageModel=550e8400-e29b-41d4-a716-446655440000&page=1&pageSize=1&pagination=example&query=example&replyMode=example", config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/chatbots/?largeLanguageModel=550e8400-e29b-41d4-a716-446655440000&page=1&pageSize=1&pagination=example&query=example&replyMode=example"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.get(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->get("https://api.maiagent.ai/api/chatbots/?largeLanguageModel=550e8400-e29b-41d4-a716-446655440000&page=1&pageSize=1&pagination=example&query=example&replyMode=example", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
{
  "count": integer
  "next"?: string (uri) // 任意
  "previous"?: string (uri) // 任意
  "results": [
    {
      "id": string (uuid)
      "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
      "groups": [
        {
          "id": string (uuid)
          "name": string
        }
      ]
      "rag": { // RAG の基本シリアライザーです
      {
        "id": string (uuid)
        "name": string
      }
      }
      "largeLanguageModel": { // LLM の基本シリアライザーです。基本的なフィールドのみを含みます
      {
        "id": string (uuid)
        "name": string
      }
      }
      "embeddingModel": {
      {
        "id": string (uuid)
        "name": string
        "isDefault"?: boolean // 任意
        "isMultimodal"?: boolean // Whether this embedding model supports multimodal (text + image) embeddings (任意)
        "icon": 
        {
          "id": string (uuid)
          "name": string
          "image": string (uri)
        }
      }
      }
      "rerankerModel": {
      {
        "id": string (uuid)
        "name": string
        "isDefault"?: boolean // 任意
        "icon": 
        {
          "id": string (uuid)
          "name": string
          "image": string (uri)
        }
      }
      }
      "knowledgeBases": [
        {
          "id": string (uuid)
          "name": string
        }
      ]
      "tools": [
        {
          "id": string (uuid)
          "name": string
          "description": string
          "displayName": string
          "toolType": string
        }
      ]
      "skills": [
        {
          "id": string (uuid)
          "name": string
          "description": string
        }
      ]
      "agentMode"?:  // エージェントモードです。キャンバスモードと通常モードがあり、キャンバスモードはキャンバスを使って回答を生成し、通常モードは通常の方法で回答を生成します

* `normal` - 通常
* `canvas` - キャンバス (任意)
      {
      }
      "replyMode"?:  // 返信モードです。通常モード、テンプレートモード、ハイブリッドモード、ワークフローモード、Agent モードがあります

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
      {
      }
      "updatedAt": string (timestamp)
      "enableEvaluation"?: boolean // 任意
      "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
      "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
      "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
      "numberOfRetrievedChunks"?: integer // 任意
      "isMultimodalLlm": boolean // Return whether the chatbot's LLM supports multimodal.
      "canUpdate": boolean // Return whether the current user can update this resource.
      "canDelete": boolean // Return whether the current user can delete this resource.
    }
  ]
}
```

**レスポンスの例**

```json
{
  "count": 123,
  "next": "http://api.example.org/accounts/?page=4",
  "previous": "http://api.example.org/accounts/?page=2",
  "results": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "groups": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列"
        }
      ],
      "rag": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列"
      },
      "largeLanguageModel": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列"
      },
      "embeddingModel": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "isDefault": false,
        "isMultimodal": false,
        "icon": {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列",
          "image": "https://example.com/file.jpg"
        }
      },
      "rerankerModel": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "isDefault": false,
        "icon": {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列",
          "image": "https://example.com/file.jpg"
        }
      },
      "knowledgeBases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列"
        }
      ],
      "tools": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列",
          "description": "レスポンス文字列",
          "displayName": "レスポンス文字列",
          "toolType": "レスポンス文字列"
        }
      ],
      "skills": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列",
          "description": "レスポンス文字列"
        }
      ],
      "agentMode": {},
      "replyMode": {},
      "updatedAt": "レスポンス文字列",
      "enableEvaluation": false,
      "enableInlineCitations": false,
      "enableToolSearching": false,
      "enableCodeInterpreter": false,
      "numberOfRetrievedChunks": 456,
      "isMultimodalLlm": false,
      "canUpdate": false,
      "canDelete": false
    }
  ]
}
```

***

### AI アシスタントの一覧を取得 <a href="#ai" id="ai"></a>

GET `/api/v1/chatbots/`

#### パラメータ

| パラメータ名               | 必須 | 種類      | 説明                                             |
| -------------------- | -- | ------- | ---------------------------------------------- |
| `largeLanguageModel` | ❌  | string  |                                                |
| `page`               | ❌  | integer | A page number within the paginated result set. |
| `pageSize`           | ❌  | integer | Number of results to return per page.          |
| `pagination`         | ❌  | string  | ページネーションするかどうか (true/false)                    |
| `query`              | ❌  | string  |                                                |
| `replyMode`          | ❌  | string  |                                                |

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/chatbots/?largeLanguageModel=550e8400-e29b-41d4-a716-446655440000&page=1&pageSize=1&pagination=example&query=example&replyMode=example" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

axios.get("https://api.maiagent.ai/api/v1/chatbots/?largeLanguageModel=550e8400-e29b-41d4-a716-446655440000&page=1&pageSize=1&pagination=example&query=example&replyMode=example", config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/v1/chatbots/?largeLanguageModel=550e8400-e29b-41d4-a716-446655440000&page=1&pageSize=1&pagination=example&query=example&replyMode=example"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.get(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->get("https://api.maiagent.ai/api/v1/chatbots/?largeLanguageModel=550e8400-e29b-41d4-a716-446655440000&page=1&pageSize=1&pagination=example&query=example&replyMode=example", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
{
  "count": integer
  "next"?: string (uri) // 任意
  "previous"?: string (uri) // 任意
  "results": [
    {
      "id": string (uuid)
      "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
      "groups": [
        {
          "id": string (uuid)
          "name": string
        }
      ]
      "rag": { // RAG の基本シリアライザーです
      {
        "id": string (uuid)
        "name": string
      }
      }
      "largeLanguageModel": { // LLM の基本シリアライザーです。基本的なフィールドのみを含みます
      {
        "id": string (uuid)
        "name": string
      }
      }
      "embeddingModel": {
      {
        "id": string (uuid)
        "name": string
        "isDefault"?: boolean // 任意
        "isMultimodal"?: boolean // Whether this embedding model supports multimodal (text + image) embeddings (任意)
        "icon": 
        {
          "id": string (uuid)
          "name": string
          "image": string (uri)
        }
      }
      }
      "rerankerModel": {
      {
        "id": string (uuid)
        "name": string
        "isDefault"?: boolean // 任意
        "icon": 
        {
          "id": string (uuid)
          "name": string
          "image": string (uri)
        }
      }
      }
      "knowledgeBases": [
        {
          "id": string (uuid)
          "name": string
        }
      ]
      "tools": [
        {
          "id": string (uuid)
          "name": string
          "description": string
          "displayName": string
          "toolType": string
        }
      ]
      "skills": [
        {
          "id": string (uuid)
          "name": string
          "description": string
        }
      ]
      "agentMode"?:  // エージェントモードです。キャンバスモードと通常モードがあり、キャンバスモードはキャンバスを使って回答を生成し、通常モードは通常の方法で回答を生成します

* `normal` - 通常
* `canvas` - キャンバス (任意)
      {
      }
      "replyMode"?:  // 返信モードです。通常モード、テンプレートモード、ハイブリッドモード、ワークフローモード、Agent モードがあります

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
      {
      }
      "updatedAt": string (timestamp)
      "enableEvaluation"?: boolean // 任意
      "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
      "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
      "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
      "numberOfRetrievedChunks"?: integer // 任意
      "isMultimodalLlm": boolean // Return whether the chatbot's LLM supports multimodal.
      "canUpdate": boolean // Return whether the current user can update this resource.
      "canDelete": boolean // Return whether the current user can delete this resource.
    }
  ]
}
```

**レスポンスの例**

```json
{
  "count": 123,
  "next": "http://api.example.org/accounts/?page=4",
  "previous": "http://api.example.org/accounts/?page=2",
  "results": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "groups": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列"
        }
      ],
      "rag": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列"
      },
      "largeLanguageModel": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列"
      },
      "embeddingModel": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "isDefault": false,
        "isMultimodal": false,
        "icon": {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列",
          "image": "https://example.com/file.jpg"
        }
      },
      "rerankerModel": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "isDefault": false,
        "icon": {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列",
          "image": "https://example.com/file.jpg"
        }
      },
      "knowledgeBases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列"
        }
      ],
      "tools": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列",
          "description": "レスポンス文字列",
          "displayName": "レスポンス文字列",
          "toolType": "レスポンス文字列"
        }
      ],
      "skills": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンス文字列",
          "description": "レスポンス文字列"
        }
      ],
      "agentMode": {},
      "replyMode": {},
      "updatedAt": "レスポンス文字列",
      "enableEvaluation": false,
      "enableInlineCitations": false,
      "enableToolSearching": false,
      "enableCodeInterpreter": false,
      "numberOfRetrievedChunks": 456,
      "isMultimodalLlm": false,
      "canUpdate": false,
      "canDelete": false
    }
  ]
}
```

***

### 特定の AI アシスタントを取得 <a href="#ai" id="ai"></a>

GET `/api/chatbots/{id}/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X GET "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

axios.get("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/", config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.get(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->get("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
{
  "id": string (uuid)
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "updatedAt": string (timestamp)
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
      "displayName": string
      "toolType": string
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
  "isMultimodalLlm": boolean // Whether the chatbot LLM supports multimodal (read-only)
}
```

**レスポンスの例**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "レスポンス文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "updatedAt": "レスポンス文字列",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "レスポンス文字列",
  "unanswerableTemplate": "レスポンス文字列",
  "totalWordsCount": 456,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列",
      "displayName": "レスポンス文字列",
      "toolType": "レスポンス文字列"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 456,
  "enableEvaluation": false,
  "enableInlineCitations": false,
  "enableCodeInterpreter": false,
  "customMaxLlmOutputTokens": 456,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": false,
  "isMultimodalLlm": false
}
```

***

### 特定の AI アシスタントを取得 <a href="#ai" id="ai"></a>

GET `/api/v1/chatbots/{id}/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

axios.get("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/", config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.get(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->get("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
{
  "id": string (uuid)
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "updatedAt": string (timestamp)
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
      "displayName": string
      "toolType": string
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
  "isMultimodalLlm": boolean // Whether the chatbot LLM supports multimodal (read-only)
}
```

**レスポンスの例**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "レスポンス文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "updatedAt": "レスポンス文字列",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "レスポンス文字列",
  "unanswerableTemplate": "レスポンス文字列",
  "totalWordsCount": 456,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列",
      "displayName": "レスポンス文字列",
      "toolType": "レスポンス文字列"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 456,
  "enableEvaluation": false,
  "enableInlineCitations": false,
  "enableCodeInterpreter": false,
  "customMaxLlmOutputTokens": 456,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": false,
  "isMultimodalLlm": false
}
```

***

### AI アシスタントを更新 <a href="#ai" id="ai"></a>

PUT `/api/chatbots/{id}/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### リクエスト内容

**リクエストパラメータ**

| フィールド                    | 種類                   | 必須 | 説明                                                                                                                  |
| ------------------------ | -------------------- | -- | ------------------------------------------------------------------------------------------------------------------- |
| name                     | string               | 必須 | ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます                                                       |
| rag                      | string (uuid)        | 任意 | RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します                                                            |
| largeLanguageModel       | string (uuid)        | 必須 | ボットが使用する大規模言語モデルです。回答の生成に使用します                                                                                      |
| embeddingModel           | string (uuid)        | 任意 | テキストをベクトル化するための埋め込みモデルです（任意項目）                                                                                      |
| rerankerModel            | string (uuid)        | 任意 | 再ランキングに使用するモデルです（任意項目）                                                                                              |
| instructions             | string               | 任意 | ボットの役割指示です。ボットの役割や振る舞いを記述します                                                                                        |
| knowledgeBases           | array\[IdName]       | 任意 | ボットがアクセスできるナレッジベースの一覧です                                                                                             |
| databases                | array\[IdName]       | 任意 | ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用）                                                                      |
| organization             | string (uuid)        | 任意 | ボットが所属する組織です。空の場合は個人用ボットになります                                                                                       |
| builtInWorkflow          | string (uuid)        | 任意 | 組み込みワークフローです。あらかじめ定義された処理フローに使用します                                                                                  |
| replyMode                | object               | 任意 | 返信モード：通常返信またはストリーミング返信 `normal`: 通常 ; `template`: テンプレート ; `hybrid`: ハイブリッド ; `workflow`: ワークフロー ; `agent`: エージェント; |
| template                 | string               | 任意 | テンプレートモード・ハイブリッドモードで使用するテンプレートです                                                                                    |
| unanswerableTemplate     | string               | 任意 | テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです                                                                           |
| totalWordsCount          | integer (int64)      | 任意 | 累計の総使用文字数です                                                                                                         |
| outputMode               | object               | 任意 | 出力モード：テキスト、表、またはカスタム形式 `text`: テキスト ; `json_schema`: JSON Schema;                                                   |
| rawOutputFormat          | object               | 任意 | カスタム出力形式の JSON 構造定義です                                                                                               |
| groups                   | array\[IdName]       | 任意 | ボットがアクセスできるグループの一覧です                                                                                                |
| tools                    | array\[ToolSummary]  | 任意 | ボットが使用できるツールの一覧です                                                                                                   |
| skills                   | array\[SkillSummary] | 任意 | ボットに関連付けられたスキルの一覧です                                                                                                 |
| agentMode                | object               | 任意 | エージェントモード：通常、SQL、またはワークフローモード `normal`: 通常 ; `canvas`: キャンバス;                                                       |
| numberOfRetrievedChunks  | integer              | 任意 | 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です                                                                                   |
| enableEvaluation         | boolean              | 任意 |                                                                                                                     |
| enableInlineCitations    | boolean              | 任意 | インライン引用機能を有効にします。回答内に \[1]\[2] 形式の引用マークを挿入します                                                                       |
| enableCodeInterpreter    | boolean              | 任意 | 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます                                                              |
| customMaxLlmOutputTokens | integer              | 任意 | LLM の最大出力トークン数のカスタム値です。最小値は 512 です                                                                                  |
| voiceAgentType           | string (uuid)        | 任意 | 音声エージェントモードの種類です                                                                                                    |
| sttProvider              | string (uuid)        | 任意 | Speech-to-Text サービスのプロバイダーです                                                                                        |
| sttConfig                | object               | 任意 | STT の実際の設定パラメータです（JSON 形式）                                                                                          |
| ttsProvider              | string (uuid)        | 任意 | Text-to-Speech サービスのプロバイダーです                                                                                        |
| ttsConfig                | object               | 任意 | TTS の実際の設定パラメータです（JSON 形式）                                                                                          |
| realtimeProvider         | string (uuid)        | 任意 | Realtime エンドツーエンド音声モデルのプロバイダーです                                                                                     |
| realtimeConfig           | object               | 任意 | Realtime の実際の設定パラメータです（JSON 形式）                                                                                     |
| thinkingConfig           | object               | 任意 | Thinking effort の設定です（JSON 形式）                                                                                      |
| enableToolSearching      | boolean              | 任意 | 動的ツール検索機能を有効にします。agent が tool\_searching\_tool を通じてツールを動的に発見・読み込みできるようになります                                         |

**リクエスト構造の例**

```typescript
{
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
    }
  ]
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
}
```

**リクエストの例**

```json
{
  "name": "サンプル名",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "サンプル文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "サンプル文字列",
  "unanswerableTemplate": "サンプル文字列",
  "totalWordsCount": 123,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 123,
  "enableEvaluation": true,
  "enableInlineCitations": true,
  "enableCodeInterpreter": true,
  "customMaxLlmOutputTokens": 123,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": true
}
```

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X PUT "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  }'

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
};

// リクエスト内容 (payload)
const data = {
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  };

axios.put("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "rag": "550e8400-e29b-41d4-a716-446655440000",
      "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
      "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
      "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
      "instructions": "サンプル文字列",
      "knowledgeBases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "databases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
      "replyMode": {},
      "template": "サンプル文字列",
      "unanswerableTemplate": "サンプル文字列",
      "totalWordsCount": 123,
      "outputMode": {},
      "rawOutputFormat": null,
      "groups": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "tools": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "skills": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "agentMode": {},
      "numberOfRetrievedChunks": 123,
      "enableEvaluation": true,
      "enableInlineCitations": true,
      "enableCodeInterpreter": true,
      "customMaxLlmOutputTokens": 123,
      "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
      "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
      "sttConfig": null,
      "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
      "ttsConfig": null,
      "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
      "realtimeConfig": null,
      "thinkingConfig": null,
      "enableToolSearching": true
    }

response = requests.put(url, json=data, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->put("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "rag": "550e8400-e29b-41d4-a716-446655440000",
            "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
            "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
            "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
            "instructions": "サンプル文字列",
            "knowledgeBases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "databases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
            "replyMode": {},
            "template": "サンプル文字列",
            "unanswerableTemplate": "サンプル文字列",
            "totalWordsCount": 123,
            "outputMode": {},
            "rawOutputFormat": null,
            "groups": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "tools": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "skills": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "agentMode": {},
            "numberOfRetrievedChunks": 123,
            "enableEvaluation": true,
            "enableInlineCitations": true,
            "enableCodeInterpreter": true,
            "customMaxLlmOutputTokens": 123,
            "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
            "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
            "sttConfig": null,
            "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
            "ttsConfig": null,
            "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
            "realtimeConfig": null,
            "thinkingConfig": null,
            "enableToolSearching": true
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
{
  "id": string (uuid)
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "updatedAt": string (timestamp)
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
      "displayName": string
      "toolType": string
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
  "isMultimodalLlm": boolean // Whether the chatbot LLM supports multimodal (read-only)
}
```

**レスポンスの例**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "レスポンス文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "updatedAt": "レスポンス文字列",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "レスポンス文字列",
  "unanswerableTemplate": "レスポンス文字列",
  "totalWordsCount": 456,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列",
      "displayName": "レスポンス文字列",
      "toolType": "レスポンス文字列"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 456,
  "enableEvaluation": false,
  "enableInlineCitations": false,
  "enableCodeInterpreter": false,
  "customMaxLlmOutputTokens": 456,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": false,
  "isMultimodalLlm": false
}
```

***

### AI アシスタントを更新 <a href="#ai" id="ai"></a>

PUT `/api/v1/chatbots/{id}/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### リクエスト内容

**リクエストパラメータ**

| フィールド                    | 種類                   | 必須 | 説明                                                                                                                  |
| ------------------------ | -------------------- | -- | ------------------------------------------------------------------------------------------------------------------- |
| name                     | string               | 必須 | ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます                                                       |
| rag                      | string (uuid)        | 任意 | RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します                                                            |
| largeLanguageModel       | string (uuid)        | 必須 | ボットが使用する大規模言語モデルです。回答の生成に使用します                                                                                      |
| embeddingModel           | string (uuid)        | 任意 | テキストをベクトル化するための埋め込みモデルです（任意項目）                                                                                      |
| rerankerModel            | string (uuid)        | 任意 | 再ランキングに使用するモデルです（任意項目）                                                                                              |
| instructions             | string               | 任意 | ボットの役割指示です。ボットの役割や振る舞いを記述します                                                                                        |
| knowledgeBases           | array\[IdName]       | 任意 | ボットがアクセスできるナレッジベースの一覧です                                                                                             |
| databases                | array\[IdName]       | 任意 | ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用）                                                                      |
| organization             | string (uuid)        | 任意 | ボットが所属する組織です。空の場合は個人用ボットになります                                                                                       |
| builtInWorkflow          | string (uuid)        | 任意 | 組み込みワークフローです。あらかじめ定義された処理フローに使用します                                                                                  |
| replyMode                | object               | 任意 | 返信モード：通常返信またはストリーミング返信 `normal`: 通常 ; `template`: テンプレート ; `hybrid`: ハイブリッド ; `workflow`: ワークフロー ; `agent`: エージェント; |
| template                 | string               | 任意 | テンプレートモード・ハイブリッドモードで使用するテンプレートです                                                                                    |
| unanswerableTemplate     | string               | 任意 | テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです                                                                           |
| totalWordsCount          | integer (int64)      | 任意 | 累計の総使用文字数です                                                                                                         |
| outputMode               | object               | 任意 | 出力モード：テキスト、表、またはカスタム形式 `text`: テキスト ; `json_schema`: JSON Schema;                                                   |
| rawOutputFormat          | object               | 任意 | カスタム出力形式の JSON 構造定義です                                                                                               |
| groups                   | array\[IdName]       | 任意 | ボットがアクセスできるグループの一覧です                                                                                                |
| tools                    | array\[ToolSummary]  | 任意 | ボットが使用できるツールの一覧です                                                                                                   |
| skills                   | array\[SkillSummary] | 任意 | ボットに関連付けられたスキルの一覧です                                                                                                 |
| agentMode                | object               | 任意 | エージェントモード：通常、SQL、またはワークフローモード `normal`: 通常 ; `canvas`: キャンバス;                                                       |
| numberOfRetrievedChunks  | integer              | 任意 | 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です                                                                                   |
| enableEvaluation         | boolean              | 任意 |                                                                                                                     |
| enableInlineCitations    | boolean              | 任意 | インライン引用機能を有効にします。回答内に \[1]\[2] 形式の引用マークを挿入します                                                                       |
| enableCodeInterpreter    | boolean              | 任意 | 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます                                                              |
| customMaxLlmOutputTokens | integer              | 任意 | LLM の最大出力トークン数のカスタム値です。最小値は 512 です                                                                                  |
| voiceAgentType           | string (uuid)        | 任意 | 音声エージェントモードの種類です                                                                                                    |
| sttProvider              | string (uuid)        | 任意 | Speech-to-Text サービスのプロバイダーです                                                                                        |
| sttConfig                | object               | 任意 | STT の実際の設定パラメータです（JSON 形式）                                                                                          |
| ttsProvider              | string (uuid)        | 任意 | Text-to-Speech サービスのプロバイダーです                                                                                        |
| ttsConfig                | object               | 任意 | TTS の実際の設定パラメータです（JSON 形式）                                                                                          |
| realtimeProvider         | string (uuid)        | 任意 | Realtime エンドツーエンド音声モデルのプロバイダーです                                                                                     |
| realtimeConfig           | object               | 任意 | Realtime の実際の設定パラメータです（JSON 形式）                                                                                     |
| thinkingConfig           | object               | 任意 | Thinking effort の設定です（JSON 形式）                                                                                      |
| enableToolSearching      | boolean              | 任意 | 動的ツール検索機能を有効にします。agent が tool\_searching\_tool を通じてツールを動的に発見・読み込みできるようになります                                         |

**リクエスト構造の例**

```typescript
{
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
    }
  ]
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
}
```

**リクエストの例**

```json
{
  "name": "サンプル名",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "サンプル文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "サンプル文字列",
  "unanswerableTemplate": "サンプル文字列",
  "totalWordsCount": 123,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 123,
  "enableEvaluation": true,
  "enableInlineCitations": true,
  "enableCodeInterpreter": true,
  "customMaxLlmOutputTokens": 123,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": true
}
```

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X PUT "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  }'

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
};

// リクエスト内容 (payload)
const data = {
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  };

axios.put("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "rag": "550e8400-e29b-41d4-a716-446655440000",
      "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
      "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
      "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
      "instructions": "サンプル文字列",
      "knowledgeBases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "databases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
      "replyMode": {},
      "template": "サンプル文字列",
      "unanswerableTemplate": "サンプル文字列",
      "totalWordsCount": 123,
      "outputMode": {},
      "rawOutputFormat": null,
      "groups": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "tools": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "skills": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "agentMode": {},
      "numberOfRetrievedChunks": 123,
      "enableEvaluation": true,
      "enableInlineCitations": true,
      "enableCodeInterpreter": true,
      "customMaxLlmOutputTokens": 123,
      "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
      "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
      "sttConfig": null,
      "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
      "ttsConfig": null,
      "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
      "realtimeConfig": null,
      "thinkingConfig": null,
      "enableToolSearching": true
    }

response = requests.put(url, json=data, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->put("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "rag": "550e8400-e29b-41d4-a716-446655440000",
            "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
            "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
            "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
            "instructions": "サンプル文字列",
            "knowledgeBases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "databases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
            "replyMode": {},
            "template": "サンプル文字列",
            "unanswerableTemplate": "サンプル文字列",
            "totalWordsCount": 123,
            "outputMode": {},
            "rawOutputFormat": null,
            "groups": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "tools": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "skills": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "agentMode": {},
            "numberOfRetrievedChunks": 123,
            "enableEvaluation": true,
            "enableInlineCitations": true,
            "enableCodeInterpreter": true,
            "customMaxLlmOutputTokens": 123,
            "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
            "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
            "sttConfig": null,
            "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
            "ttsConfig": null,
            "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
            "realtimeConfig": null,
            "thinkingConfig": null,
            "enableToolSearching": true
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
{
  "id": string (uuid)
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "updatedAt": string (timestamp)
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
      "displayName": string
      "toolType": string
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
  "isMultimodalLlm": boolean // Whether the chatbot LLM supports multimodal (read-only)
}
```

**レスポンスの例**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "レスポンス文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "updatedAt": "レスポンス文字列",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "レスポンス文字列",
  "unanswerableTemplate": "レスポンス文字列",
  "totalWordsCount": 456,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列",
      "displayName": "レスポンス文字列",
      "toolType": "レスポンス文字列"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 456,
  "enableEvaluation": false,
  "enableInlineCitations": false,
  "enableCodeInterpreter": false,
  "customMaxLlmOutputTokens": 456,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": false,
  "isMultimodalLlm": false
}
```

***

### 部分AI アシスタントを更新 <a href="#ai" id="ai"></a>

PATCH `/api/chatbots/{id}/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### リクエスト内容

**リクエストパラメータ**

| フィールド                    | 種類                   | 必須 | 説明                                                                                                                  |
| ------------------------ | -------------------- | -- | ------------------------------------------------------------------------------------------------------------------- |
| name                     | string               | 任意 | ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます                                                       |
| rag                      | string (uuid)        | 任意 | RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します                                                            |
| largeLanguageModel       | string (uuid)        | 任意 | ボットが使用する大規模言語モデルです。回答の生成に使用します                                                                                      |
| embeddingModel           | string (uuid)        | 任意 | テキストをベクトル化するための埋め込みモデルです（任意項目）                                                                                      |
| rerankerModel            | string (uuid)        | 任意 | 再ランキングに使用するモデルです（任意項目）                                                                                              |
| instructions             | string               | 任意 | ボットの役割指示です。ボットの役割や振る舞いを記述します                                                                                        |
| knowledgeBases           | array\[IdName]       | 任意 | ボットがアクセスできるナレッジベースの一覧です                                                                                             |
| databases                | array\[IdName]       | 任意 | ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用）                                                                      |
| organization             | string (uuid)        | 任意 | ボットが所属する組織です。空の場合は個人用ボットになります                                                                                       |
| builtInWorkflow          | string (uuid)        | 任意 | 組み込みワークフローです。あらかじめ定義された処理フローに使用します                                                                                  |
| replyMode                | object               | 任意 | 返信モード：通常返信またはストリーミング返信 `normal`: 通常 ; `template`: テンプレート ; `hybrid`: ハイブリッド ; `workflow`: ワークフロー ; `agent`: エージェント; |
| template                 | string               | 任意 | テンプレートモード・ハイブリッドモードで使用するテンプレートです                                                                                    |
| unanswerableTemplate     | string               | 任意 | テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです                                                                           |
| totalWordsCount          | integer (int64)      | 任意 | 累計の総使用文字数です                                                                                                         |
| outputMode               | object               | 任意 | 出力モード：テキスト、表、またはカスタム形式 `text`: テキスト ; `json_schema`: JSON Schema;                                                   |
| rawOutputFormat          | object               | 任意 | カスタム出力形式の JSON 構造定義です                                                                                               |
| groups                   | array\[IdName]       | 任意 | ボットがアクセスできるグループの一覧です                                                                                                |
| tools                    | array\[ToolSummary]  | 任意 | ボットが使用できるツールの一覧です                                                                                                   |
| skills                   | array\[SkillSummary] | 任意 | ボットに関連付けられたスキルの一覧です                                                                                                 |
| agentMode                | object               | 任意 | エージェントモード：通常、SQL、またはワークフローモード `normal`: 通常 ; `canvas`: キャンバス;                                                       |
| numberOfRetrievedChunks  | integer              | 任意 | 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です                                                                                   |
| enableEvaluation         | boolean              | 任意 |                                                                                                                     |
| enableInlineCitations    | boolean              | 任意 | インライン引用機能を有効にします。回答内に \[1]\[2] 形式の引用マークを挿入します                                                                       |
| enableCodeInterpreter    | boolean              | 任意 | 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます                                                              |
| customMaxLlmOutputTokens | integer              | 任意 | LLM の最大出力トークン数のカスタム値です。最小値は 512 です                                                                                  |
| voiceAgentType           | string (uuid)        | 任意 | 音声エージェントモードの種類です                                                                                                    |
| sttProvider              | string (uuid)        | 任意 | Speech-to-Text サービスのプロバイダーです                                                                                        |
| sttConfig                | object               | 任意 | STT の実際の設定パラメータです（JSON 形式）                                                                                          |
| ttsProvider              | string (uuid)        | 任意 | Text-to-Speech サービスのプロバイダーです                                                                                        |
| ttsConfig                | object               | 任意 | TTS の実際の設定パラメータです（JSON 形式）                                                                                          |
| realtimeProvider         | string (uuid)        | 任意 | Realtime エンドツーエンド音声モデルのプロバイダーです                                                                                     |
| realtimeConfig           | object               | 任意 | Realtime の実際の設定パラメータです（JSON 形式）                                                                                     |
| thinkingConfig           | object               | 任意 | Thinking effort の設定です（JSON 形式）                                                                                      |
| enableToolSearching      | boolean              | 任意 | 動的ツール検索機能を有効にします。agent が tool\_searching\_tool を通じてツールを動的に発見・読み込みできるようになります                                         |

**リクエスト構造の例**

```typescript
{
  "name"?: string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます (任意)
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel"?: string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します (任意)
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
    }
  ]
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
}
```

**リクエストの例**

```json
{
  "name": "サンプル名",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "サンプル文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "サンプル文字列",
  "unanswerableTemplate": "サンプル文字列",
  "totalWordsCount": 123,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 123,
  "enableEvaluation": true,
  "enableInlineCitations": true,
  "enableCodeInterpreter": true,
  "customMaxLlmOutputTokens": 123,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": true
}
```

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X PATCH "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  }'

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
};

// リクエスト内容 (payload)
const data = {
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  };

axios.patch("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "rag": "550e8400-e29b-41d4-a716-446655440000",
      "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
      "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
      "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
      "instructions": "サンプル文字列",
      "knowledgeBases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "databases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
      "replyMode": {},
      "template": "サンプル文字列",
      "unanswerableTemplate": "サンプル文字列",
      "totalWordsCount": 123,
      "outputMode": {},
      "rawOutputFormat": null,
      "groups": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "tools": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "skills": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "agentMode": {},
      "numberOfRetrievedChunks": 123,
      "enableEvaluation": true,
      "enableInlineCitations": true,
      "enableCodeInterpreter": true,
      "customMaxLlmOutputTokens": 123,
      "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
      "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
      "sttConfig": null,
      "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
      "ttsConfig": null,
      "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
      "realtimeConfig": null,
      "thinkingConfig": null,
      "enableToolSearching": true
    }

response = requests.patch(url, json=data, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->patch("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "rag": "550e8400-e29b-41d4-a716-446655440000",
            "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
            "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
            "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
            "instructions": "サンプル文字列",
            "knowledgeBases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "databases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
            "replyMode": {},
            "template": "サンプル文字列",
            "unanswerableTemplate": "サンプル文字列",
            "totalWordsCount": 123,
            "outputMode": {},
            "rawOutputFormat": null,
            "groups": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "tools": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "skills": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "agentMode": {},
            "numberOfRetrievedChunks": 123,
            "enableEvaluation": true,
            "enableInlineCitations": true,
            "enableCodeInterpreter": true,
            "customMaxLlmOutputTokens": 123,
            "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
            "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
            "sttConfig": null,
            "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
            "ttsConfig": null,
            "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
            "realtimeConfig": null,
            "thinkingConfig": null,
            "enableToolSearching": true
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
{
  "id": string (uuid)
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "updatedAt": string (timestamp)
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
      "displayName": string
      "toolType": string
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
  "isMultimodalLlm": boolean // Whether the chatbot LLM supports multimodal (read-only)
}
```

**レスポンスの例**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "レスポンス文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "updatedAt": "レスポンス文字列",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "レスポンス文字列",
  "unanswerableTemplate": "レスポンス文字列",
  "totalWordsCount": 456,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列",
      "displayName": "レスポンス文字列",
      "toolType": "レスポンス文字列"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 456,
  "enableEvaluation": false,
  "enableInlineCitations": false,
  "enableCodeInterpreter": false,
  "customMaxLlmOutputTokens": 456,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": false,
  "isMultimodalLlm": false
}
```

***

### 部分AI アシスタントを更新 <a href="#ai" id="ai"></a>

PATCH `/api/v1/chatbots/{id}/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### リクエスト内容

**リクエストパラメータ**

| フィールド                    | 種類                   | 必須 | 説明                                                                                                                  |
| ------------------------ | -------------------- | -- | ------------------------------------------------------------------------------------------------------------------- |
| name                     | string               | 任意 | ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます                                                       |
| rag                      | string (uuid)        | 任意 | RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します                                                            |
| largeLanguageModel       | string (uuid)        | 任意 | ボットが使用する大規模言語モデルです。回答の生成に使用します                                                                                      |
| embeddingModel           | string (uuid)        | 任意 | テキストをベクトル化するための埋め込みモデルです（任意項目）                                                                                      |
| rerankerModel            | string (uuid)        | 任意 | 再ランキングに使用するモデルです（任意項目）                                                                                              |
| instructions             | string               | 任意 | ボットの役割指示です。ボットの役割や振る舞いを記述します                                                                                        |
| knowledgeBases           | array\[IdName]       | 任意 | ボットがアクセスできるナレッジベースの一覧です                                                                                             |
| databases                | array\[IdName]       | 任意 | ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用）                                                                      |
| organization             | string (uuid)        | 任意 | ボットが所属する組織です。空の場合は個人用ボットになります                                                                                       |
| builtInWorkflow          | string (uuid)        | 任意 | 組み込みワークフローです。あらかじめ定義された処理フローに使用します                                                                                  |
| replyMode                | object               | 任意 | 返信モード：通常返信またはストリーミング返信 `normal`: 通常 ; `template`: テンプレート ; `hybrid`: ハイブリッド ; `workflow`: ワークフロー ; `agent`: エージェント; |
| template                 | string               | 任意 | テンプレートモード・ハイブリッドモードで使用するテンプレートです                                                                                    |
| unanswerableTemplate     | string               | 任意 | テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです                                                                           |
| totalWordsCount          | integer (int64)      | 任意 | 累計の総使用文字数です                                                                                                         |
| outputMode               | object               | 任意 | 出力モード：テキスト、表、またはカスタム形式 `text`: テキスト ; `json_schema`: JSON Schema;                                                   |
| rawOutputFormat          | object               | 任意 | カスタム出力形式の JSON 構造定義です                                                                                               |
| groups                   | array\[IdName]       | 任意 | ボットがアクセスできるグループの一覧です                                                                                                |
| tools                    | array\[ToolSummary]  | 任意 | ボットが使用できるツールの一覧です                                                                                                   |
| skills                   | array\[SkillSummary] | 任意 | ボットに関連付けられたスキルの一覧です                                                                                                 |
| agentMode                | object               | 任意 | エージェントモード：通常、SQL、またはワークフローモード `normal`: 通常 ; `canvas`: キャンバス;                                                       |
| numberOfRetrievedChunks  | integer              | 任意 | 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です                                                                                   |
| enableEvaluation         | boolean              | 任意 |                                                                                                                     |
| enableInlineCitations    | boolean              | 任意 | インライン引用機能を有効にします。回答内に \[1]\[2] 形式の引用マークを挿入します                                                                       |
| enableCodeInterpreter    | boolean              | 任意 | 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます                                                              |
| customMaxLlmOutputTokens | integer              | 任意 | LLM の最大出力トークン数のカスタム値です。最小値は 512 です                                                                                  |
| voiceAgentType           | string (uuid)        | 任意 | 音声エージェントモードの種類です                                                                                                    |
| sttProvider              | string (uuid)        | 任意 | Speech-to-Text サービスのプロバイダーです                                                                                        |
| sttConfig                | object               | 任意 | STT の実際の設定パラメータです（JSON 形式）                                                                                          |
| ttsProvider              | string (uuid)        | 任意 | Text-to-Speech サービスのプロバイダーです                                                                                        |
| ttsConfig                | object               | 任意 | TTS の実際の設定パラメータです（JSON 形式）                                                                                          |
| realtimeProvider         | string (uuid)        | 任意 | Realtime エンドツーエンド音声モデルのプロバイダーです                                                                                     |
| realtimeConfig           | object               | 任意 | Realtime の実際の設定パラメータです（JSON 形式）                                                                                     |
| thinkingConfig           | object               | 任意 | Thinking effort の設定です（JSON 形式）                                                                                      |
| enableToolSearching      | boolean              | 任意 | 動的ツール検索機能を有効にします。agent が tool\_searching\_tool を通じてツールを動的に発見・読み込みできるようになります                                         |

**リクエスト構造の例**

```typescript
{
  "name"?: string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます (任意)
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel"?: string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します (任意)
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
    }
  ]
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
}
```

**リクエストの例**

```json
{
  "name": "サンプル名",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "サンプル文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "サンプル文字列",
  "unanswerableTemplate": "サンプル文字列",
  "totalWordsCount": 123,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 123,
  "enableEvaluation": true,
  "enableInlineCitations": true,
  "enableCodeInterpreter": true,
  "customMaxLlmOutputTokens": 123,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": true
}
```

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X PATCH "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  }'

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
};

// リクエスト内容 (payload)
const data = {
    "name": "サンプル名",
    "rag": "550e8400-e29b-41d4-a716-446655440000",
    "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
    "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
    "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
    "instructions": "サンプル文字列",
    "knowledgeBases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "databases": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
    "replyMode": {},
    "template": "サンプル文字列",
    "unanswerableTemplate": "サンプル文字列",
    "totalWordsCount": 123,
    "outputMode": {},
    "rawOutputFormat": null,
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "tools": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "skills": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
    ],
    "agentMode": {},
    "numberOfRetrievedChunks": 123,
    "enableEvaluation": true,
    "enableInlineCitations": true,
    "enableCodeInterpreter": true,
    "customMaxLlmOutputTokens": 123,
    "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
    "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
    "sttConfig": null,
    "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
    "ttsConfig": null,
    "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
    "realtimeConfig": null,
    "thinkingConfig": null,
    "enableToolSearching": true
  };

axios.patch("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "rag": "550e8400-e29b-41d4-a716-446655440000",
      "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
      "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
      "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
      "instructions": "サンプル文字列",
      "knowledgeBases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "databases": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
      "replyMode": {},
      "template": "サンプル文字列",
      "unanswerableTemplate": "サンプル文字列",
      "totalWordsCount": 123,
      "outputMode": {},
      "rawOutputFormat": null,
      "groups": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "tools": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "skills": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000"
        }
      ],
      "agentMode": {},
      "numberOfRetrievedChunks": 123,
      "enableEvaluation": true,
      "enableInlineCitations": true,
      "enableCodeInterpreter": true,
      "customMaxLlmOutputTokens": 123,
      "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
      "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
      "sttConfig": null,
      "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
      "ttsConfig": null,
      "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
      "realtimeConfig": null,
      "thinkingConfig": null,
      "enableToolSearching": true
    }

response = requests.patch(url, json=data, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->patch("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "rag": "550e8400-e29b-41d4-a716-446655440000",
            "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
            "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
            "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
            "instructions": "サンプル文字列",
            "knowledgeBases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "databases": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
            "replyMode": {},
            "template": "サンプル文字列",
            "unanswerableTemplate": "サンプル文字列",
            "totalWordsCount": 123,
            "outputMode": {},
            "rawOutputFormat": null,
            "groups": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "tools": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "skills": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000"
                }
            ],
            "agentMode": {},
            "numberOfRetrievedChunks": 123,
            "enableEvaluation": true,
            "enableInlineCitations": true,
            "enableCodeInterpreter": true,
            "customMaxLlmOutputTokens": 123,
            "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
            "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
            "sttConfig": null,
            "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
            "ttsConfig": null,
            "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
            "realtimeConfig": null,
            "thinkingConfig": null,
            "enableToolSearching": true
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
{
  "id": string (uuid)
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "updatedAt": string (timestamp)
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
      "displayName": string
      "toolType": string
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
  "isMultimodalLlm": boolean // Whether the chatbot LLM supports multimodal (read-only)
}
```

**レスポンスの例**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "レスポンス文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "updatedAt": "レスポンス文字列",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "レスポンス文字列",
  "unanswerableTemplate": "レスポンス文字列",
  "totalWordsCount": 456,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列",
      "displayName": "レスポンス文字列",
      "toolType": "レスポンス文字列"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 456,
  "enableEvaluation": false,
  "enableInlineCitations": false,
  "enableCodeInterpreter": false,
  "customMaxLlmOutputTokens": 456,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": false,
  "isMultimodalLlm": false
}
```

***

### AI アシスタントを削除 <a href="#ai" id="ai"></a>

DELETE `/api/chatbots/{id}/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X DELETE "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

// リクエスト内容 (payload)
const data = null;

axios.delete("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.delete(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->delete("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

| ステータスコード | 説明               |
| -------- | ---------------- |
| 204      | No response body |

***

### AI アシスタントを削除 <a href="#ai" id="ai"></a>

DELETE `/api/v1/chatbots/{id}/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X DELETE "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY"

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY'
  }
};

// リクエスト内容 (payload)
const data = null;

axios.delete("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.delete(url, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->delete("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY'
        ]
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

| ステータスコード | 説明               |
| -------- | ---------------- |
| 204      | No response body |

***

### AI アシスタントを複製 <a href="#ai" id="ai"></a>

POST `/api/chatbots/{id}/duplicate/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### リクエスト内容

**リクエストパラメータ**

| フィールド | 種類     | 必須 | 説明 |
| ----- | ------ | -- | -- |
| name  | string | 必須 |    |

**リクエスト構造の例**

```typescript
{
  "name": string
}
```

**リクエストの例**

```json
{
  "name": "サンプル名"
}
```

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X POST "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/duplicate/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名"
  }'

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
};

// リクエスト内容 (payload)
const data = {
    "name": "サンプル名"
  };

axios.post("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/duplicate/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/duplicate/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名"
    }

response = requests.post(url, json=data, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->post("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/duplicate/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名"
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 201**

**レスポンス構造の例**

```typescript
{
  "id": string (uuid)
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "updatedAt": string (timestamp)
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
      "displayName": string
      "toolType": string
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
  "isMultimodalLlm": boolean // Whether the chatbot LLM supports multimodal (read-only)
}
```

**レスポンスの例**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "レスポンス文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "updatedAt": "レスポンス文字列",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "レスポンス文字列",
  "unanswerableTemplate": "レスポンス文字列",
  "totalWordsCount": 456,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列",
      "displayName": "レスポンス文字列",
      "toolType": "レスポンス文字列"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 456,
  "enableEvaluation": false,
  "enableInlineCitations": false,
  "enableCodeInterpreter": false,
  "customMaxLlmOutputTokens": 456,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": false,
  "isMultimodalLlm": false
}
```

***

### AI アシスタントを複製 <a href="#ai" id="ai"></a>

POST `/api/v1/chatbots/{id}/duplicate/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### リクエスト内容

**リクエストパラメータ**

| フィールド | 種類     | 必須 | 説明 |
| ----- | ------ | -- | -- |
| name  | string | 必須 |    |

**リクエスト構造の例**

```typescript
{
  "name": string
}
```

**リクエストの例**

```json
{
  "name": "サンプル名"
}
```

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X POST "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/duplicate/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名"
  }'

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
};

// リクエスト内容 (payload)
const data = {
    "name": "サンプル名"
  };

axios.post("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/duplicate/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/duplicate/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名"
    }

response = requests.post(url, json=data, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->post("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/duplicate/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名"
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 201**

**レスポンス構造の例**

```typescript
{
  "id": string (uuid)
  "name": string // ボットの名前です。Agent モードでは意味的な役割を持ち、その他のモードでは複数のボットを区別するためにのみ使用されます
  "rag"?: string (uuid) // RAG (Retrieval-Augmented Generation) の設定です。回答品質の向上に使用します (任意)
  "largeLanguageModel": string (uuid) // ボットが使用する大規模言語モデルです。回答の生成に使用します
  "embeddingModel"?: string (uuid) // テキストをベクトル化するための埋め込みモデルです（任意項目） (任意)
  "rerankerModel"?: string (uuid) // 再ランキングに使用するモデルです（任意項目） (任意)
  "instructions"?: string // ボットの役割指示です。ボットの役割や振る舞いを記述します (任意)
  "knowledgeBases"?: [ // ボットがアクセスできるナレッジベースの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "databases"?: [ // ボットがアクセスできる SQL データベースの一覧です（Text-to-SQL 機能で使用） (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "updatedAt": string (timestamp)
  "organization"?: string (uuid) // ボットが所属する組織です。空の場合は個人用ボットになります (任意)
  "builtInWorkflow"?: string (uuid) // 組み込みワークフローです。あらかじめ定義された処理フローに使用します (任意)
  "replyMode"?:  // 返信モード：通常返信またはストリーミング返信

* `normal` - 通常
* `template` - テンプレート
* `hybrid` - ハイブリッド
* `workflow` - ワークフロー
* `agent` - エージェント (任意)
  {
  }
  "template"?: string // テンプレートモード・ハイブリッドモードで使用するテンプレートです (任意)
  "unanswerableTemplate"?: string // テンプレートモード・ハイブリッドモードで回答できない場合に使用するテンプレートです (任意)
  "totalWordsCount"?: integer (int64) // 累計の総使用文字数です (任意)
  "outputMode"?:  // 出力モード：テキスト、表、またはカスタム形式

* `text` - テキスト
* `json_schema` - JSON Schema (任意)
  {
  }
  "rawOutputFormat"?: object // カスタム出力形式の JSON 構造定義です (任意)
  "groups"?: [ // ボットがアクセスできるグループの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
    }
  ]
  "tools"?: [ // ボットが使用できるツールの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
      "displayName": string
      "toolType": string
    }
  ]
  "skills"?: [ // ボットに関連付けられたスキルの一覧です (任意)
    {
      "id": string (uuid)
      "name": string
      "description": string
    }
  ]
  "agentMode"?:  // エージェントモード：通常、SQL、またはワークフローモード

* `normal` - 通常
* `canvas` - キャンバス (任意)
  {
  }
  "numberOfRetrievedChunks"?: integer // 取得する参考資料の件数です。デフォルトは 12、最小値は 1 です (任意)
  "enableEvaluation"?: boolean // 任意
  "enableInlineCitations"?: boolean // インライン引用機能を有効にします。回答内に [1][2] 形式の引用マークを挿入します (任意)
  "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます (任意)
  "customMaxLlmOutputTokens"?: integer // LLM の最大出力トークン数のカスタム値です。最小値は 512 です (任意)
  "voiceAgentType"?: string (uuid) // 音声エージェントモードの種類です (任意)
  "sttProvider"?: string (uuid) // Speech-to-Text サービスのプロバイダーです (任意)
  "sttConfig"?: object // STT の実際の設定パラメータです（JSON 形式） (任意)
  "ttsProvider"?: string (uuid) // Text-to-Speech サービスのプロバイダーです (任意)
  "ttsConfig"?: object // TTS の実際の設定パラメータです（JSON 形式） (任意)
  "realtimeProvider"?: string (uuid) // Realtime エンドツーエンド音声モデルのプロバイダーです (任意)
  "realtimeConfig"?: object // Realtime の実際の設定パラメータです（JSON 形式） (任意)
  "thinkingConfig"?: object // Thinking effort の設定です（JSON 形式） (任意)
  "enableToolSearching"?: boolean // 動的ツール検索機能を有効にします。agent が tool_searching_tool を通じてツールを動的に発見・読み込みできるようになります (任意)
  "isMultimodalLlm": boolean // Whether the chatbot LLM supports multimodal (read-only)
}
```

**レスポンスの例**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "rag": "550e8400-e29b-41d4-a716-446655440000",
  "largeLanguageModel": "550e8400-e29b-41d4-a716-446655440000",
  "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
  "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
  "instructions": "レスポンス文字列",
  "knowledgeBases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "databases": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "updatedAt": "レスポンス文字列",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "builtInWorkflow": "550e8400-e29b-41d4-a716-446655440000",
  "replyMode": {},
  "template": "レスポンス文字列",
  "unanswerableTemplate": "レスポンス文字列",
  "totalWordsCount": 456,
  "outputMode": {},
  "rawOutputFormat": null,
  "groups": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列"
    }
  ],
  "tools": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列",
      "displayName": "レスポンス文字列",
      "toolType": "レスポンス文字列"
    }
  ],
  "skills": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンス文字列",
      "description": "レスポンス文字列"
    }
  ],
  "agentMode": {},
  "numberOfRetrievedChunks": 456,
  "enableEvaluation": false,
  "enableInlineCitations": false,
  "enableCodeInterpreter": false,
  "customMaxLlmOutputTokens": 456,
  "voiceAgentType": "550e8400-e29b-41d4-a716-446655440000",
  "sttProvider": "550e8400-e29b-41d4-a716-446655440000",
  "sttConfig": null,
  "ttsProvider": "550e8400-e29b-41d4-a716-446655440000",
  "ttsConfig": null,
  "realtimeProvider": "550e8400-e29b-41d4-a716-446655440000",
  "realtimeConfig": null,
  "thinkingConfig": null,
  "enableToolSearching": false,
  "isMultimodalLlm": false
}
```

***

### 評価機能の有効化・無効化 <a href="#undefined" id="undefined"></a>

PATCH `/api/chatbots/{id}/enable-evaluation/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### リクエスト内容

**リクエストパラメータ**

| フィールド            | 種類      | 必須 | 説明 |
| ---------------- | ------- | -- | -- |
| enableEvaluation | boolean | 任意 |    |

**リクエスト構造の例**

```typescript
{
  "enableEvaluation"?: boolean // 任意
}
```

**リクエストの例**

```json
{
  "enableEvaluation": true
}
```

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X PATCH "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/enable-evaluation/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "enableEvaluation": true
  }'

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
};

// リクエスト内容 (payload)
const data = {
    "enableEvaluation": true
  };

axios.patch("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/enable-evaluation/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/enable-evaluation/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "enableEvaluation": true
    }

response = requests.patch(url, json=data, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->patch("https://api.maiagent.ai/api/chatbots/550e8400-e29b-41d4-a716-446655440000/enable-evaluation/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "enableEvaluation": true
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
{
  "enableEvaluation"?: boolean // 任意
}
```

**レスポンスの例**

```json
{
  "enableEvaluation": false
}
```

***

### 評価機能の有効化・無効化 <a href="#undefined" id="undefined"></a>

PATCH `/api/v1/chatbots/{id}/enable-evaluation/`

#### パラメータ

| パラメータ名 | 必須 | 種類     | 説明                                      |
| ------ | -- | ------ | --------------------------------------- |
| `id`   | ✅  | string | A UUID string identifying this Chatbot. |

#### リクエスト内容

**リクエストパラメータ**

| フィールド            | 種類      | 必須 | 説明 |
| ---------------- | ------- | -- | -- |
| enableEvaluation | boolean | 任意 |    |

**リクエスト構造の例**

```typescript
{
  "enableEvaluation"?: boolean // 任意
}
```

**リクエストの例**

```json
{
  "enableEvaluation": true
}
```

#### コードサンプル

{% tabs %}
{% tab title="Shell/Bash" %}

```bash
# API 呼び出しの例 (Shell)
curl -X PATCH "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/enable-evaluation/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "enableEvaluation": true
  }'

# 実行前に YOUR_API_KEY を置き換え、リクエストデータを確認してください。
```

{% endtab %}

{% tab title="JavaScript" %}

```javascript
const axios = require('axios');

// リクエストヘッダーを設定
const config = {
  headers: {
    'Authorization': 'Api-Key YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
};

// リクエスト内容 (payload)
const data = {
    "enableEvaluation": true
  };

axios.patch("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/enable-evaluation/", data, config)
  .then(response => {
    console.log('レスポンスを正常に取得しました:');
    console.log(response.data);
  })
  .catch(error => {
    console.error('リクエストでエラーが発生しました:');
    console.error(error.response?.data || error.message);
  });
```

{% endtab %}

{% tab title="Python" %}

```python
import requests

url = "https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/enable-evaluation/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "enableEvaluation": true
    }

response = requests.patch(url, json=data, headers=headers)
try:
    print("レスポンスを正常に取得しました:")
    print(response.json())
except Exception as e:
    print("リクエストでエラーが発生しました:", e)
```

{% endtab %}

{% tab title="PHP" %}

```php
<?php
require 'vendor/autoload.php';

$client = new GuzzleHttp\Client();

try {
    $response = $client->patch("https://api.maiagent.ai/api/v1/chatbots/550e8400-e29b-41d4-a716-446655440000/enable-evaluation/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "enableEvaluation": true
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスを正常に取得しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

**ステータスコード: 200**

**レスポンス構造の例**

```typescript
{
  "enableEvaluation"?: boolean // 任意
}
```

**レスポンスの例**

```json
{
  "enableEvaluation": false
}
```

***


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.maiagent.ai/api/api-doc-ja/api-reference/ai-zhu-li.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
