> 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/jue-se-he-quan-xian.md).

# ロールと権限

### ロールを作成 <a href="#undefined" id="undefined"></a>

POST `/api/organizations/{organizationPk}/groups/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                   |
| ---------------- | -- | ------ | ------------------------------------ |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID |

#### リクエスト内容

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

| フィールド                  | 型              | 必須 | 説明 |
| ---------------------- | -------------- | -- | -- |
| name                   | string         | 必須 |    |
| organization           | string (uuid)  | 任意 |    |
| permissions            | array\[string] | 必須 |    |
| canCreateChatbot       | boolean        | 任意 |    |
| canCreateKnowledgeBase | boolean        | 任意 |    |
| canCreateInbox         | boolean        | 任意 |    |
| canCreateDatabase      | boolean        | 任意 |    |

**リクエスト構造のサンプル**

```typescript
{
  "name": string
  "organization"?: string (uuid) // 任意
  "permissions": [
    string (uuid)
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
}
```

**リクエストのサンプル値**

```json
{
  "name": "サンプル名",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "permissions": [
    "550e8400-e29b-41d4-a716-446655440000"
  ],
  "canCreateChatbot": true,
  "canCreateKnowledgeBase": true,
  "canCreateInbox": true,
  "canCreateDatabase": true
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": 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": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": true
  };

axios.post("https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "permissions": [
        "550e8400-e29b-41d4-a716-446655440000"
      ],
      "canCreateChatbot": true,
      "canCreateKnowledgeBase": true,
      "canCreateInbox": true,
      "canCreateDatabase": 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "permissions": [
                "550e8400-e29b-41d4-a716-446655440000"
            ],
            "canCreateChatbot": true,
            "canCreateKnowledgeBase": true,
            "canCreateInbox": true,
            "canCreateDatabase": 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
  "type": 
  {
  }
  "permissions": [ // グループの権限一覧を返します

処理フロー：
1. グループ権限を親権限と子権限に分割します
2. 子権限を親権限 ID ごとにグループ化します
3. 子権限に対応する親権限が欠けている場合は、不足している親権限をデータベースから自動的に読み込みます
4. 親権限と対応する子権限をシリアライズし、order で並べ替えます
    object
  ]
  "membersPreview": [ // 先頭 10 件のメンバー名を返します（リストには先頭 3 件、tooltip には 10 件を表示するために使用）
    string
  ]
  "membersCount": integer // 残りのメンバー数（リスト表示する 3 人を差し引いた数）を返します。フロントエンドの +N バッジ表示に使用します

リソースの count とは異なります：
- members_count: total - 3 を返します（+N バッジに使用）。None は総数が 3 以下であることを示します
- chatbots_count/knowledge_bases_count/inboxes_count: 総数を返します
  "chatbotsCount": integer // AI 助理の総数を返します
  "chatbotsPreview": [ // 先頭 10 件の AI 助理名を返します
    string
  ]
  "knowledgeBasesCount": integer // ナレッジベースの総数を返します
  "knowledgeBasesPreview": [ // 先頭 10 件のナレッジベース名を返します
    string
  ]
  "inboxesCount": integer // 会話プラットフォームの総数を返します
  "inboxesPreview": [ // 先頭 10 件の会話プラットフォーム名を返します
    string
  ]
  "databasesCount": integer // データベースの総数を返します
  "databasesPreview": [ // 先頭 10 件のデータベース名を返します
    string
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
  "createdAt": string (timestamp)
}
```

**レスポンスのサンプル値**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "type": {},
  "permissions": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンスサンプル名",
      "description": "レスポンスサンプル説明"
    }
  ],
  "membersPreview": [
    "レスポンス文字列"
  ],
  "membersCount": 456,
  "chatbotsCount": 456,
  "chatbotsPreview": [
    "レスポンス文字列"
  ],
  "knowledgeBasesCount": 456,
  "knowledgeBasesPreview": [
    "レスポンス文字列"
  ],
  "inboxesCount": 456,
  "inboxesPreview": [
    "レスポンス文字列"
  ],
  "databasesCount": 456,
  "databasesPreview": [
    "レスポンス文字列"
  ],
  "canCreateChatbot": false,
  "canCreateKnowledgeBase": false,
  "canCreateInbox": false,
  "canCreateDatabase": false,
  "createdAt": "レスポンス文字列"
}
```

***

### ロールを作成 <a href="#undefined" id="undefined"></a>

POST `/api/v1/organizations/{organizationPk}/groups/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                   |
| ---------------- | -- | ------ | ------------------------------------ |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID |

#### リクエスト内容

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

| フィールド                  | 型              | 必須 | 説明 |
| ---------------------- | -------------- | -- | -- |
| name                   | string         | 必須 |    |
| organization           | string (uuid)  | 任意 |    |
| permissions            | array\[string] | 必須 |    |
| canCreateChatbot       | boolean        | 任意 |    |
| canCreateKnowledgeBase | boolean        | 任意 |    |
| canCreateInbox         | boolean        | 任意 |    |
| canCreateDatabase      | boolean        | 任意 |    |

**リクエスト構造のサンプル**

```typescript
{
  "name": string
  "organization"?: string (uuid) // 任意
  "permissions": [
    string (uuid)
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
}
```

**リクエストのサンプル値**

```json
{
  "name": "サンプル名",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "permissions": [
    "550e8400-e29b-41d4-a716-446655440000"
  ],
  "canCreateChatbot": true,
  "canCreateKnowledgeBase": true,
  "canCreateInbox": true,
  "canCreateDatabase": true
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": 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": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": true
  };

axios.post("https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "permissions": [
        "550e8400-e29b-41d4-a716-446655440000"
      ],
      "canCreateChatbot": true,
      "canCreateKnowledgeBase": true,
      "canCreateInbox": true,
      "canCreateDatabase": 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "permissions": [
                "550e8400-e29b-41d4-a716-446655440000"
            ],
            "canCreateChatbot": true,
            "canCreateKnowledgeBase": true,
            "canCreateInbox": true,
            "canCreateDatabase": 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
  "type": 
  {
  }
  "permissions": [ // グループの権限一覧を返します

処理フロー：
1. グループ権限を親権限と子権限に分割します
2. 子権限を親権限 ID ごとにグループ化します
3. 子権限に対応する親権限が欠けている場合は、不足している親権限をデータベースから自動的に読み込みます
4. 親権限と対応する子権限をシリアライズし、order で並べ替えます
    object
  ]
  "membersPreview": [ // 先頭 10 件のメンバー名を返します（リストには先頭 3 件、tooltip には 10 件を表示するために使用）
    string
  ]
  "membersCount": integer // 残りのメンバー数（リスト表示する 3 人を差し引いた数）を返します。フロントエンドの +N バッジ表示に使用します

リソースの count とは異なります：
- members_count: total - 3 を返します（+N バッジに使用）。None は総数が 3 以下であることを示します
- chatbots_count/knowledge_bases_count/inboxes_count: 総数を返します
  "chatbotsCount": integer // AI 助理の総数を返します
  "chatbotsPreview": [ // 先頭 10 件の AI 助理名を返します
    string
  ]
  "knowledgeBasesCount": integer // ナレッジベースの総数を返します
  "knowledgeBasesPreview": [ // 先頭 10 件のナレッジベース名を返します
    string
  ]
  "inboxesCount": integer // 会話プラットフォームの総数を返します
  "inboxesPreview": [ // 先頭 10 件の会話プラットフォーム名を返します
    string
  ]
  "databasesCount": integer // データベースの総数を返します
  "databasesPreview": [ // 先頭 10 件のデータベース名を返します
    string
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
  "createdAt": string (timestamp)
}
```

**レスポンスのサンプル値**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "type": {},
  "permissions": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンスサンプル名",
      "description": "レスポンスサンプル説明"
    }
  ],
  "membersPreview": [
    "レスポンス文字列"
  ],
  "membersCount": 456,
  "chatbotsCount": 456,
  "chatbotsPreview": [
    "レスポンス文字列"
  ],
  "knowledgeBasesCount": 456,
  "knowledgeBasesPreview": [
    "レスポンス文字列"
  ],
  "inboxesCount": 456,
  "inboxesPreview": [
    "レスポンス文字列"
  ],
  "databasesCount": 456,
  "databasesPreview": [
    "レスポンス文字列"
  ],
  "canCreateChatbot": false,
  "canCreateKnowledgeBase": false,
  "canCreateInbox": false,
  "canCreateDatabase": false,
  "createdAt": "レスポンス文字列"
}
```

***

### ロールメンバーを一括追加 <a href="#undefined" id="undefined"></a>

POST `/api/organizations/{organizationPk}/groups/{groupPk}/group-members/bulk-create/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                   |
| ---------------- | -- | ------ | ------------------------------------ |
| `groupPk`        | ✅  | string |                                      |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID |

#### リクエスト内容

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

| フィールド   | 型              | 必須 | 説明 |
| ------- | -------------- | -- | -- |
| members | array\[string] | 必須 |    |

**リクエスト構造のサンプル**

```typescript
{
  "members": [
    string (uuid)
  ]
}
```

**リクエストのサンプル値**

```json
{
  "members": [
    "550e8400-e29b-41d4-a716-446655440000"
  ]
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/bulk-create/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "members": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  }'

# 実行前に 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 = {
    "members": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  };

axios.post("https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/bulk-create/", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/bulk-create/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "members": [
        "550e8400-e29b-41d4-a716-446655440000"
      ]
    }

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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/bulk-create/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "members": [
                "550e8400-e29b-41d4-a716-446655440000"
            ]
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスの取得に成功しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

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

**レスポンス構造のサンプル**

```typescript
[
  {
    "id"?: string (uuid) // ロールメンバー ID（任意）
    "member"?: { // 任意
    {
      "id"?: string (uuid) // メンバー ID（任意）
      "name"?: string // メンバー氏名（任意）
      "email"?: string (email) // メンバーのメールアドレス（任意）
      "organization"?: { // 任意
      {
        "id"?: string (uuid) // 組織 ID（任意）
        "name"?: string // 組織名（任意）
        "createdAt"?: string // 組織の作成タイムスタンプ（任意）
        "usageStatistics"?: { // 任意
        {
          "chatbotsCount"?: integer // チャットボット数（任意）
          "canCreateChatbot"?: boolean // チャットボットを作成できるかどうか（任意）
          "hasCreateChatbotLimit"?: boolean // チャットボット作成の制限があるかどうか（任意）
          "currentMonthWordsCountTotal"?: integer // 当月の合計文字数上限（任意）
          "currentMonthUsedWordsCountTotal"?: integer // 当月の使用済み文字数（任意）
          "currentMonthUsedConversationsCountTotal"?: integer // 当月の使用済み会話数（任意）
          "availableUploadFilesSizeTotal"?: integer // アップロード可能なファイルの合計サイズ（任意）
          "usedUploadFileSizeTotal"?: integer // 使用済みのアップロードファイルサイズ（任意）
        }
        }
        "organizationPlan"?: { // 任意
        {
          "id"?: string (uuid) // プラン ID（任意）
          "planName"?: string // プラン名（任意）
          "expiredAt"?: string // プランの有効期限（任意）
        }
        }
      }
      }
      "isOwner"?: boolean // 組織のオーナーかどうか（任意）
      "permissions"?: { // 任意
      {
        "hasOrganizationAccessPermission"?: boolean // 組織へのアクセス権限があるかどうか（任意）
        "hasChatAccessPermission"?: boolean // チャットへのアクセス権限があるかどうか（任意）
        "hasConversationAccessPermission"?: boolean // 会話へのアクセス権限があるかどうか（任意）
        "hasChatbotAccessPermission"?: boolean // チャットボットへのアクセス権限があるかどうか（任意）
      }
      }
      "createdAt"?: string // メンバーの作成タイムスタンプ（任意）
    }
    }
    "createdAt"?: string // ロールメンバーの作成タイムスタンプ（任意）
  }
]
```

**レスポンスのサンプル値**

```json
[
  {
    "id": "c1e54f04-01fc-45e9-b40c-9d8b37bd0ac0",
    "member": {
      "id": "af4e472d-3f9b-446b-bab8-05de4112d086",
      "name": "h",
      "email": "h@gmail.com",
      "organization": {
        "id": "670e3d30-9d24-47b4-b2cc-6bf224b2f3bb",
        "name": "Updated Org Name",
        "createdAt": "1745288290000",
        "usageStatistics": {
          "chatbotsCount": 1,
          "canCreateChatbot": false,
          "hasCreateChatbotLimit": true,
          "currentMonthWordsCountTotal": 1000000,
          "currentMonthUsedWordsCountTotal": 0,
          "currentMonthUsedConversationsCountTotal": 0,
          "availableUploadFilesSizeTotal": 104857600,
          "usedUploadFileSizeTotal": 0
        },
        "organizationPlan": {
          "id": "16136181-ae0d-4b3f-aaeb-9a6ed251459f",
          "planName": "無料プラン",
          "expiredAt": null
        }
      },
      "isOwner": false,
      "permissions": {
        "hasMaigptAccessPermission": false,
        "hasChatbotAccessPermission": false,
        "hasAgentopsAccessPermission": false,
        "hasConversationAccessPermission": false,
        "hasChatAccessPermission": false,
        "hasDeveloperAccessPermission": false,
        "hasOrganizationAccessPermission": true
      },
      "createdAt": "1748335331000"
    },
    "createdAt": "1748341252000"
  }
]
```

***

### ロールメンバーを一括追加 <a href="#undefined" id="undefined"></a>

POST `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-members/bulk-create/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                   |
| ---------------- | -- | ------ | ------------------------------------ |
| `groupPk`        | ✅  | string |                                      |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID |

#### リクエスト内容

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

| フィールド   | 型              | 必須 | 説明 |
| ------- | -------------- | -- | -- |
| members | array\[string] | 必須 |    |

**リクエスト構造のサンプル**

```typescript
{
  "members": [
    string (uuid)
  ]
}
```

**リクエストのサンプル値**

```json
{
  "members": [
    "550e8400-e29b-41d4-a716-446655440000"
  ]
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/bulk-create/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "members": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  }'

# 実行前に 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 = {
    "members": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  };

