logo
Development
検索
メタデータフィールドの作成

メタデータフィールドの作成

メタデータフィールドを一括作成します。knowledge_base_id を指定しない場合は、Agent 配下のすべてのドキュメントに適用されるグローバルフィールドが作成されます。指定した場合は、対象のナレッジベース内だけで使用できるフィールドが作成されます。name と display_label はどちらも一意である必要があります。

バッチルール:
一度に最大 50 個まで作成でき、50 個を超えるとバッチ全体が処理されません。
リクエスト内で name が重複する場合、最初の項目のみが処理され、以降の重複項目は失敗します。
既存フィールドと競合する場合、競合した項目のみが失敗し、その他の項目は通常どおり作成されます。

リクエストメソッド

POST

エンドポイント

https://api-${endpoint}.gptbots.ai/v1/bot/doc/metadata/field/create

認証

認証方法については、API 概要を参照してください。

リクエスト

リクエスト例

curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/bot/doc/metadata/field/create' \ -H 'Authorization: Bearer ${API Key}' \ -H 'Content-Type: application/json' \ -d '{ "knowledge_base_id": "kb_001", "fields": [ { "name": "category", "display_label": "カテゴリ", "type": "LIST", "options": ["技術", "製品"], "description": "ドキュメントカテゴリ", "ai_search_filter": true } ] }'
                      
                      curl -X POST 'https://api-${endpoint}.gptbots.ai/v1/bot/doc/metadata/field/create' \
-H 'Authorization: Bearer ${API Key}' \
-H 'Content-Type: application/json' \
-d '{
    "knowledge_base_id": "kb_001",
    "fields": [
        {
            "name": "category",
            "display_label": "カテゴリ",
            "type": "LIST",
            "options": ["技術", "製品"],
            "description": "ドキュメントカテゴリ",
            "ai_search_filter": true
        }
    ]
}'

                    
このコードブロックをポップアップで表示

リクエストヘッダー

フィールド 説明
Authorization Bearer ${API Key} Authorization: Bearer ${API Key} で認証します。API キーページで API Key を取得してください。
Content-Type application/json データ型。application/json に設定します。

リクエストパラメータ

フィールド 必須 説明
knowledge_base_id String いいえ 未指定の場合はグローバルフィールド(Agent 配下のすべてのドキュメントに適用)、指定した場合は対象ナレッジベース専用のフィールドになります。ナレッジベースは現在の API Key に関連付けられた Agent に属している必要があり、属していない場合は knowledge_base_id not found が返されます。
fields Array<Object> はい 作成するフィールドのリスト (一度に最大 50 個)。
name String はい フィールドの内部識別子。形式は ^[a-z][a-z0-9_]{0,31}$(小文字で始まり、長さ 1~32 文字)で、一意である必要があります。
display_label String はい フィールド表示名、最大 64 文字、一意。
type String はい フィールドタイプ: STRING / NUMBER / DATETIME / LIST (大文字と小文字が区別されます)。
options Array<String> いいえ 列挙オプション。type が LIST の場合は必須で、空の配列は指定できません。
description String いいえ フィールドの説明 (最大 50 文字)。
ai_search_filter Boolean いいえ AI Search フィルター フィールドとして使用するかどうか。

レスポンス

レスポンス例

{ "success_count": 1, "failure_count": 2, "results": [ { "name": "category", "success": true, "id": "665f1c8a9b2e4d001a3f0001" }, { "name": "priority", "success": false, "error_message": "name or display_label already exists" }, { "name": "category", "success": false, "error_message": "duplicate name in request" } ] }
                      
                      {
    "success_count": 1,
    "failure_count": 2,
    "results": [
        {
            "name": "category",
            "success": true,
            "id": "665f1c8a9b2e4d001a3f0001"
        },
        {
            "name": "priority",
            "success": false,
            "error_message": "name or display_label already exists"
        },
        {
            "name": "category",
            "success": false,
            "error_message": "duplicate name in request"
        }
    ]
}

                    
このコードブロックをポップアップで表示

成功レスポンス

フィールド 説明
success_count Integer 正常に作成されたフィールドの数。
failure_count Integer 作成に失敗したフィールドの数。
results Array<Object> リクエスト順に返されるフィールドごとの結果。
name String フィールド名。
success Boolean 正常に作成されたかどうか。
id String システム生成フィールド ID (成功時に返され、編集/削除時に使用されます)。
error_message String 失敗の理由: name or display_label already exists (name または display_label が既存のフィールドと競合) / duplicate name in request (リクエスト内で重複) / field limit exceeded (フィールドの合計数の上限を超えています)。

エラーレスポンス

フィールド 説明
code Integer エラーコード。
message String エラーの詳細。