ver.2サポートサイト

HOMEAPIサンプルプログラムレコード操作(参照先フィールドを含めたレコード取得)

レコード操作(参照先フィールドを含めたレコード取得)

cURLライブラリを使用して、参照先DBのフィールドや参照先DBの参照先のレコードを取得するサンプルプログラムです。
PHPにcurlライブラリが組み込まれている必要があります。

制限や参照先フィールドの指定方法などの詳細は参照先フィールドを含めたレコード取得APIのページもご参照ください。

参照先フィールドを含めたレコード一覧を取得

<?php

//SPIRAL Ver2のAPI用のURL
$base_url = "https://api.spiral-platform.com/v1/";
$url = $base_url."apps/%d/dbs/%d/records/join";

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

//アプリID
$appId = "XXX";

//DBID
$dbId =  "XXX";

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

//検索結果の対象件数を取得
$query = "?enableTotalCount=true";

//出力するフィールド識別名を指定
$query = "&fields=textField,";

//参照先DBのフィールドを指定する場合は [参照フィールド識別名].[参照先DBのフィールド識別名] のフォーマットで指定
$query .= "single_referenceField._id,single_referenceField.textField,multi_referenceField._id,multi_referenceField.textField,";

//参照先DBの参照先のフィールドを指定する場合は [参照フィールド識別名].[参照先DBの参照フィールド識別名].[参照先DBの参照先のフィールド識別名] のフォーマットで指定
$query .= "single_referenceField.single_referenceField._id,single_referenceField.single_referenceField.textField,";

$url = sprintf($url, $appId, $dbId) . $query;

//curlライブラリを使用して送信
//セッションを初期化する
$curl = curl_init();
//実行結果を文字列で取得できるように設定
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
//urlを指定
curl_setopt($curl, CURLOPT_URL , $url);
//ヘッダを指定
curl_setopt($curl, CURLOPT_HTTPHEADER , $header);

//セッションを実行し、その結果を取得
$response = curl_exec($curl);
//cURLのエラーメッセージを表示
if (curl_errno($curl)) echo curl_error($curl);
//セッションを閉じる
curl_close($curl);

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

?>

参照先フィールドを含めたレコードを取得

<?php

//SPIRAL Ver2のAPI用のURL
$base_url = "https://api.spiral-platform.com/v1/";
$url = $base_url."apps/%d/dbs/%d/records/%d/join";

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

//アプリID
$appId = "XXX";

//DBID
$dbId = "XXX";

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

//取得したいrecordIdを指定
$recordId = "100";

//出力するフィールド識別名を指定
$query = "?fields=newField,";

//参照先DBのフィールドを指定する場合は [参照フィールド識別名].[参照先DBのフィールド識別名] のフォーマットで指定
$query .= "single_referenceField._id,single_referenceField.textField,multi_referenceField._id,multi_referenceField.textField,";

//参照先DBの参照先のフィールドを指定する場合は [参照フィールド識別名].[参照先DBの参照フィールド識別名].[参照先DBの参照先のフィールド識別名] のフォーマットで指定
$query .= "single_referenceField.single_referenceField._id,single_referenceField.single_referenceField.textField,";

$url = sprintf($url, $appId, $dbId, $recordId) . $query;

//curlライブラリを使用して送信
//セッションを初期化する
$curl = curl_init();
//実行結果を文字列で取得できるように設定
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
//urlを指定
curl_setopt($curl, CURLOPT_URL , $url);
//ヘッダを指定
curl_setopt($curl, CURLOPT_HTTPHEADER , $header);

//セッションを実行し、その結果を取得
$response = curl_exec($curl);
//cURLのエラーメッセージを表示
if (curl_errno($curl)) echo curl_error($curl);
//セッションを閉じる
curl_close($curl);

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

?>