axios.post("https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/bulk-create/", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/bulk-create/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "members": [
        "550e8400-e29b-41d4-a716-446655440000"
      ]
    }

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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/bulk-create/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "members": [
                "550e8400-e29b-41d4-a716-446655440000"
            ]
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスの取得に成功しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

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

**レスポンス構造のサンプル**

```typescript
[
  {
    "id"?: string (uuid) // ロールメンバー ID（任意）
    "member"?: { // 任意
    {
      "id"?: string (uuid) // メンバー ID（任意）
      "name"?: string // メンバー氏名（任意）
      "email"?: string (email) // メンバーのメールアドレス（任意）
      "organization"?: { // 任意
      {
        "id"?: string (uuid) // 組織 ID（任意）
        "name"?: string // 組織名（任意）
        "createdAt"?: string // 組織の作成タイムスタンプ（任意）
        "usageStatistics"?: { // 任意
        {
          "chatbotsCount"?: integer // チャットボット数（任意）
          "canCreateChatbot"?: boolean // チャットボットを作成できるかどうか（任意）
          "hasCreateChatbotLimit"?: boolean // チャットボット作成の制限があるかどうか（任意）
          "currentMonthWordsCountTotal"?: integer // 当月の合計文字数上限（任意）
          "currentMonthUsedWordsCountTotal"?: integer // 当月の使用済み文字数（任意）
          "currentMonthUsedConversationsCountTotal"?: integer // 当月の使用済み会話数（任意）
          "availableUploadFilesSizeTotal"?: integer // アップロード可能なファイルの合計サイズ（任意）
          "usedUploadFileSizeTotal"?: integer // 使用済みのアップロードファイルサイズ（任意）
        }
        }
        "organizationPlan"?: { // 任意
        {
          "id"?: string (uuid) // プラン ID（任意）
          "planName"?: string // プラン名（任意）
          "expiredAt"?: string // プランの有効期限（任意）
        }
        }
      }
      }
      "isOwner"?: boolean // 組織のオーナーかどうか（任意）
      "permissions"?: { // 任意
      {
        "hasOrganizationAccessPermission"?: boolean // 組織へのアクセス権限があるかどうか（任意）
        "hasChatAccessPermission"?: boolean // チャットへのアクセス権限があるかどうか（任意）
        "hasConversationAccessPermission"?: boolean // 会話へのアクセス権限があるかどうか（任意）
        "hasChatbotAccessPermission"?: boolean // チャットボットへのアクセス権限があるかどうか（任意）
      }
      }
      "createdAt"?: string // メンバーの作成タイムスタンプ（任意）
    }
    }
    "createdAt"?: string // ロールメンバーの作成タイムスタンプ（任意）
  }
]
```

**レスポンスのサンプル値**

```json
[
  {
    "id": "c1e54f04-01fc-45e9-b40c-9d8b37bd0ac0",
    "member": {
      "id": "af4e472d-3f9b-446b-bab8-05de4112d086",
      "name": "h",
      "email": "h@gmail.com",
      "organization": {
        "id": "670e3d30-9d24-47b4-b2cc-6bf224b2f3bb",
        "name": "Updated Org Name",
        "createdAt": "1745288290000",
        "usageStatistics": {
          "chatbotsCount": 1,
          "canCreateChatbot": false,
          "hasCreateChatbotLimit": true,
          "currentMonthWordsCountTotal": 1000000,
          "currentMonthUsedWordsCountTotal": 0,
          "currentMonthUsedConversationsCountTotal": 0,
          "availableUploadFilesSizeTotal": 104857600,
          "usedUploadFileSizeTotal": 0
        },
        "organizationPlan": {
          "id": "16136181-ae0d-4b3f-aaeb-9a6ed251459f",
          "planName": "無料プラン",
          "expiredAt": null
        }
      },
      "isOwner": false,
      "permissions": {
        "hasMaigptAccessPermission": false,
        "hasChatbotAccessPermission": false,
        "hasAgentopsAccessPermission": false,
        "hasConversationAccessPermission": false,
        "hasChatAccessPermission": false,
        "hasDeveloperAccessPermission": false,
        "hasOrganizationAccessPermission": true
      },
      "createdAt": "1748335331000"
    },
    "createdAt": "1748341252000"
  }
]
```

***

### AI 助理をロールに一括割り当て <a href="#ai" id="ai"></a>

POST `/api/organizations/{organizationPk}/groups/{groupPk}/group-chatbots/bulk-create/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### リクエスト内容

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

| フィールド    | 型              | 必須 | 説明 |
| -------- | -------------- | -- | -- |
| chatbots | array\[string] | 必須 |    |

**リクエスト構造のサンプル**

```typescript
{
  "chatbots": [
    string (uuid)
  ]
}
```

**リクエストのサンプル値**

```json
{
  "chatbots": [
    "550e8400-e29b-41d4-a716-446655440000"
  ]
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/bulk-create/?page=1&pageSize=1&query=example" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chatbots": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  }'

# 実行前に 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 = {
    "chatbots": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  };

axios.post("https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/bulk-create/?page=1&pageSize=1&query=example", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/bulk-create/?page=1&pageSize=1&query=example"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "chatbots": [
        "550e8400-e29b-41d4-a716-446655440000"
      ]
    }

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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/bulk-create/?page=1&pageSize=1&query=example", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "chatbots": [
                "550e8400-e29b-41d4-a716-446655440000"
            ]
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスの取得に成功しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

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

**レスポンス構造のサンプル**

```typescript
{
  "count": integer
  "next"?: string (uri) // 任意
  "previous"?: string (uri) // 任意
  "results": [
    {
      "id": string (uuid)
      "group": string (uuid)
      "chatbot": 
      {
        "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` - Canvas（任意）
        {
        }
        "numberOfRetrievedChunks"?: integer // 取得する参照資料の数。デフォルトは 12、最小値は 1 です（任意）
        "enableEvaluation"?: boolean // 任意
        "enableInlineCitations"?: boolean // インライン引用機能を有効にします。応答に [1][2] 形式の引用マーカーが挿入されます（任意）
        "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます（任意）
        "customMaxLlmOutputTokens"?: integer // カスタムの最大 LLM 出力 token 数。最小値は 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)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "chatbot": {
        "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
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### AI 助理をロールに一括割り当て <a href="#ai" id="ai"></a>

POST `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-chatbots/bulk-create/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### リクエスト内容

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

| フィールド    | 型              | 必須 | 説明 |
| -------- | -------------- | -- | -- |
| chatbots | array\[string] | 必須 |    |

**リクエスト構造のサンプル**

```typescript
{
  "chatbots": [
    string (uuid)
  ]
}
```

**リクエストのサンプル値**

```json
{
  "chatbots": [
    "550e8400-e29b-41d4-a716-446655440000"
  ]
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/bulk-create/?page=1&pageSize=1&query=example" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "chatbots": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  }'

# 実行前に 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 = {
    "chatbots": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  };

axios.post("https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/bulk-create/?page=1&pageSize=1&query=example", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/bulk-create/?page=1&pageSize=1&query=example"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "chatbots": [
        "550e8400-e29b-41d4-a716-446655440000"
      ]
    }

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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/bulk-create/?page=1&pageSize=1&query=example", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "chatbots": [
                "550e8400-e29b-41d4-a716-446655440000"
            ]
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスの取得に成功しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

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

**レスポンス構造のサンプル**

```typescript
{
  "count": integer
  "next"?: string (uri) // 任意
  "previous"?: string (uri) // 任意
  "results": [
    {
      "id": string (uuid)
      "group": string (uuid)
      "chatbot": 
      {
        "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` - Canvas（任意）
        {
        }
        "numberOfRetrievedChunks"?: integer // 取得する参照資料の数。デフォルトは 12、最小値は 1 です（任意）
        "enableEvaluation"?: boolean // 任意
        "enableInlineCitations"?: boolean // インライン引用機能を有効にします。応答に [1][2] 形式の引用マーカーが挿入されます（任意）
        "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます（任意）
        "customMaxLlmOutputTokens"?: integer // カスタムの最大 LLM 出力 token 数。最小値は 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)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "chatbot": {
        "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
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### 受信トレイをロールに一括割り当て <a href="#undefined" id="undefined"></a>

POST `/api/organizations/{organizationPk}/groups/{groupPk}/group-inboxes/bulk-create/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                   |
| ---------------- | -- | ------ | ------------------------------------ |
| `groupPk`        | ✅  | string |                                      |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/bulk-create/" \
  -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.post("https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/bulk-create/", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/bulk-create/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.post(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->post("https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/bulk-create/", [
        '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      | No response body |

***

### 受信トレイをロールに一括割り当て <a href="#undefined" id="undefined"></a>

POST `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-inboxes/bulk-create/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                   |
| ---------------- | -- | ------ | ------------------------------------ |
| `groupPk`        | ✅  | string |                                      |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/bulk-create/" \
  -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.post("https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/bulk-create/", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/bulk-create/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY"
}


