ver.2サポートサイト

HOMEAPIサンプルプログラム一斉メール配信(一覧取得/作成/取得/更新/削除/テスト配信)

一斉メール配信(一覧取得/作成/取得/更新/削除/テスト配信)

cURLライブラリを使用して、EXPRESSメール設定の一覧を取得、作成、取得、削除、テスト配信を行うサンプルプログラムです。
PHPにcurlライブラリが組み込まれている必要があります。

EXPRESSメール設定一覧を取得

<?php

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

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

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

//DBID
$dbId = "XXX";

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

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

// 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));
?>

EXPRESSメール設定を作成

<?php

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

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

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

//DBID
$dbId = "XXX";

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

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

//ボディ
$body = [
"to" => [
  "field" => "XXX",
  ],
"from"=> [
  "displayName" => "メルマガ事務局",
  "emailLocalPart" => "info",
  "emailFromDomainId"=> "XXX",
  ],
"subject" => [
  "content" => "テストメール件名",
  ],
"plainBody" => [
  "content" => "テストメールです。\nメールの本文です。",
  ],
"contentsTimeZone" => "Asia/Tokyo",
"timing" => "scheduled",
"scheduleDate" => "2024-12-25T12:00:00+09:00",
"status" => "setting"
];

//配列を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));
?>

EXPRESSメール設定を取得

<?php

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

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

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

//DBID
$dbId = "XXX";

//EXPRESSメールID
$expressMailId = "XXX";

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

$url = sprintf($url, $appId, $dbId ,$expressMailId);

// 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));
?>

EXPRESSメール設定を更新

<?php

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

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

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

//DBID
$dbId = "XXX";

//EXPRESSメールID
$expressMailId = "XXX";

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

$url = sprintf($url, $appId, $dbId, $expressMailId);

//ボディ
$body = [
"to" => [
  "field" => "XXX",
  ],
"from"=> [
  "displayName" => "メルマガ事務局",
  "emailLocalPart" => "info",
  "emailFromDomainId"=> "XXX",
  ],
"subject" => [
  "content" => "テストメール件名",
  ],
"plainBody" => [
  "content" => "テストメールです。\nメールの本文です。",
  ],
"contentsTimeZone" => "Asia/Tokyo",
"timing" => "scheduled",
"scheduleDate" => "2024-12-25T12:00:00+09:00",
"status" => "setting"
];

//配列を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));
?>

EXPRESSメール設定を削除

<?php

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

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

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

//DBID
$dbId = "XXX";

//EXPRESSメールID
//ステータスが"setting"のもの以外を指定するとエラー
$expressMailId = "XXX";

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

$url = sprintf($url, $appId, $dbId ,$expressMailId);

// 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_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));
?>

テスト配信を実行

<?php

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

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

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

//DBID
$dbId = "XXX";

//EXPRESSメールID
$expressMailId = "XXX";

//宛先レコードID
$recordId = "XXX";

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

$url = sprintf($url, $appId, $dbId ,$expressMailId);

//ボディ
$body = [
"to" => [
"records" => [$recordId],
],
];

//配列を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));
?>