Loading...

お知らせ:

当社は、お客様により充実したサポート情報を迅速に提供するため、本ページのコンテンツは機械翻訳を用いて日本語に翻訳しています。正確かつ最新のサポート情報をご覧いただくには、本内容の英語版を参照してください。

レコードの一括読み取り

一括読み取り操作は、Data Store内の特定のテーブルから数千のレコードを読み取り、ジョブが成功した場合、読み取り操作の結果を含むCSVファイルを生成します。このデータ集約型の操作は、単一のAPI実行で実行できます。

Catalystは一括読み取り操作用に3つのAPIをサポートしています:一括読み取り作成API、ジョブ実行のステータスを手動で確認するための一括読み取りステータス確認API、および結果をダウンロードするための一括読み取り結果ダウンロードAPIです。コールバックURLを設定して、ジョブステータスのレスポンスを自動的に送信することもできます。

注意: Catalyst CLIを使用して一括読み取り操作を実行することもできます。Data Storeインポート・エクスポートCLIドキュメントを参照してください。

一括読み取りジョブの作成

説明

このAPIは、入力JSONで指定した条件に一致するData Store内のテーブルからレコードを取得する一括読み取り操作をトリガーします。テーブルは一意のテーブルIDまたはテーブル名で参照されます。

リクエスト詳細

リクエストURL

POST

{api-domain}/baas/v1/project/{projectId}/bulk/read

copy

api-domain
URL
Catalyst APIにアクセスするためのDC固有のドメイン

project_id
Numerical
プロジェクトの一意のID

リクエストヘッダー

Authorization: Zoho-oauthtoken {oauth_token}

任意のヘッダー

CATALYST-ORG: {org_id}

Environment: Development

スコープ

ZohoCatalyst.tables.bulk.READ

リクエストJSONプロパティ

一括読み取りAPIリクエストの入力はJSON形式で送信する必要があります。リクエストパラメーターを以下に説明します。

table_identifier string
mandatory
テーブルの一意のIDまたはテーブル名。テーブルIDはData Storeから、またはコンソールでテーブルを開いた際のURLから取得できます。
query json
optional

一括読み取りジョブの条件と基準を定義するセクション

page numerical
optional

一括読み取り処理の結果として生成されるCSVファイルは、1ページに200,000件のレコードを含みます。

ページ値「1」は、クエリに一致する最初の200,000件のレコードがエクスポートされることを示します。ページ値を増やすことで後続のレコードを取得できます。

例えば、200,001件目から400,000件目までのレコードを取得する場合、ページ値を「2」に指定する必要があります。

デフォルト値: 1


select_columns array
optional

テーブルから取得するレコード内の特定のカラム。カラムを指定しない場合、すべてのカラムが選択され取得されます。


配列に複数のカラムを含めることができます。サンプルリクエストのコードウィンドウを参照してください。


criteria json
optional

レコードが取得される基準となる条件のセット

group_operator string
mandatory (if specifying criteria)

条件グループを結合する演算子。


サポートされる演算子: AND、OR


2つ以上の条件グループを定義する場合、リクエストでANDまたはOR演算子を使用できます。例えば、前のセクションで指定した形式で「column1がvalue 1に等しい AND column2がvalue 2を含む」のような条件を指定できます。


注意: 1つのAPIリクエストで両方の演算子を組み合わせて使用することはできません。1つのリクエストではANDまたはORのいずれかを使用できます。

group json
mandatory (if specifying criteria)

このセクションには最大25個の条件セットを含めることができます。例では3つの条件セットを示しています。


注意: 1つのAPIリクエストには、1つのグループ演算子を持つ1つの全体グループのみを含めることができます。
column_name string
mandatory (if specifying criteria)
条件を定義するテーブル内の特定のカラム名

comparator string
mandatory (if specifying criteria)

カラム名と条件値を照合する比較演算子


サポートされる比較演算子: equal、not_equal、greater_than、greater_equal、less_than、less_equal、starts_with、ends_with、contains、not_contains、in、not_in、between、not_between


注意:

  • inおよびnot_in比較演算子には、カンマで区切って複数の値を指定できます。

  • Catalystは暗号化されたカラムに対してはequal比較演算子のみをサポートしています。暗号化されたカラムの条件として他の比較演算子を使用することはできません。


value string
mandatory (if specifying criteria)
条件として定義するレコード内の特定のカラムの値

callback json
optional

ジョブステータスの自動JSONレスポンスが送信されるコールバックURLのプロパティを定義するセクション

url string
mandatory (if specifying callback)

ジョブステータスが変更されるたびに、HTTP POSTメソッドを使用して自動レスポンスが送信されるURL。ジョブ詳細に関する情報はJSONレスポンスの本文に含まれます。


コールバックURLを設定しない場合、必要な時に一括読み取りステータス確認APIを使用してジョブ処理のステータスを手動で確認する必要があります。


headers string
optional

コールバックURLへのJSONレスポンスで渡す必要があるヘッダー。


ヘッダーは以下の形式で指定する必要があります:
{
"{header_name_1}" : “{header_value_1}”,
"{header_name_2}" : “{header_value_2}”
}


以降同様。サンプルリクエストコードを参照してください。


params string
optional