response = requests.post(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->post("https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/bulk-create/", [
        '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      | No response body |

***

### ナレッジベースをロールに一括割り当て <a href="#undefined" id="undefined"></a>

POST `/api/organizations/{organizationPk}/groups/{groupPk}/group-knowledge-bases/bulk-create/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### リクエスト内容

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

| フィールド          | 型              | 必須 | 説明 |
| -------------- | -------------- | -- | -- |
| knowledgeBases | array\[string] | 必須 |    |

**リクエスト構造のサンプル**

```typescript
{
  "knowledgeBases": [
    string (uuid)
  ]
}
```

**リクエストのサンプル値**

```json
{
  "knowledgeBases": [
    "550e8400-e29b-41d4-a716-446655440000"
  ]
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/bulk-create/?page=1&pageSize=1&query=example" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "knowledgeBases": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  }'

# 実行前に 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 = {
    "knowledgeBases": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  };

axios.post("https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/bulk-create/?page=1&pageSize=1&query=example", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/bulk-create/?page=1&pageSize=1&query=example"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "knowledgeBases": [
        "550e8400-e29b-41d4-a716-446655440000"
      ]
    }

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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/bulk-create/?page=1&pageSize=1&query=example", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "knowledgeBases": [
                "550e8400-e29b-41d4-a716-446655440000"
            ]
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスの取得に成功しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

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

**レスポンス構造のサンプル**

```typescript
{
  "count": integer
  "next"?: string (uri) // 任意
  "previous"?: string (uri) // 任意
  "results": [
    {
      "id": string (uuid)
      "group": string (uuid)
      "knowledgeBase": 
      {
        "id": string (uuid)
        "createdBy"?: string (uuid) // 任意
        "organization"?: string (uuid) // 任意
        "embeddingModel": string (uuid)
        "rerankerModel": string (uuid)
        "name": string
        "description"?: string // 任意
        "numberOfRetrievedChunks"?: integer // 取得する参照資料の数。デフォルトは 12、最小値は 1 です（任意）
        "sentenceWindowSize"?: integer // RAG 拡張のセンテンスウィンドウサイズ。デフォルトは 2、最小値は 0 です（任意）
        "enableHyde"?: boolean // HyDE を有効にします。デフォルトは False です（任意）
        "similarityCutoff"?: number (double) // 類似度のしきい値。デフォルトは 0.0、範囲は 0.0〜1.0 です（任意）
        "enableRerank"?: boolean // 再ランク付けを有効にするかどうか。デフォルトは True です（任意）
        "enableRrf"?: boolean // Enable Reciprocal Rank Fusion for hybrid search. Disable this if using a custom Elasticsearch without enterprise license.（任意）
        "vectorDatabaseType"?:  // Type of vector database: elasticsearch or opensearch.

* `elasticsearch` - Elasticsearch
* `opensearch` - OpenSearch
* `oracle` - Oracle AI Database 26ai（任意）
        {
        }
        "vectorDatabaseUrl"?: string // Custom vector database endpoint URL or Oracle DSN. For Elasticsearch/OpenSearch: URL format (e.g., "https://host:9200"). For Oracle: DSN format (e.g., "host:1521/service_name").（任意）
        "vectorDatabaseApiKey"?: string // API Key for Elasticsearch. Not used for OpenSearch.（任意）
        "opensearchUsername"?: string // Username for OpenSearch Basic Auth.（任意）
        "opensearchPassword"?: string // Password for OpenSearch Basic Auth.（任意）
        "oracleUser"?: string // Oracle database username.（任意）
        "oraclePassword"?: string // Oracle database password.（任意）
        "labels": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "chatbots"?: [ // 任意
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "groups"?: [ // ナレッジベースがアクセス可能なグループの一覧（任意）
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "filesCount": integer // Return count of KnowledgeBaseFile excluding processed files, conversation attachments, and soft-deleted.
        "vectorStorageSize": integer
        "chunksCount": integer
        "isMultimodal"?: boolean // Whether this knowledge base supports multimodal embeddings (text + images).（任意）
        "canUpdate": boolean // Return whether the current user can update this resource.
        "canDelete": boolean // Return whether the current user can delete this resource.
        "createdAt": string (timestamp)
        "updatedAt": string (timestamp)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "knowledgeBase": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "createdBy": "550e8400-e29b-41d4-a716-446655440000",
        "organization": "550e8400-e29b-41d4-a716-446655440000",
        "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
        "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "description": "レスポンス文字列",
        "numberOfRetrievedChunks": 456,
        "sentenceWindowSize": 456,
        "enableHyde": false,
        "similarityCutoff": 456,
        "enableRerank": false,
        "enableRrf": false,
        "vectorDatabaseType": {},
        "vectorDatabaseUrl": "レスポンス文字列",
        "vectorDatabaseApiKey": "レスポンス文字列",
        "opensearchUsername": "レスポンス文字列",
        "opensearchPassword": "レスポンス文字列",
        "oracleUser": "レスポンス文字列",
        "oraclePassword": "レスポンス文字列",
        "labels": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "chatbots": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "groups": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "filesCount": 456,
        "vectorStorageSize": 456,
        "chunksCount": 456,
        "isMultimodal": false,
        "canUpdate": false,
        "canDelete": false,
        "createdAt": "レスポンス文字列",
        "updatedAt": "レスポンス文字列"
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ナレッジベースをロールに一括割り当て <a href="#undefined" id="undefined"></a>

POST `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-knowledge-bases/bulk-create/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### リクエスト内容

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

| フィールド          | 型              | 必須 | 説明 |
| -------------- | -------------- | -- | -- |
| knowledgeBases | array\[string] | 必須 |    |

**リクエスト構造のサンプル**

```typescript
{
  "knowledgeBases": [
    string (uuid)
  ]
}
```

**リクエストのサンプル値**

```json
{
  "knowledgeBases": [
    "550e8400-e29b-41d4-a716-446655440000"
  ]
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/bulk-create/?page=1&pageSize=1&query=example" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "knowledgeBases": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  }'

# 実行前に 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 = {
    "knowledgeBases": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  };

axios.post("https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/bulk-create/?page=1&pageSize=1&query=example", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/bulk-create/?page=1&pageSize=1&query=example"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "knowledgeBases": [
        "550e8400-e29b-41d4-a716-446655440000"
      ]
    }

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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/bulk-create/?page=1&pageSize=1&query=example", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "knowledgeBases": [
                "550e8400-e29b-41d4-a716-446655440000"
            ]
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスの取得に成功しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

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

**レスポンス構造のサンプル**

```typescript
{
  "count": integer
  "next"?: string (uri) // 任意
  "previous"?: string (uri) // 任意
  "results": [
    {
      "id": string (uuid)
      "group": string (uuid)
      "knowledgeBase": 
      {
        "id": string (uuid)
        "createdBy"?: string (uuid) // 任意
        "organization"?: string (uuid) // 任意
        "embeddingModel": string (uuid)
        "rerankerModel": string (uuid)
        "name": string
        "description"?: string // 任意
        "numberOfRetrievedChunks"?: integer // 取得する参照資料の数。デフォルトは 12、最小値は 1 です（任意）
        "sentenceWindowSize"?: integer // RAG 拡張のセンテンスウィンドウサイズ。デフォルトは 2、最小値は 0 です（任意）
        "enableHyde"?: boolean // HyDE を有効にします。デフォルトは False です（任意）
        "similarityCutoff"?: number (double) // 類似度のしきい値。デフォルトは 0.0、範囲は 0.0〜1.0 です（任意）
        "enableRerank"?: boolean // 再ランク付けを有効にするかどうか。デフォルトは True です（任意）
        "enableRrf"?: boolean // Enable Reciprocal Rank Fusion for hybrid search. Disable this if using a custom Elasticsearch without enterprise license.（任意）
        "vectorDatabaseType"?:  // Type of vector database: elasticsearch or opensearch.

* `elasticsearch` - Elasticsearch
* `opensearch` - OpenSearch
* `oracle` - Oracle AI Database 26ai（任意）
        {
        }
        "vectorDatabaseUrl"?: string // Custom vector database endpoint URL or Oracle DSN. For Elasticsearch/OpenSearch: URL format (e.g., "https://host:9200"). For Oracle: DSN format (e.g., "host:1521/service_name").（任意）
        "vectorDatabaseApiKey"?: string // API Key for Elasticsearch. Not used for OpenSearch.（任意）
        "opensearchUsername"?: string // Username for OpenSearch Basic Auth.（任意）
        "opensearchPassword"?: string // Password for OpenSearch Basic Auth.（任意）
        "oracleUser"?: string // Oracle database username.（任意）
        "oraclePassword"?: string // Oracle database password.（任意）
        "labels": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "chatbots"?: [ // 任意
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "groups"?: [ // ナレッジベースがアクセス可能なグループの一覧（任意）
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "filesCount": integer // Return count of KnowledgeBaseFile excluding processed files, conversation attachments, and soft-deleted.
        "vectorStorageSize": integer
        "chunksCount": integer
        "isMultimodal"?: boolean // Whether this knowledge base supports multimodal embeddings (text + images).（任意）
        "canUpdate": boolean // Return whether the current user can update this resource.
        "canDelete": boolean // Return whether the current user can delete this resource.
        "createdAt": string (timestamp)
        "updatedAt": string (timestamp)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "knowledgeBase": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "createdBy": "550e8400-e29b-41d4-a716-446655440000",
        "organization": "550e8400-e29b-41d4-a716-446655440000",
        "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
        "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "description": "レスポンス文字列",
        "numberOfRetrievedChunks": 456,
        "sentenceWindowSize": 456,
        "enableHyde": false,
        "similarityCutoff": 456,
        "enableRerank": false,
        "enableRrf": false,
        "vectorDatabaseType": {},
        "vectorDatabaseUrl": "レスポンス文字列",
        "vectorDatabaseApiKey": "レスポンス文字列",
        "opensearchUsername": "レスポンス文字列",
        "opensearchPassword": "レスポンス文字列",
        "oracleUser": "レスポンス文字列",
        "oraclePassword": "レスポンス文字列",
        "labels": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "chatbots": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "groups": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "filesCount": 456,
        "vectorStorageSize": 456,
        "chunksCount": 456,
        "isMultimodal": false,
        "canUpdate": false,
        "canDelete": false,
        "createdAt": "レスポンス文字列",
        "updatedAt": "レスポンス文字列"
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### データベースをロールに一括割り当て <a href="#undefined" id="undefined"></a>

POST `/api/organizations/{organizationPk}/groups/{groupPk}/group-databases/bulk-create/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### リクエスト内容

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

| フィールド     | 型              | 必須 | 説明 |
| --------- | -------------- | -- | -- |
| databases | array\[string] | 必須 |    |

**リクエスト構造のサンプル**

```typescript
{
  "databases": [
    string (uuid)
  ]
}
```

**リクエストのサンプル値**

```json
{
  "databases": [
    "550e8400-e29b-41d4-a716-446655440000"
  ]
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/bulk-create/?page=1&pageSize=1&query=example" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "databases": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  }'

# 実行前に 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 = {
    "databases": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  };

axios.post("https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/bulk-create/?page=1&pageSize=1&query=example", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/bulk-create/?page=1&pageSize=1&query=example"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "databases": [
        "550e8400-e29b-41d4-a716-446655440000"
      ]
    }

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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/bulk-create/?page=1&pageSize=1&query=example", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "databases": [
                "550e8400-e29b-41d4-a716-446655440000"
            ]
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスの取得に成功しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

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

**レスポンス構造のサンプル**

```typescript
{
  "count": integer
  "next"?: string (uri) // 任意
  "previous"?: string (uri) // 任意
  "results": [
    {
      "id": string (uuid)
      "group": string (uuid)
      "database": 
      {
        "id": string (uuid)
        "name": string // Display name for this database connection
        "description": string // Description of the database and its purpose
        "databaseType":  // Type of database: PostgreSQL, MySQL, MSSQL, Oracle, or MaiAgent

* `postgresql` - PostgreSQL
* `mysql` - MySQL
* `maiagent` - MaiAgent
* `oracle` - Oracle
* `mssql` - MSSQL
        {
        }
        "databaseUrl": string // Connection string for external databases. Not required for MaiAgent type as it uses the system default.
        "includeTables": object // Optional list of tables to include. Format: {"tables": ["table1", "table2"]}. For MaiAgent type, this is auto-populated from uploaded files.
        "isActive": boolean // When disabled, this database will not be used in Text-to-SQL queries
        "status": 
        {
        }
        "deletedAt": string (timestamp)
        "tables": [
          {
            "id": string (uuid)
            "tableName": string // Name of the table in the database
            "description"?: string // Description of the table and its data for better Text-to-SQL understanding（任意）
            "status": 
            {
            }
            "errorMessage": string // Error details if table creation or deletion failed
            "sourceFile": 
            {
              "id": string (uuid)
              "name": string
              "isFromKnowledgeBase": boolean // Determine if the source file originated from a knowledge base upload.

Returns True if the file was uploaded via knowledge base,
False if uploaded directly to the database.
            }
            "columns": [
              {
                "id": string (uuid)
                "columnName": string
                "columnType"?: string // Data type of the column (e.g., VARCHAR, INTEGER, TIMESTAMP)（任意）
                "description"?: string // Description of the column for better Text-to-SQL understanding（任意）
                "isPrimaryKey"?: boolean // 任意
                "isNullable"?: boolean // 任意
                "createdAt": string (timestamp)
                "updatedAt": string (timestamp)
              }
            ]
            "createdAt": string (timestamp)
            "updatedAt": string (timestamp)
          }
        ]
        "chatbots": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "groups": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "createdAt": string (timestamp)
        "updatedAt": string (timestamp)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "database": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "description": "レスポンス文字列",
        "databaseType": {},
        "databaseUrl": "レスポンス文字列",
        "includeTables": null,
        "isActive": false,
        "status": {},
        "deletedAt": "レスポンス文字列",
        "tables": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "tableName": "レスポンス文字列",
            "description": "レスポンス文字列",
            "status": {},
            "errorMessage": "レスポンス文字列",
            "sourceFile": {
              "id": "550e8400-e29b-41d4-a716-446655440000",
              "name": "レスポンス文字列",
              "isFromKnowledgeBase": false
            },
            "columns": [
              {
                "id": "550e8400-e29b-41d4-a716-446655440000",
                "columnName": "レスポンス文字列",
                "columnType": "レスポンス文字列",
                "description": "レスポンス文字列",
                "isPrimaryKey": false,
                "isNullable": false,
                "createdAt": "レスポンス文字列",
                "updatedAt": "レスポンス文字列"
              }
            ],
            "createdAt": "レスポンス文字列",
            "updatedAt": "レスポンス文字列"
          }
        ],
        "chatbots": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "groups": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "createdAt": "レスポンス文字列",
        "updatedAt": "レスポンス文字列"
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### データベースをロールに一括割り当て <a href="#undefined" id="undefined"></a>

POST `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-databases/bulk-create/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### リクエスト内容

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

| フィールド     | 型              | 必須 | 説明 |
| --------- | -------------- | -- | -- |
| databases | array\[string] | 必須 |    |

**リクエスト構造のサンプル**

```typescript
{
  "databases": [
    string (uuid)
  ]
}
```

**リクエストのサンプル値**

```json
{
  "databases": [
    "550e8400-e29b-41d4-a716-446655440000"
  ]
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X POST "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/bulk-create/?page=1&pageSize=1&query=example" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "databases": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  }'

# 実行前に 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 = {
    "databases": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  };

axios.post("https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/bulk-create/?page=1&pageSize=1&query=example", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/bulk-create/?page=1&pageSize=1&query=example"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "databases": [
        "550e8400-e29b-41d4-a716-446655440000"
      ]
    }

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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/bulk-create/?page=1&pageSize=1&query=example", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "databases": [
                "550e8400-e29b-41d4-a716-446655440000"
            ]
        }
    ]);
    
    $data = json_decode($response->getBody(), true);
    echo "レスポンスの取得に成功しました:\n";
    print_r($data);
} catch (Exception $e) {
    echo 'リクエストでエラーが発生しました: ' . $e->getMessage();
}
?>
```

{% endtab %}
{% endtabs %}

#### レスポンス内容

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

**レスポンス構造のサンプル**

```typescript
{
  "count": integer
  "next"?: string (uri) // 任意
  "previous"?: string (uri) // 任意
  "results": [
    {
      "id": string (uuid)
      "group": string (uuid)
      "database": 
      {
        "id": string (uuid)
        "name": string // Display name for this database connection
        "description": string // Description of the database and its purpose
        "databaseType":  // Type of database: PostgreSQL, MySQL, MSSQL, Oracle, or MaiAgent

* `postgresql` - PostgreSQL
* `mysql` - MySQL
* `maiagent` - MaiAgent
* `oracle` - Oracle
* `mssql` - MSSQL
        {
        }
        "databaseUrl": string // Connection string for external databases. Not required for MaiAgent type as it uses the system default.
        "includeTables": object // Optional list of tables to include. Format: {"tables": ["table1", "table2"]}. For MaiAgent type, this is auto-populated from uploaded files.
        "isActive": boolean // When disabled, this database will not be used in Text-to-SQL queries
        "status": 
        {
        }
        "deletedAt": string (timestamp)
        "tables": [
          {
            "id": string (uuid)
            "tableName": string // Name of the table in the database
            "description"?: string // Description of the table and its data for better Text-to-SQL understanding（任意）
            "status": 
            {
            }
            "errorMessage": string // Error details if table creation or deletion failed
            "sourceFile": 
            {
              "id": string (uuid)
              "name": string
              "isFromKnowledgeBase": boolean // Determine if the source file originated from a knowledge base upload.

Returns True if the file was uploaded via knowledge base,
False if uploaded directly to the database.
            }
            "columns": [
              {
                "id": string (uuid)
                "columnName": string
                "columnType"?: string // Data type of the column (e.g., VARCHAR, INTEGER, TIMESTAMP)（任意）
                "description"?: string // Description of the column for better Text-to-SQL understanding（任意）
                "isPrimaryKey"?: boolean // 任意
                "isNullable"?: boolean // 任意
                "createdAt": string (timestamp)
                "updatedAt": string (timestamp)
              }
            ]
            "createdAt": string (timestamp)
            "updatedAt": string (timestamp)
          }
        ]
        "chatbots": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "groups": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "createdAt": string (timestamp)
        "updatedAt": string (timestamp)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "database": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "description": "レスポンス文字列",
        "databaseType": {},
        "databaseUrl": "レスポンス文字列",
        "includeTables": null,
        "isActive": false,
        "status": {},
        "deletedAt": "レスポンス文字列",
        "tables": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "tableName": "レスポンス文字列",
            "description": "レスポンス文字列",
            "status": {},
            "errorMessage": "レスポンス文字列",
            "sourceFile": {
              "id": "550e8400-e29b-41d4-a716-446655440000",
              "name": "レスポンス文字列",
              "isFromKnowledgeBase": false
            },
            "columns": [
              {
                "id": "550e8400-e29b-41d4-a716-446655440000",
                "columnName": "レスポンス文字列",
                "columnType": "レスポンス文字列",
                "description": "レスポンス文字列",
                "isPrimaryKey": false,
                "isNullable": false,
                "createdAt": "レスポンス文字列",
                "updatedAt": "レスポンス文字列"
              }
            ],
            "createdAt": "レスポンス文字列",
            "updatedAt": "レスポンス文字列"
          }
        ],
        "chatbots": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "groups": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "createdAt": "レスポンス文字列",
        "updatedAt": "レスポンス文字列"
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### 権限一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/permissions/`

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/permissions/" \
  -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/permissions/", 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/permissions/"
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/permissions/", [
        '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
    "value": string
    "description": string
    "children": [
      object
    ]
  }
]
```

**レスポンスのサンプル値**

```json
[
  {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "レスポンス文字列",
    "value": "レスポンス文字列",
    "description": "レスポンス文字列",
    "children": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンスサンプル名",
        "description": "レスポンスサンプル説明"
      }
    ]
  }
]
```

***

### 権限一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/v1/permissions/`

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/permissions/" \
  -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/permissions/", 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/permissions/"
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/permissions/", [
        '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
    "value": string
    "description": string
    "children": [
      object
    ]
  }
]
```

**レスポンスのサンプル値**

```json
[
  {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "レスポンス文字列",
    "value": "レスポンス文字列",
    "description": "レスポンス文字列",
    "children": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンスサンプル名",
        "description": "レスポンスサンプル説明"
      }
    ]
  }
]
```

***

### ロール一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/organizations/{organizationPk}/groups/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/?page=1&pageSize=1&query=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
      "type": 
      {
      }
      "permissions": [ // グループの権限一覧を返します

処理フロー：
1. グループ権限を親権限と子権限に分割します
2. 子権限を親権限 ID ごとにグループ化します
3. 子権限に対応する親権限が欠けている場合は、不足している親権限をデータベースから自動的に読み込みます
4. 親権限と対応する子権限をシリアライズし、order で並べ替えます
        object
      ]
      "membersPreview": [ // 先頭 10 件のメンバー名を返します（リストには先頭 3 件、tooltip には 10 件を表示するために使用）
        string
      ]
      "membersCount": integer // 残りのメンバー数（リスト表示する 3 人を差し引いた数）を返します。フロントエンドの +N バッジ表示に使用します

リソースの count とは異なります：
- members_count: total - 3 を返します（+N バッジに使用）。None は総数が 3 以下であることを示します
- chatbots_count/knowledge_bases_count/inboxes_count: 総数を返します
      "chatbotsCount": integer // AI 助理の総数を返します
      "chatbotsPreview": [ // 先頭 10 件の AI 助理名を返します
        string
      ]
      "knowledgeBasesCount": integer // ナレッジベースの総数を返します
      "knowledgeBasesPreview": [ // 先頭 10 件のナレッジベース名を返します
        string
      ]
      "inboxesCount": integer // 会話プラットフォームの総数を返します
      "inboxesPreview": [ // 先頭 10 件の会話プラットフォーム名を返します
        string
      ]
      "databasesCount": integer // データベースの総数を返します
      "databasesPreview": [ // 先頭 10 件のデータベース名を返します
        string
      ]
      "canCreateChatbot"?: boolean // 任意
      "canCreateKnowledgeBase"?: boolean // 任意
      "canCreateInbox"?: boolean // 任意
      "canCreateDatabase"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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": "レスポンス文字列",
      "type": {},
      "permissions": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンスサンプル名",
          "description": "レスポンスサンプル説明"
        }
      ],
      "membersPreview": [
        "レスポンス文字列"
      ],
      "membersCount": 456,
      "chatbotsCount": 456,
      "chatbotsPreview": [
        "レスポンス文字列"
      ],
      "knowledgeBasesCount": 456,
      "knowledgeBasesPreview": [
        "レスポンス文字列"
      ],
      "inboxesCount": 456,
      "inboxesPreview": [
        "レスポンス文字列"
      ],
      "databasesCount": 456,
      "databasesPreview": [
        "レスポンス文字列"
      ],
      "canCreateChatbot": false,
      "canCreateKnowledgeBase": false,
      "canCreateInbox": false,
      "canCreateDatabase": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ロール一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/v1/organizations/{organizationPk}/groups/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/?page=1&pageSize=1&query=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
      "type": 
      {
      }
      "permissions": [ // グループの権限一覧を返します

処理フロー：
1. グループ権限を親権限と子権限に分割します
2. 子権限を親権限 ID ごとにグループ化します
3. 子権限に対応する親権限が欠けている場合は、不足している親権限をデータベースから自動的に読み込みます
4. 親権限と対応する子権限をシリアライズし、order で並べ替えます
        object
      ]
      "membersPreview": [ // 先頭 10 件のメンバー名を返します（リストには先頭 3 件、tooltip には 10 件を表示するために使用）
        string
      ]
      "membersCount": integer // 残りのメンバー数（リスト表示する 3 人を差し引いた数）を返します。フロントエンドの +N バッジ表示に使用します

リソースの count とは異なります：
- members_count: total - 3 を返します（+N バッジに使用）。None は総数が 3 以下であることを示します
- chatbots_count/knowledge_bases_count/inboxes_count: 総数を返します
      "chatbotsCount": integer // AI 助理の総数を返します
      "chatbotsPreview": [ // 先頭 10 件の AI 助理名を返します
        string
      ]
      "knowledgeBasesCount": integer // ナレッジベースの総数を返します
      "knowledgeBasesPreview": [ // 先頭 10 件のナレッジベース名を返します
        string
      ]
      "inboxesCount": integer // 会話プラットフォームの総数を返します
      "inboxesPreview": [ // 先頭 10 件の会話プラットフォーム名を返します
        string
      ]
      "databasesCount": integer // データベースの総数を返します
      "databasesPreview": [ // 先頭 10 件のデータベース名を返します
        string
      ]
      "canCreateChatbot"?: boolean // 任意
      "canCreateKnowledgeBase"?: boolean // 任意
      "canCreateInbox"?: boolean // 任意
      "canCreateDatabase"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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": "レスポンス文字列",
      "type": {},
      "permissions": [
        {
          "id": "550e8400-e29b-41d4-a716-446655440000",
          "name": "レスポンスサンプル名",
          "description": "レスポンスサンプル説明"
        }
      ],
      "membersPreview": [
        "レスポンス文字列"
      ],
      "membersCount": 456,
      "chatbotsCount": 456,
      "chatbotsPreview": [
        "レスポンス文字列"
      ],
      "knowledgeBasesCount": 456,
      "knowledgeBasesPreview": [
        "レスポンス文字列"
      ],
      "inboxesCount": 456,
      "inboxesPreview": [
        "レスポンス文字列"
      ],
      "databasesCount": 456,
      "databasesPreview": [
        "レスポンス文字列"
      ],
      "canCreateChatbot": false,
      "canCreateKnowledgeBase": false,
      "canCreateInbox": false,
      "canCreateDatabase": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ロールの詳細を取得 <a href="#undefined" id="undefined"></a>

GET `/api/organizations/{organizationPk}/groups/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                    |
| ---------------- | -- | ------ | ------------------------------------- |
| `id`             | ✅  | string | A UUID string identifying this Group. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID  |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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
  "type": 
  {
  }
  "permissions": [ // グループの権限一覧を返します

処理フロー：
1. グループ権限を親権限と子権限に分割します
2. 子権限を親権限 ID ごとにグループ化します
3. 子権限に対応する親権限が欠けている場合は、不足している親権限をデータベースから自動的に読み込みます
4. 親権限と対応する子権限をシリアライズし、order で並べ替えます
    object
  ]
  "membersPreview": [ // 先頭 10 件のメンバー名を返します（リストには先頭 3 件、tooltip には 10 件を表示するために使用）
    string
  ]
  "membersCount": integer // 残りのメンバー数（リスト表示する 3 人を差し引いた数）を返します。フロントエンドの +N バッジ表示に使用します

