汎用APIクライアントの利用
最終更新日:2023年05月19日
スパイラルAPIを利用した汎用的なサンプルプログラムです。
カスタムプログラムの起動やメール配信、マイエリアへのログイン、一覧表データの取得等を記載しております。
本サンプルプログラムは内部呼出し(スパイラル内部で動作させる場合)を想定しております。
サンプルプログラム
<!DOCTYPE html>
<body>
<h1>カスタムマイページでカスタムプログラム</h1>
<?php // <!-- SMP_DYNAMIC_PAGE DISPLAY_ERRORS=OFF --> ?>
<?php
// スパイラルAPIサーバと通信するインスタンスを作成します。
//アカウント内APIを利用する場合はアカウント内APIの設定を「ON」に変更いただき、
//「$SPIRAL->setApiTokenTitle("");」の記述を削除ください。
$SPIRAL->setApiTokenTitle(""); //タイトルなし
$api_communicator = $SPIRAL->getSpiralApiCommunicator();
// ----------------------------------------------------
// カスタムプログラムを起動します。
// ----------------------------------------------------
echo "カスタムプログラムを実行します。<br>\n";
$request = new SpiralApiRequest();
$request->put("title", "program01");
// スパイラルAPIサーバへリクエストを送信します。
$response = $api_communicator->request("custom_program", "run", $request);
echo "CODE: " . $response->get("code") . "<br>\n";
echo "OUTPUT: " . $response->get("output") . "<br>\n";
// ----------------------------------------------------
// Express2配信予約
// ----------------------------------------------------
echo "Express2配信予約します。<br>\n";
$request = new SpiralApiRequest();
$request->put("db_title", "phptest"); //DBタイトル
$request->put("reserve_date", "yyyy/mm/dd hh:mm"); //配信時間
$request->put("mail_field_title", "[メールアドレスフィールドタイトル]");
$request->put("error_field_title", "[配信エラーフィールドタイトル]");
$request->put("subject", "メールのサブジェクト");
$request->put("from_name", "差出人名");
$request->put("from_address", "example@pi-pe.co.jp");
$request->put("body_text", "メールの本文");
// スパイラルAPIサーバへリクエストを送信します。
$response = $api_communicator->request("deliver_express2", "regist", $request);
print_r($response);
// ----------------------------------------------------
// Thanksメール送信
// ----------------------------------------------------
echo "Thanksメールを配信します。<br>\n";
$request = new SpiralApiRequest();
$request->put("rule_id", "xxxxx"); //配信ルールID
$request->put("id", "1");
// スパイラルAPIサーバへリクエストを送信します。
$response = $api_communicator->request("deliver_thanks", "send", $request);
print_r($response);
// ----------------------------------------------------
// マイエリアにログインする
// ----------------------------------------------------
echo "マイエリアにログインします。<br>\n";
$request = new SpiralApiRequest();
$request->put("my_area_title", "phptest");
$request->put("key", "2z297JxS");
$request->put("password", "pppp");
$request->put("url_type", "2");
// スパイラルAPIサーバへリクエストを送信します。
$response = $api_communicator->request("area", "login", $request);
$sessionId = $response->getSessionId();
echo "CODE: " . $response->get("code") . "<br>\n";
echo "SESSIONID: " . $response->get("jsessionid") . "<br>\n";
// ----------------------------------------------------
// 一覧表のデータを取得します。
// ----------------------------------------------------
echo "一覧表のデータを取得します。<br>\n";
$columns = array("xxxxxxx", "xxxxx"); // 表示するフィールドのタイトル
// リクエスト
$request = new SpiralApiRequest();
$request->put("my_area_title", "phptest");
$request->put("search_title", "search2");
$request->put("jsessionid", $sessionId);
$request->put("select_columns", $columns);
// スパイラルAPIサーバへリクエストを送信します。
$response = $api_communicator->request("table", "data", $request);
echo "CODE: " . $response->get("code") . "<br>\n";
print_r($response->get("data"));
?>
</body>
</html>