Datasource API
データソースに関する情報の取得、接続先データベースに対して SQL の実行が行えます。
共通パラメータ
% curl -X POST -d '{"accesskey":"<accesskey>", "secret":"<secretkey>", "component":"datasource", "action":"<action>" ... }' https://<endpoint url>
パラメータ
accesskey : アクセスキー
secret:シークレットキー
component : datasource
action : 実行するアクション
endpoint url : API リクエスト送信先 URL
% curl -X POST -d "{\"accesskey\":\"<accesskey>\", \"secret\":\"<secretkey>\", \"component\":\"datasource\", \"action\":\"<action>\" ...}" https://<endpoint url>
注意事項:
Windows 環境下で curl コマンドを使用する場合、左記の例のように二重引用符のみを用いて、JSON データ内ではエスケープします。
データソース一覧の取得
% curl -X POST -d '{"accesskey":"<accesskey>", "secret":"<secretkey>", "component":"datasource", "action":"list"}' https://<endpoint url> | jq
{
"data": [
{
"description": "description1",
"name": "as1",
"registeredAt": "2024-09-03T05:30:18.188Z",
"type": "as",
"value": "as://data1"
},
...
],
"status": "success"
}
パラメータ
action : list
戻り値
data : データソースの一覧
データソース一覧の取得(条件指定)
% curl -X POST -d '{"accesskey":"<accesskey>", "secret":"<secretkey>", "component":"datasource", "action":"list", "datasource":"orcl", "type":"oc"}' https://<endpoint url> | jq
{
"data": [
{
"description": "Oracle database",
"name": "orcl",
"registeredAt": "2024-09-03T05:30:18.188Z",
"type": "oc",
"value": "<hostname>:1521/orcl"
}
],
"status": "success"
}
パラメータ
action : list
datasource : データソース名
type : データソースの種別
戻り値
data : データソースの一覧
データベースへの接続確認
ADP から接続先データベースへの接続可否を確認することができます。
% curl -X POST -d '{"accesskey":"<accesskey>", "secret":"<secretkey>", "component":"datasource", "action":"connect", "datasource":"orcl"}' https://<endpoint url> | jq
{
"data": {
"host": "<hostname>",
"name": "orcl",
"port": "1521",
"service": "orcl",
"type": "oc",
"uname": "admin",
"value": "<hostname>:1521/orcl"
},
"status": "success"
}
パラメータ
action : connect
datasource : データソース名
戻り値
接続確認のステータスとメッセージ
SQL の実行(DDL)
% curl -X POST -d '{"accesskey":"<accesskey>", "secret":"<secretkey>", "component":"datasource", "action":"execute", "datasource":"orcl", "statement":"create table simple(id varchar2(64), num number, dt date)"}' https://<endpoint url> | jq
パラメータ
action : execute
datasource : データソース名
statement : DDL 文
値
DDL 文の実行ステータス
SQL の実行(DML)
% curl -X POST -d '{"accesskey":"<accesskey>", "secret":"<secretkey>", "component":"datasource", "action":"execute", "datasource":"orcl", "statement":"insert into simple values (:1, :2, :3)", "args": ["abcde", 1, "2024/11/12 13:22:00"], "session":{"NLS_DATE_FORMAT":"YYYY/MM/DD HH24:MI:SS"}}' https://<endpoint url> | jq
パラメータ
action : execute
datasource : データソース名
statement : DML 文
オプション
args : バインド変数
session : データベースセッションに影響するパラメータ
NLS_DATE_FORMAT : Oracle にデータ挿入・更新時の日付フォーマット
戻り値
DML 文の実行ステータス
SQL の実行(SELECT)
% curl -X POST -d '{"accesskey":"<accesskey>", "secret":"<secretkey>", "component":"datasource", "action":"execute", "datasource":"orcl", "query":"select * from employees","session":{"DATE_FORMAT":"2006-01-02"}}' https://<endpoint url> | jq
{
"data": [
[
"EMPLOYEE_ID",
"FIRST_NAME",
"LAST_NAME",
"EMAIL",
"HIRE_DATE",
"JOB_ID",
"SALARY",
"MANAGER_ID",
"DEPARTMENT_ID"
],
[
"e366",
"Amanda",
"Maldonado",
"amanda.maldonado@example.com",
"2023-01-09",
"IT_PROG",
"73498.98",
"73",
"30"
],
...
"status": "success"
}
パラメータ
action : execute
datasource : データソース名
query : SELECT 文
オプション
args : バインド変数
session : データベースセッションに影響するパラメータ
DATE_FORMAT : データ抽出時の日付フォーマット
戻り値
data : SELECT 文で抽出したレコード一覧