リソースの count とは異なります：
- members_count: total - 3 を返します（+N バッジに使用）。None は総数が 3 以下であることを示します
- chatbots_count/knowledge_bases_count/inboxes_count: 総数を返します
  "chatbotsCount": integer // AI 助理の総数を返します
  "chatbotsPreview": [ // 先頭 10 件の AI 助理名を返します
    string
  ]
  "knowledgeBasesCount": integer // ナレッジベースの総数を返します
  "knowledgeBasesPreview": [ // 先頭 10 件のナレッジベース名を返します
    string
  ]
  "inboxesCount": integer // 会話プラットフォームの総数を返します
  "inboxesPreview": [ // 先頭 10 件の会話プラットフォーム名を返します
    string
  ]
  "databasesCount": integer // データベースの総数を返します
  "databasesPreview": [ // 先頭 10 件のデータベース名を返します
    string
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
  "createdAt": string (timestamp)
}
```

**レスポンスのサンプル値**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "type": {},
  "permissions": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンスサンプル名",
      "description": "レスポンスサンプル説明"
    }
  ],
  "membersPreview": [
    "レスポンス文字列"
  ],
  "membersCount": 456,
  "chatbotsCount": 456,
  "chatbotsPreview": [
    "レスポンス文字列"
  ],
  "knowledgeBasesCount": 456,
  "knowledgeBasesPreview": [
    "レスポンス文字列"
  ],
  "inboxesCount": 456,
  "inboxesPreview": [
    "レスポンス文字列"
  ],
  "databasesCount": 456,
  "databasesPreview": [
    "レスポンス文字列"
  ],
  "canCreateChatbot": false,
  "canCreateKnowledgeBase": false,
  "canCreateInbox": false,
  "canCreateDatabase": false,
  "createdAt": "レスポンス文字列"
}
```

***

### ロールの詳細を取得 <a href="#undefined" id="undefined"></a>

GET `/api/organizations/{organizationPk}/groups/export/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                   |
| ---------------- | -- | ------ | ------------------------------------ |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export/" \
  -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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export/", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export/"
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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export/", [
        '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
string (binary)
```

**レスポンスのサンプル値**

```json
"レスポンス文字列"
```

***

### ロールの詳細を取得 <a href="#undefined" id="undefined"></a>

GET `/api/organizations/{organizationPk}/groups/export-template/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                   |
| ---------------- | -- | ------ | ------------------------------------ |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export-template/" \
  -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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export-template/", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export-template/"
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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export-template/", [
        '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
string (binary)
```

**レスポンスのサンプル値**

```json
"レスポンス文字列"
```

