ver.2サポートサイト

HOMEAPIサンプルプログラムサンプルプログラム(API1.1)レコード一括操作(作成/変更/削除)

レコード一括操作(作成/変更/削除)

cURLライブラリを使用して、レコードの一括登録・一括更新・一括削除をするサンプルプログラムです。
PHPにcurlライブラリが組み込まれている必要があります。

 

<?php

 

//SPIRAL Ver2のAPI用のURL
$base_url = "https://api.spiral-platform.com/v1/";
$url = $base_url."apps/{app}/dbs/{db}/records/bulk";

 

//APIキー
$apikey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";

 

//ヘッダ
$header = array(
"Authorization:Bearer ".$apikey,
"Content-Type:application/json",

"X-Spiral-App-Authority"."manage",

);

 

 

//------------------------------
//insert
//------------------------------

 

/* 登録するレコードを設定(最大1000件まで可能)
※1件登録と形式が違うので注意 */
//ボディ
$body = [
"records" => [
array(
"employeeId" => "100",
"name" => "山田 太郎",
"email" => "yamada.taro@example.com",
"phone" => "+81 080-1111-2222",
"gender" => "0",
"zipCode" => "111-2222",
"pref" => "13",
"address" => "東京都港区赤坂",
"entryDays" => "2017-4-1"
),
array(
"employeeId" => "101",
"name" => "山田 次郎",
"email" => "yamada.ziro@example.com",
"phone" => "+81 080-2222-3333",
"gender" => "1",
"zipCode" => "222-3333",
"pref" => "23",
"address" => "愛知県名古屋市中区栄",
"entryDays" => "2016-4-1"
)
]
];

 

//配列をjson形式に変換
$json_body = json_encode($body);

 

// curlライブラリを使用して送信
//セッションを初期化する
$curl = curl_init();

 

//実行結果を文字列で取得できるように設定
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
//urlを指定
curl_setopt($curl, CURLOPT_URL , $url);
//ヘッダを指定
curl_setopt($curl, CURLOPT_HTTPHEADER , $header);
//ボディを指定
curl_setopt($curl, CURLOPT_POSTFIELDS , $json_body);
//メソッドを指定
curl_setopt($curl, CURLOPT_CUSTOMREQUEST , 'POST');

 

//セッションを実行し、その結果を取得
$response = curl_exec($curl);

 

//cURLのエラーメッセージを表示
if (curl_errno($curl)) echo curl_error($curl);

 

//セッションを閉じる
curl_close($curl);

 

//json形式を配列に変換して表示
print_r(json_decode($response , true));

 

 

//------------------------------
//update
//------------------------------

 

/* 変更したいレコードを設定(最大1000件まで可能)
※1件変更と形式が違うので注意 */
//ボディ
$body = [
"records" => [
array(
"_id" => "1",
"employeeId" => "200",
"name" => "山田 三郎",
"email" => "yamada.saburo@example.com",
"phone" => "+81 080-3333-4444",
"zipCode" => "111-2222",
"entryDays" => "2000-4-1"
),
array(
"_id" => "2",
"gender" => "0",
"zipCode" => "333-4444",
"pref" => "27",
"address" => "大阪府大阪市中央区平野町"
)
]
];

 

//配列をjson形式に変換
$json_body = json_encode($body);

 

// curlライブラリを使用して送信
//セッションを初期化する
$curl = curl_init();

 

//実行結果を文字列で取得できるように設定
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
//urlを指定
curl_setopt($curl, CURLOPT_URL , $url);
//ヘッダを指定
curl_setopt($curl, CURLOPT_HTTPHEADER , $header);
//ボディを指定
curl_setopt($curl, CURLOPT_POSTFIELDS , $json_body);
//メソッドを指定
curl_setopt($curl, CURLOPT_CUSTOMREQUEST , 'PATCH');

 

//セッションを実行し、その結果を取得
$response = curl_exec($curl);

 

//cURLのエラーメッセージを表示
if (curl_errno($curl)) echo curl_error($curl);

 

//セッションを閉じる
curl_close($curl);

 

//json形式を配列に変換して表示
print_r(json_decode($response , true));

 

 

//------------------------------
//delete
//------------------------------

 

/* 削除したいレコードを設定(最大1000件まで可能)
※1件削除と違いボディに入力するので注意 */

//ボディ
$body = [

//idsで指定する場合 ※keyを使用する場合は削除
"ids" => ["1", "2"]

//key指定する場合 ※idsを使用する場合は削除
"key" => "memberId",
"values" => ["CU0001", "CU0002"]

];

 

//配列をjson形式に変換
$json_body = json_encode($body);

 

// curlライブラリを使用して送信
//セッションを初期化する
$curl = curl_init();

 

//実行結果を文字列で取得できるように設定
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
//urlを指定
curl_setopt($curl, CURLOPT_URL , $url);
//ヘッダを指定
curl_setopt($curl, CURLOPT_HTTPHEADER , $header);
//ボディを指定
curl_setopt($curl, CURLOPT_POSTFIELDS , $json_body);
//メソッドを指定
curl_setopt($curl, CURLOPT_CUSTOMREQUEST , 'DELETE');

 

//セッションを実行し、その結果を取得
$response = curl_exec($curl);

 

//cURLのエラーメッセージを表示
if (curl_errno($curl)) echo curl_error($curl);

 

//セッションを閉じる
curl_close($curl);

 

//json形式を配列に変換して表示
print_r(json_decode($response , true));

 

?>

 

※API1.0の記述についてはこちらをご覧ください。