> ## Documentation Index
> Fetch the complete documentation index at: https://ai-kb.automationanywhere.com/llms.txt
> Use this file to discover all available pages before exploring further.

# スマートテーブル

> スマートテーブルを使用してデータを保存・検索する方法を学びましょう

<Tabs>
  <Tab title="概要">
    **スマートテーブル**は、ナレッジベース（KB）内の構造化データ管理機能で、テーブル形式でデータを保存・整理・抽出できます。一般的なスプレッドシートとは異なり、スマートテーブルはAI機能と統合されており、ドキュメントからの自動データ抽出、異なるデータセット（コレクション）間のリレーションシップマッピング、AIエージェントを通じた直接クエリが可能です。

    主な機能：

    * **構造化スキーマの定義** — カラム、データ型、フォーマット
    * **アップロードされたファイルからの自動データ抽出**（例：履歴書、請求書）
    * **内蔵ダッシュボードによるデータの可視化**
    * **エージェントを使用した自然言語でのテーブルデータクエリ**

    ***

    ## スマートテーブルへのアクセス

    スマートテーブルは、アプリケーションの\*\*ナレッジベース（KB）\*\*セクションからアクセスできます。作成後、**KBデータ**セクションに移動してスマートテーブルを表示・管理できます。すべてのテーブルが一覧表示され、表示や編集のために開くことができます。

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/1.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=3f8442d21e49065f435002639faa964e" alt="スマートテーブルの一覧を表示するKBデータセクション" width="1157" height="506" data-path="img/data-management/1.jpg" />

    ***

    ## スマートテーブルの作成

    ナレッジベース内でスマートテーブルを作成するには、主に3つの方法があります。KBインターフェースの作成メニューをクリックしてこれらのオプションにアクセスします。

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/2.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=2889369da79a040548d05bc1c3038697" alt="スマートテーブル作成用の3つのオプションメニュー" width="710" height="379" data-path="img/data-management/2.jpg" />

    ### 方法A：空のスマートテーブルを作成

    このオプションは、デフォルトのシステムカラム（タイトル、説明、番号）を持つ空のテーブルを作成します。サイドバーの構成パネルが自動的に開き、カスタムスキーマをゼロから定義できます。これらのデフォルトフィールドを維持したり、変更したり、削除して独自の構造を作成したりできます。

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/3.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=6578611cbf280821f72e231bfd3feb83" alt="デフォルトフィールドを含むサイドバーパネル" width="988" height="757" data-path="img/data-management/3.jpg" />

    ### 方法B：テンプレートから作成

    事前定義されたテンプレートを選択して、一般的なユースケース向けにテーブルを迅速にセットアップできます。さまざまなシナリオ向けに複数のテンプレートが用意されています。例えば、**評価テンプレート**はエージェントの応答をテストするために設計された事前定義カラムセットをインポートします（質問テキスト、期待される回答、実際の応答）。

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/4.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=271fed69050a7dc2e147570df9358aaf" alt="テンプレート選択ダイアログ" width="1280" height="371" data-path="img/data-management/4.jpg" />

    ### 方法C：ファイルからインポート

    **CSVファイル**をアップロードして、スマートテーブルを自動的に作成できます。システムはCSVヘッダーを解析してカラムを作成し、行をデータエントリとしてインポートします。

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/5.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=c85a170fbdb81f474005f624c5560ebb" alt="CSVインポートインターフェース" width="1024" height="532" data-path="img/data-management/5.jpg" />

    ***

    ## カラムの種類と設定

    スマートテーブルを設定する際、各カラムには正確なデータ保存と抽出のために特定の定義が必要です。カラムは**名前**、**型**、**フォーマット**、**ツールソース**で構成されます。

    <Info>
      各カラムに明確な**説明**を提供することが非常に重要です。この説明は、大規模言語モデル（LLM）に対して、そのフィールドからどの特定情報を抽出または生成すべきかを指示します。
    </Info>

    ### カラムの設定

    スマートテーブルの作成または編集時に、サイドバーパネルを使用して各カラムを設定します。フィールドのプロパティ（名前、型、フォーマット、ツール、説明）を設定した後、**フィールドを保存**をクリックして設定を適用します。カラム設定パネルでフィールド名をクリックし、変更を加えて再度保存することで、いつでも既存のフィールドを編集できます。

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/6.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=a203d101137251db3eedbf021eda5c1f" alt="カラム設定サイドバー" width="946" height="504" data-path="img/data-management/6.jpg" />

    ### フィールドの種類とフォーマット

    | フィールドの種類     | 説明                       | フォーマットオプション                          |
    | ------------ | ------------------------ | ------------------------------------ |
    | **テキスト**     | 標準の英数字文字列                | テキスト、電話番号、メール                        |
    | **数値**       | 数値                       | 数値、小数、通貨                             |
    | **単一選択**     | 事前定義リストから1つの値を選択         | ドロップダウンオプション（例：スキルレベル：初級、中級、上級）      |
    | **複数選択**     | 事前定義リストから複数の値を選択         | オプションのリスト（例：言語：Python、Java、HTML、CSS） |
    | **チェックボックス** | ブール値（True/False）         | True/False（例：女性ですか？）                 |
    | **日付**       | カレンダー日付                  | 日付フォーマット（DD/MM/YYYYなど）               |
    | **ユーザー**     | システム内のユーザーへの参照           | ユーザー名またはユーザーメール                      |
    | **ファイル**     | ドキュメントの添付ファイルフィールド       | ファイルアップロード                           |
    | **コレクション**   | 別のスマートテーブルへのリンク（リレーショナル） | 対象のスマートテーブルを選択                       |

    <img src="https://mintcdn.com/automationanywhere/0dXuEmbFQgFpmNJq/img/data-management/7.jpg?fit=max&auto=format&n=0dXuEmbFQgFpmNJq&q=85&s=0c20f3626c1a890306be95a50516ae2c" alt="フィールドの種類ドロップダウンオプション" width="1280" height="640" data-path="img/data-management/7.jpg" />

    ### ツールソース

    **ツール**設定は、データがセルにどのように入力されるかを定義します：

    * **ユーザー入力** — データがユーザーによって手動で入力されるか、変更なしにファイルから直接抽出される
    * **LLM生成** — AIモデルがカラムの説明とコンテキストに基づいてコンテンツを生成する（例：履歴書の要約）
    * **エージェント生成** — エージェントがクエリを処理し、応答でこのフィールドを入力する
    * **比較** — 2つのフィールドを比較し、一致するかどうかを判断するか、類似度スコアを計算する

          <img src="https://mintcdn.com/automationanywhere/0dXuEmbFQgFpmNJq/img/data-management/8.jpg?fit=max&auto=format&n=0dXuEmbFQgFpmNJq&q=85&s=e279e8bfe0a604975d9d7984274e1ed7" alt="ツールソースドロップダウン" width="907" height="443" data-path="img/data-management/8.jpg" />

    ***

    ## データ抽出（ドキュメント処理）

    スマートテーブルは、アップロードされたドキュメントからデータを抽出することで、行を自動的に埋めることができます。これは、履歴書やフォームなどの標準化されたドキュメントを処理する際に特に便利です。アップロードされた各ドキュメントはスマートテーブルに1行を作成しますが、複数のドキュメントをアップロードして処理することで、同じテーブルに複数の行を作成できます。

    ### ワークフロー：履歴書抽出の例

    <Steps>
      <Step title="スキーマの定義">
        以下のカラムを持つ「履歴書」という名前のスマートテーブルを作成します：

        * 名前（テキスト）
        * 連絡先番号（テキスト — 電話番号フォーマット）
        * 経験年数（数値 — 小数フォーマット）
        * 言語（複数選択：Python、Java、HTML、CSS）
        * 女性（チェックボックス）
        * 履歴書ファイル（ファイル）
      </Step>

      <Step title="ドキュメントのアップロード">
        ナレッジベースに移動し、ファイル（例：PDFの履歴書）をアップロードします。
      </Step>

      <Step title="スマートテーブルの割り当て">
        アップロード時に「履歴書」スマートテーブルを選択します。
      </Step>

      <Step title="抽出">
        システムがドキュメントを処理し、定義されたカラムにコンテンツをマッピングします — 例えば、テキスト内の「3年」を見つけて経験年数を入力したり、連絡先番号の電話番号を抽出したりします。
      </Step>

      <Step title="結果の確認">
        スマートテーブルに移動して、抽出されたデータを含む新しい行を表示します。
      </Step>
    </Steps>

    <img src="https://mintcdn.com/automationanywhere/0dXuEmbFQgFpmNJq/img/data-management/9.jpg?fit=max&auto=format&n=0dXuEmbFQgFpmNJq&q=85&s=614b670849bc21526a3335d2f6cea3ae" alt="スマートテーブル割り当てを含むファイルアップロードモーダル" width="756" height="703" data-path="img/data-management/9.jpg" />

    割り当てなしでファイルがアップロードされた場合、ドキュメント設定から後で割り当てることができます。ドキュメントに移動し、**スマートテーブルを割り当て**をクリックし、対象のスマートテーブルを選択し、**適用**をクリックして遡及的に抽出プロセスをトリガーします。

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/10.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=d2265822d273ded0e594ddfc13be1333" alt="スマートテーブル割り当てを含むドキュメント設定" width="652" height="542" data-path="img/data-management/10.jpg" />

    <Tip>
      アップロード時にスマートテーブルを割り当てる際、**クイックアップロード**を有効にすると、ファイルアップロード完了と同時にデータを自動的に抽出して入力します。
    </Tip>

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/11.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=fc3097dd8c9deebf980bacf609b9aef1" alt="抽出データを含む履歴書スマートテーブル" width="1280" height="385" data-path="img/data-management/11.jpg" />

    ***

    ## コレクションとリレーションシップ

    **コレクション**は、スマートテーブル間の多対多マッピングを可能にします。これは、メインテーブルの1行に複雑なリストデータが含まれ、独自の構造が必要な場合に便利です。

    ### 例：スキルマッピング

    スキルを単純なカンマ区切り文字列（例：「Python, Java」）として保存する代わりに、詳細なスキル情報を含むリレーショナル構造を作成できます：

    1. **「スキル」テーブルを作成** — カラムを定義：
       * スキル名（テキスト） — ユーザーが持つスキルの名前
       * スキルレベル（単一選択） — オプション：初級、中級、上級
    2. **メインテーブルを設定** — 「履歴書」テーブルに「スキル」という名前のカラムを作成します。
    3. **型をコレクションに設定** — カラムの型を**コレクション**に設定し、「スキル」スマートテーブルにリンクします。
    4. **結果** — 履歴書が処理されると、システムはスキルを抽出し、「スキル」テーブルに詳細な行（例：「Python - 上級」、「Java - 初級」、「AWS - 中級」）を入力し、多対多リレーションシップを通じて特定の候補者にリンクします。

           <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/12.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=dab46bea1fcaeb871225d59223ce2e8c" alt="リンクデータを含むスキルスマートテーブル" width="1280" height="760" data-path="img/data-management/12.jpg" />

    ### コレクションデータの表示

    メインテーブル（例：履歴書）を表示する際、コレクションフィールドには関連エントリへのリンクが表示されます。リンクをクリックすると、リンクされたテーブル（例：スキル）に移動し、その候補者のすべての詳細エントリを表示できます。リレーションシップは双方向です — スキルテーブルのコンテンツキーを確認することで、各スキルがどの履歴書に属しているかを確認できます。

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/13.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=5ac517accc7a104f50044faa2371a588" alt="履歴書テーブルのコレクションフィールド" width="1280" height="558" data-path="img/data-management/13.jpg" />

    ***

    ## データ管理

    データが入力された後、データを管理・整理するためのいくつかのツールがあります。

    ### ビューとタブ

    スマートテーブルは2つのビューを提供します：

    * **テーブルビュー** — 行と列を表示・編集するためのデフォルトのスプレッドシートライクなビュー
    * **ダッシュボードビュー** — チャートやウィジェットを作成してデータを分析する可視化ビュー

          <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/14.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=928e3c88801d9284d952d95f245d5d1b" alt="テーブルビューとダッシュボードビューのタブ" width="660" height="217" data-path="img/data-management/14.jpg" />

    ### 行の追加と管理

    * **行を挿入** — **行を追加**または**行を挿入**をクリックして、新しい空の行を手動で追加
    * **自動行作成** — ドキュメントがアップロードされてスマートテーブルに割り当てられると、新しい行が自動的に作成され、抽出されたデータが入力されます

          <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/15.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=51fc6a1806801a0b0b750be40b26dd17" alt="行を追加ボタンとアクション" width="1280" height="610" data-path="img/data-management/15.jpg" />

    ### 編集と再計算

    * **手動編集** — 任意のセルをクリックして値を手動で更新
    * **セル/行を実行** — LLM生成またはエージェント生成フィールドについて、**セルを実行**または**行を実行**をクリックして、その行のデータを計算または更新
    * **すべて再計算** — すべての行を同時に更新します。カラムの説明やエージェント設定を更新した後、データセット全体を再処理する場合に便利です

          <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/16.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=58317db5662c9860c95cf13140861cee" alt="セル/行を実行およびすべて再計算ボタン" width="1280" height="608" data-path="img/data-management/16.jpg" />

    <Note>
      各行には、ソースドキュメントへのリンクとなる一意の**コンテンツキー**識別子が自動的に割り当てられます。これにより、抽出されたデータと元のファイル間のトレーサビリティが実現されます。
    </Note>

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/17.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=83b8b55483ab8b5d3225a5ef01025fc4" alt="コンテンツキーカラム" width="778" height="746" data-path="img/data-management/17.jpg" />

    ### グループ化と整理

    特定のカラムでデータをグループ化してビューを整理できます。例えば、候補者リストを「言語」複数選択フィールドでグループ化すると、すべてのPython開発者を一覧できます。また、テーブルビューでドラッグ＆ドロップしてカラムを再配置することもできます。

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/18.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=12b0e37ed9fa7e66900af2d0b42706fe" alt="グループ化機能" width="1280" height="299" data-path="img/data-management/18.jpg" />

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/19.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=2805b67a30c99a84998fb58fb46b0d64" alt="カラムの再配置" width="720" height="676" data-path="img/data-management/19.jpg" />

    ### スマートテーブルの名前変更

    上部のテーブル名をクリックして新しい名前を入力します。これにより、説明的な識別子（例：「履歴書」、「スキル」、「評価」）で複数のテーブルを整理できます。

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/20.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=b7261f05d8e6a96a6c3bada23310bb63" alt="スマートテーブルの名前変更" width="667" height="404" data-path="img/data-management/20.jpg" />

    ### フィールドと行の削除

    * **カラムを削除** — カラム設定を編集する際、**フィールドを削除**を選択してカラムを完全に削除
    * **行を削除** — 行をクリックして**削除**を選択し、個別のエントリを削除

    ***

    ## ダッシュボードと可視化

    スマートテーブルには、保存されたデータを可視化するための内蔵**ダッシュボード**ビューが含まれています。

    ### ウィジェットの作成

    1. スマートテーブルの**ダッシュボード**タブに移動します
    2. **ウィジェットを追加**をクリックします
    3. チャートを設定します：
       * **ウィジェットタイトル** — 説明的なタイトルを入力します（例：「性別ごとの候補者合計」）
       * **チャートの種類** — 円グラフ、棒グラフ、折れ線グラフなどから選択
       * **X軸（カテゴリ）** — グループ化フィールドを選択します（例：女性かどうか）
       * **Y軸（値）** — 計測する指標を選択し、カウント、合計、平均などの集計関数を使用
       * **Yシリーズカラム名** — オプションでチャート凡例に表示されるラベルをカスタマイズ
    4. ウィジェットを保存してダッシュボードに追加します

           <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/21.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=5db4ec7ff54e8ec5822055feac5074bf" alt="ウィジェット追加ダイアログ" width="1280" height="723" data-path="img/data-management/21.jpg" />

           <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/22.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=57e36bb6b2fda74f7234dde5c1fe9cbf" alt="円グラフを含むダッシュボードビュー" width="1128" height="409" data-path="img/data-management/22.jpg" />

    ***

    ## エージェントを通じたスマートテーブルのクエリ

    スマートテーブルの最も強力な機能の1つは、**エージェント**を通じて自然言語で構造化データをクエリできる ability です。

    ### セットアッププロセス

    <Steps>
      <Step title="エージェントの作成">
        エージェントビルダーに移動し、新しいエージェントを作成するか、既存のエージェントを開きます。
      </Step>

      <Step title="ツールキットの設定">
        エージェントに**データベースマネージャー**ツールキットを追加します。
      </Step>

      <Step title="スマートテーブルの選択">
        ツールキット設定で、エージェントがアクセスできるスマートテーブルを1つ以上選択します。これにより、エージェントは複数の関連テーブルにまたがってクエリを実行できます。
      </Step>

      <Step title="クエリオプションの設定">
        エージェントがスマートテーブルデータのみにアクセスする場合のみ、「データベースクエリ」や「データベーススキーマ」など、不要なオプションの選択を解除します。
      </Step>

      <Step title="保存とテスト">
        エージェントチャットを開き、自然言語で質問します。例：

        * 「5年以上の経験を持つ候補者は何人いますか？」
        * 「Pythonのエキスパートをすべて一覧表示してください」
        * 「履歴書テーブルには何行ありますか？」
      </Step>
    </Steps>

    エージェントはスマートテーブルに対してクエリを実行し、自然言語で回答を返します。

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/23.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=ee95580628d997a9c5ec1473742fd697" alt="データベースマネージャーツールキットを含むエージェントビルダー" width="756" height="606" data-path="img/data-management/23.jpg" />

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/24.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=2c23c2bca7c398cb68751e2c37e188b9" alt="スマートテーブル選択を表示するデータベースマネージャー設定" width="1280" height="650" data-path="img/data-management/24.jpg" />

    <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/25.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=f22c059f89f44e0d5612e0195faf1f1e" alt="エージェントクエリの例" width="1231" height="752" data-path="img/data-management/25.jpg" />

    ***

    ## テンプレート

    テンプレートは、一般的なユースケース向けに事前設定されたカラム構造を提供し、セットアップを加速します。既存のテンプレートから選択できますが、UIを通じてカスタムテンプレートを作成することはできません。

    ### 評価テンプレート

    エージェントのパフォーマンスをテストし、AIの応答を検証するために設計されています。以下が含まれます：

    * **質問テキスト** — エージェントへの入力プロンプト（ユーザー入力）
    * **期待される回答** — グラウンドトゥルースまたは正解（ユーザー入力）
    * **実際の応答** — 評価実行中にエージェントによって入力されます（エージェント生成）
    * **評価ステータス** — 実際の応答と期待される回答を比較し、合格/不合格の割合を返します（比較）

    **評価テンプレートの使用方法：**

    1. 評価テンプレートからスマートテーブルを作成
    2. テスト質問と期待される回答を含む行を追加
    3. エージェントフィールドを設定してAIエージェントに接続
    4. 個別の行を実行するか、**すべて再計算**を実行してすべての質問をテスト
    5. 実際の応答と評価ステータスを確認してエージェントのパフォーマンスを評価

           <img src="https://mintcdn.com/automationanywhere/MyZJbsTGQlwZyUiG/img/data-management/26.jpg?fit=max&auto=format&n=MyZJbsTGQlwZyUiG&q=85&s=79737013332d87b67f2c023db491bb72" alt="使用中の評価テンプレート" width="1280" height="591" data-path="img/data-management/26.jpg" />

    ***

    ## ベストプラクティス

    * **カラムの説明** — 各カラムに明確で説明的なテキストを記述して、抽出時にLLMを導きます。例えば、「経験年数」というカラム名に次のように追加します：*「履歴書に記載されている專業的な仕事経験の総年数」*。
    * **データ型** — 正確なソート、フィルタリング、チャート作成を可能にするために、具体的な型（数値 vs. テキスト）を使用します。「経験年数」にはテキストではなく数値を使用してください。
    * **フォーマットの選択** — フィールドの種類に応じて適切なフォーマットを選択します。連絡先フィールドには電話番号フォーマットを使用し、金額には通貨フォーマットを使用してください。
    * **コレクション** — 複雑なリスト（スキル、資格、学歴）にはコレクションを使用して、データの整合性を維持し、より深いクエリを可能にします。
    * **テスト** — バルクアップロード前に、1〜2つのドキュメントでテストして、カラムの説明が正しくAIを導いていることを確認してください。
    * **クイックアップロード** — アップロード時にスマートテーブルを割り当てる際、クイックアップロードを有効にしてデータを即座に抽出・入力してください。
    * **抽出の再適用** — カラムの定義を変更した場合、更新された設定で再抽出するために、既存のドキュメントにスマートテーブルを再割り当てしてください。
    * **比較フィールド** — Q\&Aワークフローでの期待値と実際の結果の比較など、検証シナリオには比較を使用してください。

    <Info>
      スマートテーブルは\*\*ワークフロー（アクション）\*\*をトリガーして対話することもでき、「履歴書が条件を満たしたらメールを送信する」などの高度なロジックを実現します。詳細については、ワークフロー自動化のドキュメントを参照してください。
    </Info>
  </Tab>

  <Tab title="API">
    ## はじめに

    <Steps>
      <Step title="認証">
        他のプロジェクトAPIと同じ資格情報を使用します — APIキー/シークレット、またはアプリの認証ヘッダー。
      </Step>

      <Step title="アクセス">
        アカウントにはプロジェクトのナレッジベース機能を使用する権限が必要です。権限がない場合、これらの呼び出しは `403` を返します。
      </Step>

      <Step title="ベースURL">
        環境のAPIホストを使用します（例：`https://ai-api.automationanywhere.com`）。以下のパスは、デプロイメントがグローバルプレフィックスを使用しない限り、そのホストに追加されます。
      </Step>
    </Steps>

    ***

    ### 1. 既存テーブルの一覧表示

    <CodeGroup>
      ```bash リクエスト theme={null}
      GET /project/{project_id}/data-types
      ```
    </CodeGroup>

    プロジェクトのすべてのデータ型のリストを返します。各アイテムには、後続のリクエストで `data_type_id` として使用する `id` が含まれます。

    ***

    ### 2. 新しいスマートテーブルの作成

    <CodeGroup>
      ```bash リクエスト theme={null}
      POST /project/{project_id}/data-types
      ```
    </CodeGroup>

    #### ボディパラメータ

    | フィールド         | 必須  | 説明                                          |
    | ------------- | --- | ------------------------------------------- |
    | `title`       | はい  | UIに表示される名前。                                 |
    | `description` | はい  | 短い説明。                                       |
    | `metadata`    | いいえ | 初期カラムを定義：各キーはカラム名、各値はカラム型を推論するために使用されるサンプル。 |

    <CodeGroup>
      ```json リクエスト例 theme={null}
      {
        "title": "サポートチケット",
        "description": "受信リクエスト",
        "metadata": {
          "subject": "件名のサンプル",
          "priority": 1,
          "open": true,
          "tags": ["請求", "ログイン"]
        }
      }
      ```

      ```json レスポンス例 theme={null}
      {
        "message": "データタイプが正常に作成されました",
        "data_type_id": "abc123...",
        "view_id": "view-uuid-here"
      }
      ```
    </CodeGroup>

    <Tip>
      返された `data_type_id` を保存してください。すべての行操作に必要です。
    </Tip>

    ***

    ### 3. カラムの追加または変更

    <CodeGroup>
      ```bash リクエスト theme={null}
      POST /project/{project_id}/data-type/{data_type_id}/column
      ```
    </CodeGroup>

    <CodeGroup>
      ```json リクエスト例 theme={null}
      {
        "column_name": "status",
        "column_type": "text",
        "description": "ワークフローステータス",
        "options": {},
        "default_value": "open"
      }
      ```
    </CodeGroup>

    正確な `column_type` の値は、環境のOpenAPIまたは統合ドキュメントで確認してください。

    ***

    ### 4. 単一行の追加

    <CodeGroup>
      ```bash リクエスト theme={null}
      POST /project/{project_id}/data-type/{data_type_id}/row
      ```
    </CodeGroup>

    カラムの値は `metadata` オブジェクトの中に配置します。

    <CodeGroup>
      ```json リクエスト例 theme={null}
      {
        "metadata": {
          "subject": "パスワードをリセットできない",
          "priority": 2,
          "open": true,
          "tags": ["認証"]
        }
      }
      ```

      ```json レスポンス例 theme={null}
      {
        "message": "行が正常に追加されました",
        "row_id": 5,
        "row": {
          "id": 5,
          "subject": "パスワードをリセットできない",
          "priority": 2,
          "open": true,
          "tags": ["認証"]
        }
      }
      ```
    </CodeGroup>

    <Note>
      `metadata` のキーは既存のカラム名と一致する必要があります。`id` は含めないでください — サーバーが自動的に割り当てます。
    </Note>

    ***

    ### 5. 複数行の一括追加

    <CodeGroup>
      ```bash リクエスト theme={null}
      POST /project/{project_id}/data-type/{data_type_id}/rows
      ```
    </CodeGroup>

    各行はカラム値のプレーンオブジェクトです — `metadata` 内にネストされ**ません**。

    <CodeGroup>
      ```json リクエスト例 theme={null}
      {
        "rows": [
          { "subject": "問題A", "priority": 1, "open": true },
          { "subject": "問題B", "priority": 3, "open": false }
        ]
      }
      ```

      ```json レスポンス例 theme={null}
      {
        "message": "2行が正常に追加されました",
        "rows_added": 2,
        "row_ids": [6, 7]
      }
      ```
    </CodeGroup>

    ***

    ### 6. ファイルからテーブルを作成

    <CodeGroup>
      ```bash リクエスト theme={null}
      POST /project/{project_id}/import-table
      ```
    </CodeGroup>

    **フォーマット：** `multipart/form-data` でファイルアップロード（CSVまたはExcel）。

    | フィールド             | 説明                                            |
    | ----------------- | --------------------------------------------- |
    | `title`           | UIに表示されるテーブル名。                                |
    | `description`     | 短い説明。                                         |
    | `column_mappings` | ファイルカラムがテーブルカラムと型にどのようにマッピングされるかを記述するJSON文字列。 |
    | `file`            | インポートするCSVまたはExcelファイル。                       |

    ***

    ## クイックリファレンス

    | アクション       | メソッド   | パス                                                      |
    | ----------- | ------ | ------------------------------------------------------- |
    | テーブル一覧      | `GET`  | `/project/{project_id}/data-types`                      |
    | テーブル作成      | `POST` | `/project/{project_id}/data-types`                      |
    | カラム追加       | `POST` | `/project/{project_id}/data-type/{data_type_id}/column` |
    | 単一行追加       | `POST` | `/project/{project_id}/data-type/{data_type_id}/row`    |
    | 複数行追加       | `POST` | `/project/{project_id}/data-type/{data_type_id}/rows`   |
    | ファイルからインポート | `POST` | `/project/{project_id}/import-table`                    |

    ***

    ## トラブルシューティング

    <AccordionGroup>
      <Accordion title="403 — Forbidden">
        ユーザーまたはAPIキーがプロジェクトまたはそのナレッジベースセクションにアクセス権を持っていません。アカウントに正しい権限が有効になっていることを確認してください。
      </Accordion>

      <Accordion title="行挿入時の500エラー">
        通常、カラム名の不一致またはカラム定義と型が一致しない値が原因です。すべてのキーが既存のカラム名に対応しており、値の型が一致していることを確認してください（例：`number` カラムに文字列を送信しないでください）。
      </Accordion>

      <Accordion title="単一行と一括行のボディフォーマット">
        2つのエンドポイント間でリクエストボディの構造が異なります：

        * **単一行：** `{ "metadata": { ... } }`
        * **一括行：** `{ "rows": [ { ... }, { ... } ] }` — 各行に `metadata` ラッパーはありません。
      </Accordion>
    </AccordionGroup>
  </Tab>
</Tabs>
