メインコンテンツまでスキップ

データベースの項目一覧を取得する

特定のデータベースに存在する項目の一覧と、その詳細情報を取得します。

get_member_table_elements

API仕様

項目内容
エンドポイント/api/v1/get_member_table_elements
HTTPメソッドPOST
必要権限全てのアクセス権 または 操作のみ

リクエスト

{
"member_table_id": 2
}
キー必須説明
member_table_idInteger情報を取得したいデータベースのID。

レスポンス

成功すると、データベース項目情報の配列が返されます。

[
{
"id": 4,
"name": "メールアドレス",
"type": "email",
"required": false,
"unique": false,
"system": false
},
{
"id": 5,
"name": "パスワード",
"type": "password",
"required": true,
"unique": false,
"system": false
},
{
"id": 1,
"name": "登録日時",
"type": "timestamp",
"required": false,
"unique": false,
"system": true
}
]

レスポンスのキー詳細

キーデータ型説明
idIntegerデータベース項目ID。各項目にユニークな数値が割り振られています。
nameString項目名称。KREISELの管理画面から設定できます。
typeString項目のタイプ。詳細は後述の「項目のタイプ一覧」を参照してください。
requiredBoolean必須項目かどうかを表します。
uniqueBoolean重複キーとして設定されているかどうかを表します。
systemBooleanシステム項目(登録日時、更新日時など自動で定義される項目)かどうかを表します。

サンプルコード

<?php

$environmentId = getenv("ENV_ID");
$apiUrl = "https://krs.bz/$environmentId/api/v1/get_member_table_elements";
$apiToken = getenv("API_TOKEN");
$databaseId = 2; // 情報を取得したいデータベース ID

$headers = [
'Authorization: Bearer ' . $apiToken,
'Content-Type: application/json',
];

$data = json_encode(['member_table_id' => $databaseId]);

$ch = curl_init($apiUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);

if ($httpCode === 200) {
$result = json_decode($response, true);
foreach ($result as $element) {
echo "項目 ID: {$element['id']}\t項目名: {$element['name']}\tタイプ: {$element['type']}", PHP_EOL;
}
} else {
echo "API リクエストに失敗しました。 HTTP ステータスコード: ", $httpCode, PHP_EOL;
$error = json_decode($response, true);
echo "エラーコード: {$error['error_code']}, 詳細: {$error['error_desc']}", PHP_EOL;
}

項目のタイプ一覧

get_member_table_elementsで返されるtypeキーの値と、対応する項目タイプは以下の通りです。

type キーの値項目タイプ
textテキスト
textareaテキストエリア
integer整数
emailメールアドレス
urlURL
select単一選択
select_multiple複数選択
date日付
prefecture都道府県
zip郵便番号
telephone電話番号
sex性別
marriage未既婚
yesnoはい/いいえ
checkbox選択
passwordパスワード(平文)
encrypted_textテキスト(暗号化)
hashed_passwordパスワード(ハッシュ)
autogen自動採番
timestampタイムスタンプ(システム日時)
authパスワード(認証用)
備考

timestamp は「登録日時」「更新日時」「一括処理日時」「アップロード日時」などのシステム項目に該当します。