

レコード一括操作(作成/変更/削除)
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の記述についてはこちらをご覧ください。