***

### ロールの詳細を取得 <a href="#undefined" id="undefined"></a>

GET `/api/v1/organizations/{organizationPk}/groups/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                    |
| ---------------- | -- | ------ | ------------------------------------- |
| `id`             | ✅  | string | A UUID string identifying this Group. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID  |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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
  "type": 
  {
  }
  "permissions": [ // グループの権限一覧を返します

処理フロー：
1. グループ権限を親権限と子権限に分割します
2. 子権限を親権限 ID ごとにグループ化します
3. 子権限に対応する親権限が欠けている場合は、不足している親権限をデータベースから自動的に読み込みます
4. 親権限と対応する子権限をシリアライズし、order で並べ替えます
    object
  ]
  "membersPreview": [ // 先頭 10 件のメンバー名を返します（リストには先頭 3 件、tooltip には 10 件を表示するために使用）
    string
  ]
  "membersCount": integer // 残りのメンバー数（リスト表示する 3 人を差し引いた数）を返します。フロントエンドの +N バッジ表示に使用します

リソースの count とは異なります：
- members_count: total - 3 を返します（+N バッジに使用）。None は総数が 3 以下であることを示します
- chatbots_count/knowledge_bases_count/inboxes_count: 総数を返します
  "chatbotsCount": integer // AI 助理の総数を返します
  "chatbotsPreview": [ // 先頭 10 件の AI 助理名を返します
    string
  ]
  "knowledgeBasesCount": integer // ナレッジベースの総数を返します
  "knowledgeBasesPreview": [ // 先頭 10 件のナレッジベース名を返します
    string
  ]
  "inboxesCount": integer // 会話プラットフォームの総数を返します
  "inboxesPreview": [ // 先頭 10 件の会話プラットフォーム名を返します
    string
  ]
  "databasesCount": integer // データベースの総数を返します
  "databasesPreview": [ // 先頭 10 件のデータベース名を返します
    string
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
  "createdAt": string (timestamp)
}
```

**レスポンスのサンプル値**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "type": {},
  "permissions": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンスサンプル名",
      "description": "レスポンスサンプル説明"
    }
  ],
  "membersPreview": [
    "レスポンス文字列"
  ],
  "membersCount": 456,
  "chatbotsCount": 456,
  "chatbotsPreview": [
    "レスポンス文字列"
  ],
  "knowledgeBasesCount": 456,
  "knowledgeBasesPreview": [
    "レスポンス文字列"
  ],
  "inboxesCount": 456,
  "inboxesPreview": [
    "レスポンス文字列"
  ],
  "databasesCount": 456,
  "databasesPreview": [
    "レスポンス文字列"
  ],
  "canCreateChatbot": false,
  "canCreateKnowledgeBase": false,
  "canCreateInbox": false,
  "canCreateDatabase": false,
  "createdAt": "レスポンス文字列"
}
```

***

### ロールの詳細を取得 <a href="#undefined" id="undefined"></a>

GET `/api/v1/organizations/{organizationPk}/groups/export/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                   |
| ---------------- | -- | ------ | ------------------------------------ |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export/" \
  -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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export/", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export/"
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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export/", [
        '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
string (binary)
```

**レスポンスのサンプル値**

```json
"レスポンス文字列"
```

***

### ロールの詳細を取得 <a href="#undefined" id="undefined"></a>

GET `/api/v1/organizations/{organizationPk}/groups/export-template/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                   |
| ---------------- | -- | ------ | ------------------------------------ |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export-template/" \
  -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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export-template/", 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export-template/"
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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/export-template/", [
        '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
string (binary)
```

**レスポンスのサンプル値**

```json
"レスポンス文字列"
```

***

### ロールメンバー一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/organizations/{organizationPk}/groups/{groupPk}/group-members/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/?page=1&pageSize=1&query=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)
      "member": {
      {
        "id": string (uuid)
        "name": string
        "email": string
        "isOwner": boolean // メンバーが組織のオーナーであるか（OWNER Group を通じて）を確認します

同一 request 内での重複クエリを避けるためにキャッシュを使用します
キャッシュのライフサイクル：member instance が存在する間有効です

annotation の結果（存在する場合）を優先して使用し、重複クエリを避けます
        "permissions": [
          object
        ]
        "groups": [
          object
        ]
        "createdAt": string (timestamp)
      }
      }
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "member": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "email": "レスポンス文字列",
        "isOwner": false,
        "permissions": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンスサンプル名",
            "description": "レスポンスサンプル説明"
          }
        ],
        "groups": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンスサンプル名",
            "description": "レスポンスサンプル説明"
          }
        ],
        "createdAt": "レスポンス文字列"
      },
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ロールメンバー一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-members/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/?page=1&pageSize=1&query=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)
      "member": {
      {
        "id": string (uuid)
        "name": string
        "email": string
        "isOwner": boolean // メンバーが組織のオーナーであるか（OWNER Group を通じて）を確認します

同一 request 内での重複クエリを避けるためにキャッシュを使用します
キャッシュのライフサイクル：member instance が存在する間有効です

annotation の結果（存在する場合）を優先して使用し、重複クエリを避けます
        "permissions": [
          object
        ]
        "groups": [
          object
        ]
        "createdAt": string (timestamp)
      }
      }
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "member": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "email": "レスポンス文字列",
        "isOwner": false,
        "permissions": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンスサンプル名",
            "description": "レスポンスサンプル説明"
          }
        ],
        "groups": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンスサンプル名",
            "description": "レスポンスサンプル説明"
          }
        ],
        "createdAt": "レスポンス文字列"
      },
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### 特定のロールメンバーを表示 <a href="#undefined" id="undefined"></a>

GET `/api/organizations/{organizationPk}/groups/{groupPk}/group-members/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                           |
| ---------------- | -- | ------ | -------------------------------------------- |
| `groupPk`        | ✅  | string |                                              |
| `id`             | ✅  | string | A UUID string identifying this Group Member. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID         |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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)
  "member": {
  {
    "id": string (uuid)
    "name": string
    "email": string
    "isOwner": boolean // メンバーが組織のオーナーであるか（OWNER Group を通じて）を確認します

同一 request 内での重複クエリを避けるためにキャッシュを使用します
キャッシュのライフサイクル：member instance が存在する間有効です

annotation の結果（存在する場合）を優先して使用し、重複クエリを避けます
    "permissions": [
      object
    ]
    "groups": [
      object
    ]
    "createdAt": string (timestamp)
  }
  }
  "createdAt": string (timestamp)
}
```

**レスポンスのサンプル値**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "member": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "レスポンス文字列",
    "email": "レスポンス文字列",
    "isOwner": false,
    "permissions": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンスサンプル名",
        "description": "レスポンスサンプル説明"
      }
    ],
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンスサンプル名",
        "description": "レスポンスサンプル説明"
      }
    ],
    "createdAt": "レスポンス文字列"
  },
  "createdAt": "レスポンス文字列"
}
```

***

### 特定のロールメンバーを表示 <a href="#undefined" id="undefined"></a>

GET `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-members/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                           |
| ---------------- | -- | ------ | -------------------------------------------- |
| `groupPk`        | ✅  | string |                                              |
| `id`             | ✅  | string | A UUID string identifying this Group Member. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID         |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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)
  "member": {
  {
    "id": string (uuid)
    "name": string
    "email": string
    "isOwner": boolean // メンバーが組織のオーナーであるか（OWNER Group を通じて）を確認します

同一 request 内での重複クエリを避けるためにキャッシュを使用します
キャッシュのライフサイクル：member instance が存在する間有効です

annotation の結果（存在する場合）を優先して使用し、重複クエリを避けます
    "permissions": [
      object
    ]
    "groups": [
      object
    ]
    "createdAt": string (timestamp)
  }
  }
  "createdAt": string (timestamp)
}
```

