API (v2) クラス/名前空間
| Command | Supported | Notes |
|---|---|---|
| CLASSES | ✅ | すべてのクラス名を返します |
| NAMES | ✅ | Class または OID をサポート |
BlueOnyx GUI の CODB データベースはオブジェクトストレージです。そこには「System」「Vsite」「User」「DnsRecord」など、特定のクラスに属するオブジェクトが格納されています。各オブジェクトは NameSpace を持つことができ、その中には特定機能向けの key/value 形式の設定データが保存されます。たとえば Vsite や User には「Email」「Disk」などの NameSpace があり、設定情報や状態情報が格納されます。
どのクラスが存在し、あるクラスがどの NameSpace を持つかは必ずしも直感的ではありません。そのため、CLASSES コマンドはすべてのクラス名を列挙し、NAMES コマンドは OID を指定すると、そのオブジェクトが持つ NameSpace 名を返します。
CLASSES:
既知のクラス名をすべて返します。
ローカル要求:
curl -k -s \
-X POST https://127.0.0.1:9092/v2/cce \
-d '
{
"cmd": "CLASSES",
"user": "admin",
"sessionid": "SESSION-ID"
}
' \
| jq
リモート要求:
curl -k -s \
-X POST https://API-IP:9092/v2/cce \
-H "Content-Type: application/json" \
-H "X-Client-Secret: CLIENT-SECRET" \
-d '
{
"cmd": "CLASSES",
"token": "TOKEN"
}
' \
| jq
応答:
{
"status": 201,
"message": "GOODBYE",
"data": {
"DATA": [],
"classes": [
"pam_abl_settings",
"FtpSite",
"Vsite",
"VsiteServices",
"WebApplications",
"EmailAlias",
"CapabilityGroup",
"VirtualHost",
"SOL_Console",
"SWUpdateServer",
"ProtectedEmailAlias",
"DnsSOA",
"Network",
"PHP",
"Package",
"UserServices",
"MySQL",
"Capabilities",
"User",
"Disk",
"dnsbl",
"DnsSlaveZone",
"Schedule",
"Subdomains",
"ServiceQuota",
"IPPoolingRange",
"ActiveMonitor",
"Shop",
"WebApplicationsList",
"DnsRecord",
"Workgroup",
"UserExtraServices",
"System",
"mx2",
"Route"
]
}
}
NAMES:
NAMES コマンドは、既存オブジェクトの Object ID(OID)を引数として必要とします。指定されたオブジェクトを調べ、そのオブジェクトが持つ NameSpace 名を返します。
ローカル要求:
curl -k -s \
-X POST https://127.0.0.1:9092/v2/cce \
-d '
{
"cmd": "NAMES 1",
"user": "admin",
"sessionid": "SESSION-ID"
}
' \
| jq
リモート要求:
curl -k -s \
-X POST https://API-IP:9092/v2/cce \
-H "Content-Type: application/json" \
-H "X-Client-Secret: CLIENT-SECRET" \
-d '
{
"cmd": "NAMES 1",
"token": "TOKEN"
}
' |jq
応答:
{
"status": 201,
"message": "GOODBYE",
"data": {
"DATA": [],
"namespaces": [
"Jailkit",
"Remote",
"mysql",
"Vsite",
"DesktopControl",
"API",
"SSH",
"Compass_webapps",
"PHP_mgmt",
"Sitestats",
"MYSQLUSERS_DEFAULTS",
"Network",
"Ftp",
"TempTime",
"SSL",
"Nginx",
"Telnet",
"Support",
"VsiteDefaults",
"REDIRECT_DEFAULTS",
"RAID",
"Power",
"Radicale",
"yum",
"Memory",
"DNS",
"UserDefaults",
"DDNS",
"SWUpdate",
"Email",
"Time",
"Snmp",
"Web",
"subdomains"
]
}
}