コールバックURLに付加するパラメーター


パラメーターは以下の形式で指定する必要があります:
{
"{param_name_1}" : “{param_value_1}”,
"{param_name_2}" : “{param_value_2}”
}


以降同様。サンプルリクエストコードを参照してください。


レスポンス詳細

ジョブ処理には3つの状態があり、それぞれ異なるレスポンスが生成されます:

  • 処理中: APIを実行すると、Catalystはジョブの実行が処理中であることを示すレスポンスを即座に自動的に送信します。リクエストでコールバックURLを設定した場合、レスポンスは定義した形式でそのURLにも送信されます。

    レスポンスにはjob_id parameterが含まれ、コールバックURLを設定していない場合に、後続のレスポンスのジョブ実行ステータスの確認に使用できます。

  • 成功: 成功状態のレスポンスには、一括読み取りジョブのクエリに一致するレコードを含むCSVファイルをダウンロードできるダウンロードURLが含まれます。コールバックURLを設定していない場合、このレスポンスはCatalystから自動的に送信されません。

  • 失敗: 失敗状態のレスポンスには、発生したエラーの説明と詳細が含まれます。コールバックURLを設定していない場合、このレスポンスはCatalystから自動的に送信されません。

リクエスト例
copy

curl -X POST
https://api.catalyst.zoho.com/baas/v1/project/4000000006007/bulk/read
-H “Authorization: Zoho-oauthtoken 1000.91016.2f*57”
-d ‘{ “table_identifier”: “EmpDetails”, “query” : { “page” : “1”, “select_columns” : [ “EmpID”, “EmpName”, “Department” ], “criteria”: { “group_operator”: “or”, “group”: [ { “column_name”: “Department”, “comparator”: “equal”, “value”: “Marketing” } , { “column_name”: “EmpID”, “comparator”: “greater_than”, “value”: “1000” } , { “column_name”: “EmpName”, “comparator”: “starts_with”, “value”: “S” } ] } }, “callback” : { “url” : “https://hr.zylker.com/ja/EmpRecords/_callback.php", “headers” : { “src” : “ZCatalyst”, “operation” : “bulkreadAPI” }, “params” : { “project_name” : “EmployeeDatabase” } } }’

レスポンス例:ジョブ処理中
copy
{
"status": "success",
"data": {
    "job_id": 2000000118004,
    "status": "In-Progress",
    "operation": "read",
    "project_details": {
         "project_name": "ShipmentTracking",
         "id": 4000000006007
     },
    "query": [
        {
            "table_id": 3376000000165541,
            "details": {
                "page": "1"
            }
        }
    ],
    "callback": {
        "url": "https://hr.zylker.com/ja/EmpRecords/_callback.php",
        "headers": {
                  "src" : "ZCatalyst",
                  "operation" : "bulkreadAPI"
                          },
        "params": {
                  "project_name" : "EmployeeDatabase"
                         }
    },
    "created_by": {
        "zuid": 1019540152,
        "is_confirmed": true,
        "email_id": "emma@zylker.com",
        "first_name": "Amelia",
        "last_name": "Burrows",
        "user_id": 671930409
    },
    "created_time": "Oct 06, 2020 07:06 PM"
}

}

View more
レスポンス例:ジョブ成功
copy
{
"status": "success",
"data": {
    "job_id": 2000000118004,
    "status": "In-Progress",
    "operation": "read",
    "project_details": {
         "project_name": "ShipmentTracking",
         "id": 4000000006007
     },
    "query": [
        {
            "table_id": 3376000000165541,
            "details": {
                "page": "1"
            }
        }
    ],
    "callback": {
        "url": "https://hr.zylker.com/ja/EmpRecords/_callback.php",
        "headers": {
                  "src" : "ZCatalyst",
                  "operation" : "bulkreadAPI"
                          },
        "params": {
                  "project_name" : "EmployeeDatabase"
                         }
    },
    "created_by": {
        "zuid": 1019540152,
        "is_confirmed": true,
        "email_id": "emma@zylker.com",
        "first_name": "Amelia",
        "last_name": "Burrows",
        "user_id": 671930409
    },
    "created_time": "Oct 06, 2020 07:06 PM"
}

}

View more
レスポンス例:ジョブ失敗
copy
{
"status": "success",
"data": {
    "job_id": 2000000117007,
    "status": "Failed",
    "operation": "read",
    "project_details": {
         "project_name": "ShipmentTracking",
         "id": 4000000006007
     },
    "query": [
        {
            "table_id": 3376000000165541,
            "details": {
                "page": "1"
            }
        }
    ],
    "callback": {
        "url": "https://hr.zylker.com/ja/EmpRecords/_callback.php",
         "headers": {
                  "src" : "ZCatalyst",
                  "operation" : "bulkreadAPI"
                          },
        "params": {
                   "project_name" : "EmployeeDatabase"
                         }
    },
    "created_by": {
        "zuid": 1019540152,
        "is_confirmed": true,
        "email_id": "emma@zylker.com",
        "first_name": "Amelia",
        "last_name": "Burrows",
        "user_id": 671930409
    },
    "created_time": "Oct 06, 2020 07:00 PM",
    "results": {
        "description": "The column ID in select_columns is invalid",
    }
}

}

View more