WebAPI を利用する¶
以下の WebAPI を利用できます。
- テーブルの検索条件を指定し、検索結果一覧を取得する
- テーブルのデータを1件取得する
- テーブルのデータを1件登録する
- テーブルのデータを1件更新する
- テーブルのデータを1件削除する
- テーブルのデータを一括登録する
- テーブルのデータを一括更新する
- テーブルのデータを一括登録・更新する
- テーブルのデータを一括削除する
- テーブルの最終更新日時を取得する(ヘッダ情報のみ)
- テーブルのデータを一括取得する
この中で、CELF管理テーブル「sys_user」、「sys_group」、「sys_operation_log」が利用できるのは、 「テーブルの最終更新日時を取得する(ヘッダ情報のみ)」と「テーブルのデータを一括取得する」です。 これらの WebAPI は、データの更新頻度が少ないマスタテーブルに対する利用を想定しています。
各WebAPIに共通するURL/リクエスト/レスポンス¶
各WebAPIに共通して指定するURL、リクエストヘッダ及びリクエストパラメータと、レスポンスされる可能性のあるレスポンスヘッダを示します。
URL
URL 説明 例 CELFサーバーURL APIサーバーのURL https://api.cloud.celf.jp (クラウド版の場合) テーブルAPI名 対象となるテーブルのAPI名 partners ID 対象となるテーブルの1件を特定するID 25 リクエストヘッダ
ヘッダ名 必須 説明 例 X-CELF-API-KEY 必須 APIキー X-CELF-API-KEY: 3fce5122-e14f-4f9a-a687-5e5cd1c4b57f リクエストパラメータ
パラメータ名 必須 説明 例 company 必須(クラウド版の場合) 企業ID company=SCSK1 レスポンスヘッダ
- 企業IDとAPIキーの組み合わせが正しくない場合は、認証エラー401をレスポンスします。
- 公開されてないテーブルが指定された場合は、権限エラー403をレスポンスします。
テーブルの検索条件を指定し、検索結果一覧を取得する¶
エンドポイント
{CELFサーバーURL}/v1/tables/{テーブルAPI名}/query
メソッド
POST
リクエストパラメータ
パラメータ名 必須 説明 例 limit 省略可 取得件数(指定のない場合は100) limit=50 offset 省略可 開始からスキップする件数(指定のない場合は0) offset=100 sort 省略可 ソート対象カラム名 sort=tr_name,-touroku_date (カラム名はカンマで区切って複数指定することができます。「+」または記号なしで昇順、「-」で降順となります。) リクエストボディ(JSON)
検索条件を指定できます。文字列型データは部分一致、それ以外の型は完全一致または範囲を指定することができます。(例)名前に"Corporation"を含み、登録日が2022年4月1日から2023年3月31日までの場合{ "tr_name": "Corporation", "touroku_date": { "from": "2022/04/01", "to": "2023/03/31" } }レスポンスボディ(JSON)
検索条件に合致するデータを取得範囲指定に従ってソート順でレスポンスします。"total"は取得件数ではなく、検索条件に合致する全データ件数です。(例)テーブルAPI名が"partners"の場合{ "partners": [ { "tr_code": "1111", "tr_name": "Umiyama Corporation", ・・・ }, { "tr_code": "2222", "tr_name": "Yamakawa Corporation", ・・・ }, ・・・ ], "total": 68 }
テーブルのデータを1件取得する¶
エンドポイント
{CELFサーバーURL}/v1/tables/{テーブルAPI名}/{ID}
メソッド
GET
レスポンスボディ(JSON)
指定した ID を持つデータをレスポンスします。(例){ "tr_code": "1111", "tr_name": "Umiyama Corporation", ・・・ }
テーブルのデータを1件登録する¶
エンドポイント
{CELFサーバーURL}/v1/tables/{テーブルAPI名}
メソッド
POST
リクエストボディ(JSON)
CELFのテーブルで自動設定される ID、LAST_UPDATER、LAST_MODIFIED 以外のデータをリクエストします。(例){ "tr_code": "1111", "tr_name": "Umiyama Corporation", ・・・ }レスポンスボディ(JSON)
登録したデータの ID をレスポンスします。(例){ "id": 4 }
テーブルのデータを1件更新する¶
エンドポイント
{CELFサーバーURL}/v1/tables/{テーブルAPI名}/{ID}
メソッド
PATCH
リクエストボディ(JSON)
CELFのテーブルで自動設定される ID、LAST_UPDATER、LAST_MODIFIED 以外のデータをリクエストします。指定しなかったカラムは変更しません。(例){ "tr_code": "1111", "tr_name": "Umiyama Corporation", ・・・ }レスポンスボディ(JSON)
なし
テーブルのデータを1件削除する¶
エンドポイント
{CELFサーバーURL}/v1/tables/{テーブルAPI名}/{ID}
メソッド
DELETE
レスポンスボディ(JSON)
なし
テーブルのデータを一括登録する¶
エンドポイント
{CELFサーバーURL}/v1/tables/{テーブルAPI名}/bulkinsert
メソッド
POST
リクエストボディ(JSON)
CELFのテーブルで自動設定されるID、LAST_UPDATER、LAST_MODIFIED以外のデータの配列をリクエストします。(例)テーブルAPI名が"partners"の場合{ "partners": [ { "tr_code": "1111", "tr_name": "Umiyama Corporation", ・・・ }, { "tr_code": "2222", "tr_name": "Yamakawa Corporation", ・・・ }, ・・・ ] }レスポンスボディ(JSON)
登録したデータの ID の配列をレスポンスします。(例){ "ids": [ 4, 5, ・・・ ] }
テーブルのデータを一括更新する¶
エンドポイント
{CELFサーバーURL}/v1/tables/{テーブルAPI名}/bulkupdate
メソッド
POST
リクエストボディ(JSON)
更新したいデータを特定する ID を含むデータの配列をリクエストします。(例)テーブルAPI名が"partners"の場合{ "partners": [ { "id": 4, "tr_code": "1111", "tr_name": "Umiyama Corporation", ・・・ }, { "id": 7, "tr_code": "2222", "tr_name": "Yamakawa Corporation", ・・・ }, ・・・ ] }レスポンスボディ(JSON)
なし
テーブルのデータを一括登録・更新する¶
エンドポイント
{CELFサーバーURL}/v1/tables/{テーブルAPI名}/bulkupsert
メソッド
POST
リクエストボディ(JSON)
登録したいデータとしてCELFのテーブルで自動設定されるID、LAST_UPDATER、LAST_MODIFIED以外のデータの配列を、更新したいデータを特定する ID を含むデータの配列をリクエストします。指定された更新したいデータをすべて更新した後に、データを登録します。(例)テーブルAPI名が"partners"の場合{ "partners": [ { "id": 4, "tr_code": "1111", "tr_name": "Umiyama Corporation", ・・・ }, { "tr_code": "2222", "tr_name": "Yamakawa Corporation", ・・・ }, ・・・ ] }レスポンスボディ(JSON)
登録したデータの ID の配列をレスポンスします。更新したデータの ID はレスポンスされません。(例){ "ids": [ 8, ・・・ ] }
テーブルのデータを一括削除する¶
エンドポイント
{CELFサーバーURL}/v1/tables/{テーブルAPI名}/bulkdelete
メソッド
POST
リクエストボディ(JSON)
削除したい ID の配列をリクエストします。(例){ "ids": [ 1, 3, 8 ] }レスポンスボディ(JSON)
なし
テーブルの最終更新日時を取得する(ヘッダ情報のみ)¶
エンドポイント
{CELFサーバーURL}/v1/tables/{テーブルAPI名}
メソッド
HEAD
レスポンスボディ(JSON)
なしレスポンスヘッダ
- テーブルデータの LAST_MODIFIED の最新日時を、Last-Modified でレスポンスします。
テーブルのデータを一括取得する¶
エンドポイント
{CELFサーバーURL}/v1/tables/{テーブルAPI名}
メソッド
GET
リクエストパラメータ
パラメータ名 必須 説明 例 limit 省略可 取得件数(指定のない場合は100) limit=50 offset 省略可 開始からスキップする件数(指定のない場合は0) offset=100 sort 省略可 ソート対象カラム名 sort=tr_name,-touroku_date (カラム名はカンマで区切って複数指定することができます。「+」または記号なしで昇順、「-」で降順となります。) レスポンスボディ(JSON)
取得範囲指定に従ってソート順でレスポンスします。"total"は取得件数ではなく、全データ件数です。(例)テーブルAPI名が"partners"の場合{ "partners": [ { "tr_code": "1111", "tr_name": "Umiyama Corporation", ・・・ }, { "tr_code": "2222", "tr_name": "Yamakawa Corporation", ・・・ }, ・・・ ], "total": 68 }レスポンスヘッダ
- テーブルデータの LAST_MODIFIED の最新日時を、Last-Modified でレスポンスします。