DIAMONDHOSTDevelopers
排程任務
建立 Cron 排程並管理其中的指令、電源與備份任務。
排程
GET
/列出排程
回傳所有排程、Cron 設定、啟用狀態與任務。
程式範例cURL / Node.js / Python
curl -X GET "${BASE_URL}/" \
-H "Authorization: Bearer ${API_KEY}" \
-H "Accept: application/json"POST
/建立排程
以名稱和 Cron 欄位建立新排程。
REQUEST BODY
{
"name": "Daily Backup",
"minute": "0",
"hour": "3",
"day_of_month": "*",
"month": "*",
"day_of_week": "*",
"is_active": true,
"only_when_online": false
}程式範例cURL / Node.js / Python
curl -X POST "${BASE_URL}/" \
-H "Authorization: Bearer ${API_KEY}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"name": "Daily Backup",
"minute": "0",
"hour": "3",
"day_of_month": "*",
"month": "*",
"day_of_week": "*",
"is_active": true,
"only_when_online": false
}'POST
/{schedule}更新排程
修改名稱、Cron 規則或啟用狀態。
REQUEST BODY
{
"name": "Nightly Backup",
"minute": "0",
"hour": "2",
"day_of_month": "*",
"month": "*",
"day_of_week": "*",
"is_active": true,
"only_when_online": false
}程式範例cURL / Node.js / Python
curl -X POST "${BASE_URL}/{schedule}" \
-H "Authorization: Bearer ${API_KEY}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"name": "Nightly Backup",
"minute": "0",
"hour": "2",
"day_of_month": "*",
"month": "*",
"day_of_week": "*",
"is_active": true,
"only_when_online": false
}'POST
/{schedule}/execute立即執行
不等待下一個 Cron 時間,立即觸發排程。
程式範例cURL / Node.js / Python
curl -X POST "${BASE_URL}/{schedule}/execute" \
-H "Authorization: Bearer ${API_KEY}" \
-H "Accept: application/json"DELETE
/{schedule}刪除排程
刪除排程與其所有任務。
程式範例cURL / Node.js / Python
curl -X DELETE "${BASE_URL}/{schedule}" \
-H "Authorization: Bearer ${API_KEY}" \
-H "Accept: application/json"任務
POST
/{schedule}/tasks新增任務
加入指令、電源操作或備份任務,並設定延遲秒數。
REQUEST BODY
{
"action": "command",
"payload": "say Scheduled restart in 5 minutes",
"time_offset": 0,
"continue_on_failure": false
}程式範例cURL / Node.js / Python
curl -X POST "${BASE_URL}/{schedule}/tasks" \
-H "Authorization: Bearer ${API_KEY}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"action": "command",
"payload": "say Scheduled restart in 5 minutes",
"time_offset": 0,
"continue_on_failure": false
}'POST
/{schedule}/tasks/{task}更新任務
調整任務內容、延遲或失敗後繼續設定。
REQUEST BODY
{
"action": "power",
"payload": "restart",
"time_offset": 300,
"continue_on_failure": false
}程式範例cURL / Node.js / Python
curl -X POST "${BASE_URL}/{schedule}/tasks/{task}" \
-H "Authorization: Bearer ${API_KEY}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{
"action": "power",
"payload": "restart",
"time_offset": 300,
"continue_on_failure": false
}'DELETE
/{schedule}/tasks/{task}刪除任務
從排程中移除指定任務。
程式範例cURL / Node.js / Python
curl -X DELETE "${BASE_URL}/{schedule}/tasks/{task}" \
-H "Authorization: Bearer ${API_KEY}" \
-H "Accept: application/json"