**レスポンスのサンプル値**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "member": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "レスポンス文字列",
    "email": "レスポンス文字列",
    "isOwner": false,
    "permissions": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンスサンプル名",
        "description": "レスポンスサンプル説明"
      }
    ],
    "groups": [
      {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンスサンプル名",
        "description": "レスポンスサンプル説明"
      }
    ],
    "createdAt": "レスポンス文字列"
  },
  "createdAt": "レスポンス文字列"
}
```

***

### ロールの AI 助理一覧を取得 <a href="#ai" id="ai"></a>

GET `/api/organizations/{organizationPk}/groups/{groupPk}/group-chatbots/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/?page=1&pageSize=1&query=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)
      "group": string (uuid)
      "chatbot": 
      {
        "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` - Canvas（任意）
        {
        }
        "numberOfRetrievedChunks"?: integer // 取得する参照資料の数。デフォルトは 12、最小値は 1 です（任意）
        "enableEvaluation"?: boolean // 任意
        "enableInlineCitations"?: boolean // インライン引用機能を有効にします。応答に [1][2] 形式の引用マーカーが挿入されます（任意）
        "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます（任意）
        "customMaxLlmOutputTokens"?: integer // カスタムの最大 LLM 出力 token 数。最小値は 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)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "chatbot": {
        "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
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ロールの AI 助理一覧を取得 <a href="#ai" id="ai"></a>

GET `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-chatbots/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-chatbots/?page=1&pageSize=1&query=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)
      "group": string (uuid)
      "chatbot": 
      {
        "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` - Canvas（任意）
        {
        }
        "numberOfRetrievedChunks"?: integer // 取得する参照資料の数。デフォルトは 12、最小値は 1 です（任意）
        "enableEvaluation"?: boolean // 任意
        "enableInlineCitations"?: boolean // インライン引用機能を有効にします。応答に [1][2] 形式の引用マーカーが挿入されます（任意）
        "enableCodeInterpreter"?: boolean // 有効にすると Code Interpreter ツールが提供され、隔離されたコンテナ内でコードを実行できます（任意）
        "customMaxLlmOutputTokens"?: integer // カスタムの最大 LLM 出力 token 数。最小値は 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)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "chatbot": {
        "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
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ロールの受信トレイ一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/organizations/{organizationPk}/groups/{groupPk}/group-inboxes/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                                                                                                                                                           |
| ---------------- | -- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                                                                                                                                              |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID                                                                                                                                         |
| `channelType`    | ❌  | string  | \`line\`: LINE ; \`telegram\`: Telegram ; \`teams\`: Teams ; \`web\`: Web ; \`messenger\`: Messenger ; \`instagram\`: Instagram ; \`email\`: Email ; \`whatsapp\`: WhatsApp; |
| `chatbot`        | ❌  | string  |                                                                                                                                                                              |
| `isActive`       | ❌  | boolean |                                                                                                                                                                              |
| `page`           | ❌  | integer | A page number within the paginated result set.                                                                                                                               |
| `pageSize`       | ❌  | integer | Number of results to return per page.                                                                                                                                        |
| `query`          | ❌  | string  |                                                                                                                                                                              |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/?channelType=email&chatbot=550e8400-e29b-41d4-a716-446655440000&isActive=true&page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/?channelType=email&chatbot=550e8400-e29b-41d4-a716-446655440000&isActive=true&page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/?channelType=email&chatbot=550e8400-e29b-41d4-a716-446655440000&isActive=true&page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/?channelType=email&chatbot=550e8400-e29b-41d4-a716-446655440000&isActive=true&page=1&pageSize=1&query=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)
      "group": string (uuid)
      "inbox": 
      {
        "id": string (uuid)
        "channelType": string (enum: line, telegram, teams, web, messenger, instagram, email, whatsapp) // * `line` - LINE
* `telegram` - Telegram
* `teams` - Teams
* `web` - Web
* `messenger` - Messenger
* `instagram` - Instagram
* `email` - Email
* `whatsapp` - WhatsApp
        "name": string
        "unreadConversationsCount": integer
        "accessType": string
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "inbox": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "channelType": "line",
        "name": "レスポンス文字列",
        "unreadConversationsCount": 456,
        "accessType": "レスポンス文字列"
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ロールの受信トレイ一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-inboxes/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                                                                                                                                                           |
| ---------------- | -- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                                                                                                                                              |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID                                                                                                                                         |
| `channelType`    | ❌  | string  | \`line\`: LINE ; \`telegram\`: Telegram ; \`teams\`: Teams ; \`web\`: Web ; \`messenger\`: Messenger ; \`instagram\`: Instagram ; \`email\`: Email ; \`whatsapp\`: WhatsApp; |
| `chatbot`        | ❌  | string  |                                                                                                                                                                              |
| `isActive`       | ❌  | boolean |                                                                                                                                                                              |
| `page`           | ❌  | integer | A page number within the paginated result set.                                                                                                                               |
| `pageSize`       | ❌  | integer | Number of results to return per page.                                                                                                                                        |
| `query`          | ❌  | string  |                                                                                                                                                                              |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/?channelType=email&chatbot=550e8400-e29b-41d4-a716-446655440000&isActive=true&page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/?channelType=email&chatbot=550e8400-e29b-41d4-a716-446655440000&isActive=true&page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/?channelType=email&chatbot=550e8400-e29b-41d4-a716-446655440000&isActive=true&page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/?channelType=email&chatbot=550e8400-e29b-41d4-a716-446655440000&isActive=true&page=1&pageSize=1&query=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)
      "group": string (uuid)
      "inbox": 
      {
        "id": string (uuid)
        "channelType": string (enum: line, telegram, teams, web, messenger, instagram, email, whatsapp) // * `line` - LINE
* `telegram` - Telegram
* `teams` - Teams
* `web` - Web
* `messenger` - Messenger
* `instagram` - Instagram
* `email` - Email
* `whatsapp` - WhatsApp
        "name": string
        "unreadConversationsCount": integer
        "accessType": string
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "inbox": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "channelType": "line",
        "name": "レスポンス文字列",
        "unreadConversationsCount": 456,
        "accessType": "レスポンス文字列"
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ロールのナレッジベース一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/organizations/{organizationPk}/groups/{groupPk}/group-knowledge-bases/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/?page=1&pageSize=1&query=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)
      "group": string (uuid)
      "knowledgeBase": 
      {
        "id": string (uuid)
        "createdBy"?: string (uuid) // 任意
        "organization"?: string (uuid) // 任意
        "embeddingModel": string (uuid)
        "rerankerModel": string (uuid)
        "name": string
        "description"?: string // 任意
        "numberOfRetrievedChunks"?: integer // 取得する参照資料の数。デフォルトは 12、最小値は 1 です（任意）
        "sentenceWindowSize"?: integer // RAG 拡張のセンテンスウィンドウサイズ。デフォルトは 2、最小値は 0 です（任意）
        "enableHyde"?: boolean // HyDE を有効にします。デフォルトは False です（任意）
        "similarityCutoff"?: number (double) // 類似度のしきい値。デフォルトは 0.0、範囲は 0.0〜1.0 です（任意）
        "enableRerank"?: boolean // 再ランク付けを有効にするかどうか。デフォルトは True です（任意）
        "enableRrf"?: boolean // Enable Reciprocal Rank Fusion for hybrid search. Disable this if using a custom Elasticsearch without enterprise license.（任意）
        "vectorDatabaseType"?:  // Type of vector database: elasticsearch or opensearch.

* `elasticsearch` - Elasticsearch
* `opensearch` - OpenSearch
* `oracle` - Oracle AI Database 26ai（任意）
        {
        }
        "vectorDatabaseUrl"?: string // Custom vector database endpoint URL or Oracle DSN. For Elasticsearch/OpenSearch: URL format (e.g., "https://host:9200"). For Oracle: DSN format (e.g., "host:1521/service_name").（任意）
        "vectorDatabaseApiKey"?: string // API Key for Elasticsearch. Not used for OpenSearch.（任意）
        "opensearchUsername"?: string // Username for OpenSearch Basic Auth.（任意）
        "opensearchPassword"?: string // Password for OpenSearch Basic Auth.（任意）
        "oracleUser"?: string // Oracle database username.（任意）
        "oraclePassword"?: string // Oracle database password.（任意）
        "labels": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "chatbots"?: [ // 任意
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "groups"?: [ // ナレッジベースがアクセス可能なグループの一覧（任意）
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "filesCount": integer // Return count of KnowledgeBaseFile excluding processed files, conversation attachments, and soft-deleted.
        "vectorStorageSize": integer
        "chunksCount": integer
        "isMultimodal"?: boolean // Whether this knowledge base supports multimodal embeddings (text + images).（任意）
        "canUpdate": boolean // Return whether the current user can update this resource.
        "canDelete": boolean // Return whether the current user can delete this resource.
        "createdAt": string (timestamp)
        "updatedAt": string (timestamp)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "knowledgeBase": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "createdBy": "550e8400-e29b-41d4-a716-446655440000",
        "organization": "550e8400-e29b-41d4-a716-446655440000",
        "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
        "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "description": "レスポンス文字列",
        "numberOfRetrievedChunks": 456,
        "sentenceWindowSize": 456,
        "enableHyde": false,
        "similarityCutoff": 456,
        "enableRerank": false,
        "enableRrf": false,
        "vectorDatabaseType": {},
        "vectorDatabaseUrl": "レスポンス文字列",
        "vectorDatabaseApiKey": "レスポンス文字列",
        "opensearchUsername": "レスポンス文字列",
        "opensearchPassword": "レスポンス文字列",
        "oracleUser": "レスポンス文字列",
        "oraclePassword": "レスポンス文字列",
        "labels": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "chatbots": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "groups": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "filesCount": 456,
        "vectorStorageSize": 456,
        "chunksCount": 456,
        "isMultimodal": false,
        "canUpdate": false,
        "canDelete": false,
        "createdAt": "レスポンス文字列",
        "updatedAt": "レスポンス文字列"
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ロールのナレッジベース一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-knowledge-bases/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/?page=1&pageSize=1&query=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)
      "group": string (uuid)
      "knowledgeBase": 
      {
        "id": string (uuid)
        "createdBy"?: string (uuid) // 任意
        "organization"?: string (uuid) // 任意
        "embeddingModel": string (uuid)
        "rerankerModel": string (uuid)
        "name": string
        "description"?: string // 任意
        "numberOfRetrievedChunks"?: integer // 取得する参照資料の数。デフォルトは 12、最小値は 1 です（任意）
        "sentenceWindowSize"?: integer // RAG 拡張のセンテンスウィンドウサイズ。デフォルトは 2、最小値は 0 です（任意）
        "enableHyde"?: boolean // HyDE を有効にします。デフォルトは False です（任意）
        "similarityCutoff"?: number (double) // 類似度のしきい値。デフォルトは 0.0、範囲は 0.0〜1.0 です（任意）
        "enableRerank"?: boolean // 再ランク付けを有効にするかどうか。デフォルトは True です（任意）
        "enableRrf"?: boolean // Enable Reciprocal Rank Fusion for hybrid search. Disable this if using a custom Elasticsearch without enterprise license.（任意）
        "vectorDatabaseType"?:  // Type of vector database: elasticsearch or opensearch.

* `elasticsearch` - Elasticsearch
* `opensearch` - OpenSearch
* `oracle` - Oracle AI Database 26ai（任意）
        {
        }
        "vectorDatabaseUrl"?: string // Custom vector database endpoint URL or Oracle DSN. For Elasticsearch/OpenSearch: URL format (e.g., "https://host:9200"). For Oracle: DSN format (e.g., "host:1521/service_name").（任意）
        "vectorDatabaseApiKey"?: string // API Key for Elasticsearch. Not used for OpenSearch.（任意）
        "opensearchUsername"?: string // Username for OpenSearch Basic Auth.（任意）
        "opensearchPassword"?: string // Password for OpenSearch Basic Auth.（任意）
        "oracleUser"?: string // Oracle database username.（任意）
        "oraclePassword"?: string // Oracle database password.（任意）
        "labels": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "chatbots"?: [ // 任意
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "groups"?: [ // ナレッジベースがアクセス可能なグループの一覧（任意）
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "filesCount": integer // Return count of KnowledgeBaseFile excluding processed files, conversation attachments, and soft-deleted.
        "vectorStorageSize": integer
        "chunksCount": integer
        "isMultimodal"?: boolean // Whether this knowledge base supports multimodal embeddings (text + images).（任意）
        "canUpdate": boolean // Return whether the current user can update this resource.
        "canDelete": boolean // Return whether the current user can delete this resource.
        "createdAt": string (timestamp)
        "updatedAt": string (timestamp)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "knowledgeBase": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "createdBy": "550e8400-e29b-41d4-a716-446655440000",
        "organization": "550e8400-e29b-41d4-a716-446655440000",
        "embeddingModel": "550e8400-e29b-41d4-a716-446655440000",
        "rerankerModel": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "description": "レスポンス文字列",
        "numberOfRetrievedChunks": 456,
        "sentenceWindowSize": 456,
        "enableHyde": false,
        "similarityCutoff": 456,
        "enableRerank": false,
        "enableRrf": false,
        "vectorDatabaseType": {},
        "vectorDatabaseUrl": "レスポンス文字列",
        "vectorDatabaseApiKey": "レスポンス文字列",
        "opensearchUsername": "レスポンス文字列",
        "opensearchPassword": "レスポンス文字列",
        "oracleUser": "レスポンス文字列",
        "oraclePassword": "レスポンス文字列",
        "labels": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "chatbots": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "groups": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "filesCount": 456,
        "vectorStorageSize": 456,
        "chunksCount": 456,
        "isMultimodal": false,
        "canUpdate": false,
        "canDelete": false,
        "createdAt": "レスポンス文字列",
        "updatedAt": "レスポンス文字列"
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ロールのデータベース一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/organizations/{organizationPk}/groups/{groupPk}/group-databases/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/?page=1&pageSize=1&query=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)
      "group": string (uuid)
      "database": 
      {
        "id": string (uuid)
        "name": string // Display name for this database connection
        "description": string // Description of the database and its purpose
        "databaseType":  // Type of database: PostgreSQL, MySQL, MSSQL, Oracle, or MaiAgent

* `postgresql` - PostgreSQL
* `mysql` - MySQL
* `maiagent` - MaiAgent
* `oracle` - Oracle
* `mssql` - MSSQL
        {
        }
        "databaseUrl": string // Connection string for external databases. Not required for MaiAgent type as it uses the system default.
        "includeTables": object // Optional list of tables to include. Format: {"tables": ["table1", "table2"]}. For MaiAgent type, this is auto-populated from uploaded files.
        "isActive": boolean // When disabled, this database will not be used in Text-to-SQL queries
        "status": 
        {
        }
        "deletedAt": string (timestamp)
        "tables": [
          {
            "id": string (uuid)
            "tableName": string // Name of the table in the database
            "description"?: string // Description of the table and its data for better Text-to-SQL understanding（任意）
            "status": 
            {
            }
            "errorMessage": string // Error details if table creation or deletion failed
            "sourceFile": 
            {
              "id": string (uuid)
              "name": string
              "isFromKnowledgeBase": boolean // Determine if the source file originated from a knowledge base upload.

Returns True if the file was uploaded via knowledge base,
False if uploaded directly to the database.
            }
            "columns": [
              {
                "id": string (uuid)
                "columnName": string
                "columnType"?: string // Data type of the column (e.g., VARCHAR, INTEGER, TIMESTAMP)（任意）
                "description"?: string // Description of the column for better Text-to-SQL understanding（任意）
                "isPrimaryKey"?: boolean // 任意
                "isNullable"?: boolean // 任意
                "createdAt": string (timestamp)
                "updatedAt": string (timestamp)
              }
            ]
            "createdAt": string (timestamp)
            "updatedAt": string (timestamp)
          }
        ]
        "chatbots": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "groups": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "createdAt": string (timestamp)
        "updatedAt": string (timestamp)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "database": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "description": "レスポンス文字列",
        "databaseType": {},
        "databaseUrl": "レスポンス文字列",
        "includeTables": null,
        "isActive": false,
        "status": {},
        "deletedAt": "レスポンス文字列",
        "tables": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "tableName": "レスポンス文字列",
            "description": "レスポンス文字列",
            "status": {},
            "errorMessage": "レスポンス文字列",
            "sourceFile": {
              "id": "550e8400-e29b-41d4-a716-446655440000",
              "name": "レスポンス文字列",
              "isFromKnowledgeBase": false
            },
            "columns": [
              {
                "id": "550e8400-e29b-41d4-a716-446655440000",
                "columnName": "レスポンス文字列",
                "columnType": "レスポンス文字列",
                "description": "レスポンス文字列",
                "isPrimaryKey": false,
                "isNullable": false,
                "createdAt": "レスポンス文字列",
                "updatedAt": "レスポンス文字列"
              }
            ],
            "createdAt": "レスポンス文字列",
            "updatedAt": "レスポンス文字列"
          }
        ],
        "chatbots": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "groups": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "createdAt": "レスポンス文字列",
        "updatedAt": "レスポンス文字列"
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ロールのデータベース一覧を取得 <a href="#undefined" id="undefined"></a>

GET `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-databases/`

#### パラメータ

| パラメータ名           | 必須 | 型       | 説明                                             |
| ---------------- | -- | ------- | ---------------------------------------------- |
| `groupPk`        | ✅  | string  |                                                |
| `organizationPk` | ✅  | string  | A UUID string identifying this 組織 ID           |
| `page`           | ❌  | integer | A page number within the paginated result set. |
| `pageSize`       | ❌  | integer | Number of results to return per page.          |
| `query`          | ❌  | string  |                                                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X GET "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/?page=1&pageSize=1&query=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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/?page=1&pageSize=1&query=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)
      "group": string (uuid)
      "database": 
      {
        "id": string (uuid)
        "name": string // Display name for this database connection
        "description": string // Description of the database and its purpose
        "databaseType":  // Type of database: PostgreSQL, MySQL, MSSQL, Oracle, or MaiAgent

* `postgresql` - PostgreSQL
* `mysql` - MySQL
* `maiagent` - MaiAgent
* `oracle` - Oracle
* `mssql` - MSSQL
        {
        }
        "databaseUrl": string // Connection string for external databases. Not required for MaiAgent type as it uses the system default.
        "includeTables": object // Optional list of tables to include. Format: {"tables": ["table1", "table2"]}. For MaiAgent type, this is auto-populated from uploaded files.
        "isActive": boolean // When disabled, this database will not be used in Text-to-SQL queries
        "status": 
        {
        }
        "deletedAt": string (timestamp)
        "tables": [
          {
            "id": string (uuid)
            "tableName": string // Name of the table in the database
            "description"?: string // Description of the table and its data for better Text-to-SQL understanding（任意）
            "status": 
            {
            }
            "errorMessage": string // Error details if table creation or deletion failed
            "sourceFile": 
            {
              "id": string (uuid)
              "name": string
              "isFromKnowledgeBase": boolean // Determine if the source file originated from a knowledge base upload.

Returns True if the file was uploaded via knowledge base,
False if uploaded directly to the database.
            }
            "columns": [
              {
                "id": string (uuid)
                "columnName": string
                "columnType"?: string // Data type of the column (e.g., VARCHAR, INTEGER, TIMESTAMP)（任意）
                "description"?: string // Description of the column for better Text-to-SQL understanding（任意）
                "isPrimaryKey"?: boolean // 任意
                "isNullable"?: boolean // 任意
                "createdAt": string (timestamp)
                "updatedAt": string (timestamp)
              }
            ]
            "createdAt": string (timestamp)
            "updatedAt": string (timestamp)
          }
        ]
        "chatbots": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "groups": [
          {
            "id": string (uuid)
            "name": string
          }
        ]
        "createdAt": string (timestamp)
        "updatedAt": string (timestamp)
      }
      "canRead"?: boolean // 任意
      "canUpdate"?: boolean // 任意
      "canDelete"?: boolean // 任意
      "createdAt": string (timestamp)
    }
  ]
}
```

**レスポンスのサンプル値**

```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",
      "group": "550e8400-e29b-41d4-a716-446655440000",
      "database": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "name": "レスポンス文字列",
        "description": "レスポンス文字列",
        "databaseType": {},
        "databaseUrl": "レスポンス文字列",
        "includeTables": null,
        "isActive": false,
        "status": {},
        "deletedAt": "レスポンス文字列",
        "tables": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "tableName": "レスポンス文字列",
            "description": "レスポンス文字列",
            "status": {},
            "errorMessage": "レスポンス文字列",
            "sourceFile": {
              "id": "550e8400-e29b-41d4-a716-446655440000",
              "name": "レスポンス文字列",
              "isFromKnowledgeBase": false
            },
            "columns": [
              {
                "id": "550e8400-e29b-41d4-a716-446655440000",
                "columnName": "レスポンス文字列",
                "columnType": "レスポンス文字列",
                "description": "レスポンス文字列",
                "isPrimaryKey": false,
                "isNullable": false,
                "createdAt": "レスポンス文字列",
                "updatedAt": "レスポンス文字列"
              }
            ],
            "createdAt": "レスポンス文字列",
            "updatedAt": "レスポンス文字列"
          }
        ],
        "chatbots": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "groups": [
          {
            "id": "550e8400-e29b-41d4-a716-446655440000",
            "name": "レスポンス文字列"
          }
        ],
        "createdAt": "レスポンス文字列",
        "updatedAt": "レスポンス文字列"
      },
      "canRead": false,
      "canUpdate": false,
      "canDelete": false,
      "createdAt": "レスポンス文字列"
    }
  ]
}
```

***

### ロール権限を更新 <a href="#undefined" id="undefined"></a>

PUT `/api/organizations/{organizationPk}/groups/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                    |
| ---------------- | -- | ------ | ------------------------------------- |
| `id`             | ✅  | string | A UUID string identifying this Group. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID  |

#### リクエスト内容

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

| フィールド                  | 型              | 必須 | 説明 |
| ---------------------- | -------------- | -- | -- |
| name                   | string         | 必須 |    |
| organization           | string (uuid)  | 任意 |    |
| permissions            | array\[string] | 必須 |    |
| canCreateChatbot       | boolean        | 任意 |    |
| canCreateKnowledgeBase | boolean        | 任意 |    |
| canCreateInbox         | boolean        | 任意 |    |
| canCreateDatabase      | boolean        | 任意 |    |

**リクエスト構造のサンプル**

```typescript
{
  "name": string
  "organization"?: string (uuid) // 任意
  "permissions": [
    string (uuid)
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
}
```

**リクエストのサンプル値**

```json
{
  "name": "サンプル名",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "permissions": [
    "550e8400-e29b-41d4-a716-446655440000"
  ],
  "canCreateChatbot": true,
  "canCreateKnowledgeBase": true,
  "canCreateInbox": true,
  "canCreateDatabase": true
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X PUT "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": 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": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": true
  };

axios.put("https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "permissions": [
        "550e8400-e29b-41d4-a716-446655440000"
      ],
      "canCreateChatbot": true,
      "canCreateKnowledgeBase": true,
      "canCreateInbox": true,
      "canCreateDatabase": 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "permissions": [
                "550e8400-e29b-41d4-a716-446655440000"
            ],
            "canCreateChatbot": true,
            "canCreateKnowledgeBase": true,
            "canCreateInbox": true,
            "canCreateDatabase": 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
  "type": 
  {
  }
  "permissions": [ // グループの権限一覧を返します

処理フロー：
1. グループ権限を親権限と子権限に分割します
2. 子権限を親権限 ID ごとにグループ化します
3. 子権限に対応する親権限が欠けている場合は、不足している親権限をデータベースから自動的に読み込みます
4. 親権限と対応する子権限をシリアライズし、order で並べ替えます
    object
  ]
  "membersPreview": [ // 先頭 10 件のメンバー名を返します（リストには先頭 3 件、tooltip には 10 件を表示するために使用）
    string
  ]
  "membersCount": integer // 残りのメンバー数（リスト表示する 3 人を差し引いた数）を返します。フロントエンドの +N バッジ表示に使用します

リソースの count とは異なります：
- members_count: total - 3 を返します（+N バッジに使用）。None は総数が 3 以下であることを示します
- chatbots_count/knowledge_bases_count/inboxes_count: 総数を返します
  "chatbotsCount": integer // AI 助理の総数を返します
  "chatbotsPreview": [ // 先頭 10 件の AI 助理名を返します
    string
  ]
  "knowledgeBasesCount": integer // ナレッジベースの総数を返します
  "knowledgeBasesPreview": [ // 先頭 10 件のナレッジベース名を返します
    string
  ]
  "inboxesCount": integer // 会話プラットフォームの総数を返します
  "inboxesPreview": [ // 先頭 10 件の会話プラットフォーム名を返します
    string
  ]
  "databasesCount": integer // データベースの総数を返します
  "databasesPreview": [ // 先頭 10 件のデータベース名を返します
    string
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
  "createdAt": string (timestamp)
}
```

**レスポンスのサンプル値**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "type": {},
  "permissions": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンスサンプル名",
      "description": "レスポンスサンプル説明"
    }
  ],
  "membersPreview": [
    "レスポンス文字列"
  ],
  "membersCount": 456,
  "chatbotsCount": 456,
  "chatbotsPreview": [
    "レスポンス文字列"
  ],
  "knowledgeBasesCount": 456,
  "knowledgeBasesPreview": [
    "レスポンス文字列"
  ],
  "inboxesCount": 456,
  "inboxesPreview": [
    "レスポンス文字列"
  ],
  "databasesCount": 456,
  "databasesPreview": [
    "レスポンス文字列"
  ],
  "canCreateChatbot": false,
  "canCreateKnowledgeBase": false,
  "canCreateInbox": false,
  "canCreateDatabase": false,
  "createdAt": "レスポンス文字列"
}
```

***

### ロール権限を更新 <a href="#undefined" id="undefined"></a>

PUT `/api/v1/organizations/{organizationPk}/groups/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                    |
| ---------------- | -- | ------ | ------------------------------------- |
| `id`             | ✅  | string | A UUID string identifying this Group. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID  |

#### リクエスト内容

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

| フィールド                  | 型              | 必須 | 説明 |
| ---------------------- | -------------- | -- | -- |
| name                   | string         | 必須 |    |
| organization           | string (uuid)  | 任意 |    |
| permissions            | array\[string] | 必須 |    |
| canCreateChatbot       | boolean        | 任意 |    |
| canCreateKnowledgeBase | boolean        | 任意 |    |
| canCreateInbox         | boolean        | 任意 |    |
| canCreateDatabase      | boolean        | 任意 |    |

**リクエスト構造のサンプル**

```typescript
{
  "name": string
  "organization"?: string (uuid) // 任意
  "permissions": [
    string (uuid)
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
}
```

**リクエストのサンプル値**

```json
{
  "name": "サンプル名",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "permissions": [
    "550e8400-e29b-41d4-a716-446655440000"
  ],
  "canCreateChatbot": true,
  "canCreateKnowledgeBase": true,
  "canCreateInbox": true,
  "canCreateDatabase": true
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X PUT "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": 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": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": true
  };

axios.put("https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "permissions": [
        "550e8400-e29b-41d4-a716-446655440000"
      ],
      "canCreateChatbot": true,
      "canCreateKnowledgeBase": true,
      "canCreateInbox": true,
      "canCreateDatabase": 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "permissions": [
                "550e8400-e29b-41d4-a716-446655440000"
            ],
            "canCreateChatbot": true,
            "canCreateKnowledgeBase": true,
            "canCreateInbox": true,
            "canCreateDatabase": 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
  "type": 
  {
  }
  "permissions": [ // グループの権限一覧を返します

処理フロー：
1. グループ権限を親権限と子権限に分割します
2. 子権限を親権限 ID ごとにグループ化します
3. 子権限に対応する親権限が欠けている場合は、不足している親権限をデータベースから自動的に読み込みます
4. 親権限と対応する子権限をシリアライズし、order で並べ替えます
    object
  ]
  "membersPreview": [ // 先頭 10 件のメンバー名を返します（リストには先頭 3 件、tooltip には 10 件を表示するために使用）
    string
  ]
  "membersCount": integer // 残りのメンバー数（リスト表示する 3 人を差し引いた数）を返します。フロントエンドの +N バッジ表示に使用します

リソースの count とは異なります：
- members_count: total - 3 を返します（+N バッジに使用）。None は総数が 3 以下であることを示します
- chatbots_count/knowledge_bases_count/inboxes_count: 総数を返します
  "chatbotsCount": integer // AI 助理の総数を返します
  "chatbotsPreview": [ // 先頭 10 件の AI 助理名を返します
    string
  ]
  "knowledgeBasesCount": integer // ナレッジベースの総数を返します
  "knowledgeBasesPreview": [ // 先頭 10 件のナレッジベース名を返します
    string
  ]
  "inboxesCount": integer // 会話プラットフォームの総数を返します
  "inboxesPreview": [ // 先頭 10 件の会話プラットフォーム名を返します
    string
  ]
  "databasesCount": integer // データベースの総数を返します
  "databasesPreview": [ // 先頭 10 件のデータベース名を返します
    string
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
  "createdAt": string (timestamp)
}
```

**レスポンスのサンプル値**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "type": {},
  "permissions": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンスサンプル名",
      "description": "レスポンスサンプル説明"
    }
  ],
  "membersPreview": [
    "レスポンス文字列"
  ],
  "membersCount": 456,
  "chatbotsCount": 456,
  "chatbotsPreview": [
    "レスポンス文字列"
  ],
  "knowledgeBasesCount": 456,
  "knowledgeBasesPreview": [
    "レスポンス文字列"
  ],
  "inboxesCount": 456,
  "inboxesPreview": [
    "レスポンス文字列"
  ],
  "databasesCount": 456,
  "databasesPreview": [
    "レスポンス文字列"
  ],
  "canCreateChatbot": false,
  "canCreateKnowledgeBase": false,
  "canCreateInbox": false,
  "canCreateDatabase": false,
  "createdAt": "レスポンス文字列"
}
```

***

### ロール権限を部分更新 <a href="#undefined" id="undefined"></a>

PATCH `/api/organizations/{organizationPk}/groups/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                    |
| ---------------- | -- | ------ | ------------------------------------- |
| `id`             | ✅  | string | A UUID string identifying this Group. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID  |

#### リクエスト内容

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

| フィールド                  | 型              | 必須 | 説明 |
| ---------------------- | -------------- | -- | -- |
| name                   | string         | 任意 |    |
| organization           | string (uuid)  | 任意 |    |
| permissions            | array\[string] | 任意 |    |
| canCreateChatbot       | boolean        | 任意 |    |
| canCreateKnowledgeBase | boolean        | 任意 |    |
| canCreateInbox         | boolean        | 任意 |    |
| canCreateDatabase      | boolean        | 任意 |    |

**リクエスト構造のサンプル**

```typescript
{
  "name"?: string // 任意
  "organization"?: string (uuid) // 任意
  "permissions"?: [ // 任意
    string (uuid)
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
}
```

**リクエストのサンプル値**

```json
{
  "name": "サンプル名",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "permissions": [
    "550e8400-e29b-41d4-a716-446655440000"
  ],
  "canCreateChatbot": true,
  "canCreateKnowledgeBase": true,
  "canCreateInbox": true,
  "canCreateDatabase": true
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X PATCH "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": 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": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": true
  };

axios.patch("https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "permissions": [
        "550e8400-e29b-41d4-a716-446655440000"
      ],
      "canCreateChatbot": true,
      "canCreateKnowledgeBase": true,
      "canCreateInbox": true,
      "canCreateDatabase": 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "permissions": [
                "550e8400-e29b-41d4-a716-446655440000"
            ],
            "canCreateChatbot": true,
            "canCreateKnowledgeBase": true,
            "canCreateInbox": true,
            "canCreateDatabase": 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
  "type": 
  {
  }
  "permissions": [ // グループの権限一覧を返します

処理フロー：
1. グループ権限を親権限と子権限に分割します
2. 子権限を親権限 ID ごとにグループ化します
3. 子権限に対応する親権限が欠けている場合は、不足している親権限をデータベースから自動的に読み込みます
4. 親権限と対応する子権限をシリアライズし、order で並べ替えます
    object
  ]
  "membersPreview": [ // 先頭 10 件のメンバー名を返します（リストには先頭 3 件、tooltip には 10 件を表示するために使用）
    string
  ]
  "membersCount": integer // 残りのメンバー数（リスト表示する 3 人を差し引いた数）を返します。フロントエンドの +N バッジ表示に使用します

リソースの count とは異なります：
- members_count: total - 3 を返します（+N バッジに使用）。None は総数が 3 以下であることを示します
- chatbots_count/knowledge_bases_count/inboxes_count: 総数を返します
  "chatbotsCount": integer // AI 助理の総数を返します
  "chatbotsPreview": [ // 先頭 10 件の AI 助理名を返します
    string
  ]
  "knowledgeBasesCount": integer // ナレッジベースの総数を返します
  "knowledgeBasesPreview": [ // 先頭 10 件のナレッジベース名を返します
    string
  ]
  "inboxesCount": integer // 会話プラットフォームの総数を返します
  "inboxesPreview": [ // 先頭 10 件の会話プラットフォーム名を返します
    string
  ]
  "databasesCount": integer // データベースの総数を返します
  "databasesPreview": [ // 先頭 10 件のデータベース名を返します
    string
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
  "createdAt": string (timestamp)
}
```

**レスポンスのサンプル値**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "type": {},
  "permissions": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンスサンプル名",
      "description": "レスポンスサンプル説明"
    }
  ],
  "membersPreview": [
    "レスポンス文字列"
  ],
  "membersCount": 456,
  "chatbotsCount": 456,
  "chatbotsPreview": [
    "レスポンス文字列"
  ],
  "knowledgeBasesCount": 456,
  "knowledgeBasesPreview": [
    "レスポンス文字列"
  ],
  "inboxesCount": 456,
  "inboxesPreview": [
    "レスポンス文字列"
  ],
  "databasesCount": 456,
  "databasesPreview": [
    "レスポンス文字列"
  ],
  "canCreateChatbot": false,
  "canCreateKnowledgeBase": false,
  "canCreateInbox": false,
  "canCreateDatabase": false,
  "createdAt": "レスポンス文字列"
}
```

***

### ロール権限を部分更新 <a href="#undefined" id="undefined"></a>

PATCH `/api/v1/organizations/{organizationPk}/groups/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                    |
| ---------------- | -- | ------ | ------------------------------------- |
| `id`             | ✅  | string | A UUID string identifying this Group. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID  |

#### リクエスト内容

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

| フィールド                  | 型              | 必須 | 説明 |
| ---------------------- | -------------- | -- | -- |
| name                   | string         | 任意 |    |
| organization           | string (uuid)  | 任意 |    |
| permissions            | array\[string] | 任意 |    |
| canCreateChatbot       | boolean        | 任意 |    |
| canCreateKnowledgeBase | boolean        | 任意 |    |
| canCreateInbox         | boolean        | 任意 |    |
| canCreateDatabase      | boolean        | 任意 |    |

**リクエスト構造のサンプル**

```typescript
{
  "name"?: string // 任意
  "organization"?: string (uuid) // 任意
  "permissions"?: [ // 任意
    string (uuid)
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
}
```

**リクエストのサンプル値**

```json
{
  "name": "サンプル名",
  "organization": "550e8400-e29b-41d4-a716-446655440000",
  "permissions": [
    "550e8400-e29b-41d4-a716-446655440000"
  ],
  "canCreateChatbot": true,
  "canCreateKnowledgeBase": true,
  "canCreateInbox": true,
  "canCreateDatabase": true
}
```

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X PATCH "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/" \
  -H "Authorization: Api-Key YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": 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": "サンプル名",
    "organization": "550e8400-e29b-41d4-a716-446655440000",
    "permissions": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "canCreateChatbot": true,
    "canCreateKnowledgeBase": true,
    "canCreateInbox": true,
    "canCreateDatabase": true
  };

axios.patch("https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/"
headers = {
    "Authorization": "Api-Key YOUR_API_KEY",
    "Content-Type": "application/json"
}

# リクエスト内容 (payload)
data = {
      "name": "サンプル名",
      "organization": "550e8400-e29b-41d4-a716-446655440000",
      "permissions": [
        "550e8400-e29b-41d4-a716-446655440000"
      ],
      "canCreateChatbot": true,
      "canCreateKnowledgeBase": true,
      "canCreateInbox": true,
      "canCreateDatabase": 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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/", [
        'headers' => [
            'Authorization' => 'Api-Key YOUR_API_KEY',
            'Content-Type' => 'application/json'
        ],
        'json' => {
            "name": "サンプル名",
            "organization": "550e8400-e29b-41d4-a716-446655440000",
            "permissions": [
                "550e8400-e29b-41d4-a716-446655440000"
            ],
            "canCreateChatbot": true,
            "canCreateKnowledgeBase": true,
            "canCreateInbox": true,
            "canCreateDatabase": 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
  "type": 
  {
  }
  "permissions": [ // グループの権限一覧を返します

処理フロー：
1. グループ権限を親権限と子権限に分割します
2. 子権限を親権限 ID ごとにグループ化します
3. 子権限に対応する親権限が欠けている場合は、不足している親権限をデータベースから自動的に読み込みます
4. 親権限と対応する子権限をシリアライズし、order で並べ替えます
    object
  ]
  "membersPreview": [ // 先頭 10 件のメンバー名を返します（リストには先頭 3 件、tooltip には 10 件を表示するために使用）
    string
  ]
  "membersCount": integer // 残りのメンバー数（リスト表示する 3 人を差し引いた数）を返します。フロントエンドの +N バッジ表示に使用します

リソースの count とは異なります：
- members_count: total - 3 を返します（+N バッジに使用）。None は総数が 3 以下であることを示します
- chatbots_count/knowledge_bases_count/inboxes_count: 総数を返します
  "chatbotsCount": integer // AI 助理の総数を返します
  "chatbotsPreview": [ // 先頭 10 件の AI 助理名を返します
    string
  ]
  "knowledgeBasesCount": integer // ナレッジベースの総数を返します
  "knowledgeBasesPreview": [ // 先頭 10 件のナレッジベース名を返します
    string
  ]
  "inboxesCount": integer // 会話プラットフォームの総数を返します
  "inboxesPreview": [ // 先頭 10 件の会話プラットフォーム名を返します
    string
  ]
  "databasesCount": integer // データベースの総数を返します
  "databasesPreview": [ // 先頭 10 件のデータベース名を返します
    string
  ]
  "canCreateChatbot"?: boolean // 任意
  "canCreateKnowledgeBase"?: boolean // 任意
  "canCreateInbox"?: boolean // 任意
  "canCreateDatabase"?: boolean // 任意
  "createdAt": string (timestamp)
}
```

**レスポンスのサンプル値**

```json
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "name": "レスポンス文字列",
  "type": {},
  "permissions": [
    {
      "id": "550e8400-e29b-41d4-a716-446655440000",
      "name": "レスポンスサンプル名",
      "description": "レスポンスサンプル説明"
    }
  ],
  "membersPreview": [
    "レスポンス文字列"
  ],
  "membersCount": 456,
  "chatbotsCount": 456,
  "chatbotsPreview": [
    "レスポンス文字列"
  ],
  "knowledgeBasesCount": 456,
  "knowledgeBasesPreview": [
    "レスポンス文字列"
  ],
  "inboxesCount": 456,
  "inboxesPreview": [
    "レスポンス文字列"
  ],
  "databasesCount": 456,
  "databasesPreview": [
    "レスポンス文字列"
  ],
  "canCreateChatbot": false,
  "canCreateKnowledgeBase": false,
  "canCreateInbox": false,
  "canCreateDatabase": false,
  "createdAt": "レスポンス文字列"
}
```

***

### ロールを削除 <a href="#undefined" id="undefined"></a>

DELETE `/api/organizations/{organizationPk}/groups/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                    |
| ---------------- | -- | ------ | ------------------------------------- |
| `id`             | ✅  | string | A UUID string identifying this Group. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID  |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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 |

***

### ロールを削除 <a href="#undefined" id="undefined"></a>

DELETE `/api/v1/organizations/{organizationPk}/groups/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                    |
| ---------------- | -- | ------ | ------------------------------------- |
| `id`             | ✅  | string | A UUID string identifying this Group. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID  |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/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 |

***

### ロールメンバーを削除 <a href="#undefined" id="undefined"></a>

DELETE `/api/organizations/{organizationPk}/groups/{groupPk}/group-members/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                           |
| ---------------- | -- | ------ | -------------------------------------------- |
| `groupPk`        | ✅  | string |                                              |
| `id`             | ✅  | string | A UUID string identifying this Group Member. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID         |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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 |

***

### ロールメンバーを削除 <a href="#undefined" id="undefined"></a>

DELETE `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-members/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                           |
| ---------------- | -- | ------ | -------------------------------------------- |
| `groupPk`        | ✅  | string |                                              |
| `id`             | ✅  | string | A UUID string identifying this Group Member. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID         |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-members/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/organizations/{organizationPk}/groups/{groupPk}/group-chatbots/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                            |
| ---------------- | -- | ------ | --------------------------------------------- |
| `groupPk`        | ✅  | string |                                               |
| `id`             | ✅  | string | A UUID string identifying this Group Chatbot. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID          |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-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/organizations/{organizationPk}/groups/{groupPk}/group-chatbots/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                            |
| ---------------- | -- | ------ | --------------------------------------------- |
| `groupPk`        | ✅  | string |                                               |
| `id`             | ✅  | string | A UUID string identifying this Group Chatbot. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID          |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-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 |

***

### ロール内の受信トレイを削除 <a href="#undefined" id="undefined"></a>

DELETE `/api/organizations/{organizationPk}/groups/{groupPk}/group-inboxes/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                          |
| ---------------- | -- | ------ | ------------------------------------------- |
| `groupPk`        | ✅  | string |                                             |
| `id`             | ✅  | string | A UUID string identifying this Group Inbox. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID        |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/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 |

***

### ロール内の受信トレイを削除 <a href="#undefined" id="undefined"></a>

DELETE `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-inboxes/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                          |
| ---------------- | -- | ------ | ------------------------------------------- |
| `groupPk`        | ✅  | string |                                             |
| `id`             | ✅  | string | A UUID string identifying this Group Inbox. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID        |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-inboxes/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 |

***

### ロール内のナレッジベースを削除 <a href="#undefined" id="undefined"></a>

DELETE `/api/organizations/{organizationPk}/groups/{groupPk}/group-knowledge-bases/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                                  |
| ---------------- | -- | ------ | --------------------------------------------------- |
| `groupPk`        | ✅  | string |                                                     |
| `id`             | ✅  | string | A UUID string identifying this Group KnowledgeBase. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/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 |

***

### ロール内のナレッジベースを削除 <a href="#undefined" id="undefined"></a>

DELETE `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-knowledge-bases/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                                  |
| ---------------- | -- | ------ | --------------------------------------------------- |
| `groupPk`        | ✅  | string |                                                     |
| `id`             | ✅  | string | A UUID string identifying this Group KnowledgeBase. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID                |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-knowledge-bases/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 |

***

### ロール内のデータベースを削除 <a href="#undefined" id="undefined"></a>

DELETE `/api/organizations/{organizationPk}/groups/{groupPk}/group-databases/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                             |
| ---------------- | -- | ------ | ---------------------------------------------- |
| `groupPk`        | ✅  | string |                                                |
| `id`             | ✅  | string | A UUID string identifying this Group Database. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID           |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/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 |

***

### ロール内のデータベースを削除 <a href="#undefined" id="undefined"></a>

DELETE `/api/v1/organizations/{organizationPk}/groups/{groupPk}/group-databases/{id}/`

#### パラメータ

| パラメータ名           | 必須 | 型      | 説明                                             |
| ---------------- | -- | ------ | ---------------------------------------------- |
| `groupPk`        | ✅  | string |                                                |
| `id`             | ✅  | string | A UUID string identifying this Group Database. |
| `organizationPk` | ✅  | string | A UUID string identifying this 組織 ID           |

#### コードサンプル

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

```bash
# API 呼び出しサンプル (Shell)
curl -X DELETE "https://api.maiagent.ai/api/v1/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/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/organizations/550e8400-e29b-41d4-a716-446655440000/groups/550e8400-e29b-41d4-a716-446655440000/group-databases/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 |

***


---

# 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/jue-se-he-quan-xian.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.
