REST API 定义说明¶
Base URL: /aip/9.2
- GET /cluster¶
Get cluster info
- Status Codes:
200 OK – Success
401 Unauthorized – Unauthorized user
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
cluster.admins[] (string)
cluster.clusterName (string)
cluster.clusterType (string)
cluster.masterName (string) – Master host name
cluster.nServers (integer) – Number of hosts in cluster
cluster.nSharedFS (integer) – Number of shared file system
cluster.releaseDate (string)
cluster.sharedFS[].freeGB (number)
cluster.sharedFS[].mountPoint (string)
cluster.sharedFS[].server (string)
cluster.sharedFS[].totalGB (number)
cluster.version (string)
- GET /cluster/res¶
Get cluster shared resources
- Query Parameters:
shared (boolean) – shared
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
clusterRes[].cluster (string)
clusterRes[].hosts[] (string)
clusterRes[].name (string)
clusterRes[].reserved (string)
clusterRes[].usable (string)
total (integer)
- POST /cmd/run¶
Run a command
- Request JSON Object:
command (string) – Command to run (required)
cwd (string) – Specifies the current working directory for command execution
envs[] (string)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
output (string)
- GET /file/download/{file_name}¶
Download a file or workdir
Example upload request: curl -X GET -H “Authorization: Bearer $TOKEN” “http://localhost:8088/aip/v9.2/file/download/testfile” > ./testfile
- Parameters:
file_name (string) – file_name; all means workdir
- Query Parameters:
workdir (string) – workdir
rmworkdir (boolean) – remove workdir after download
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
500 Internal Server Error – Internal error
- Request Headers:
Authorization – Token with Bearer started
- POST /file/upload¶
Upload files to workdir or user home directory
Example upload request: curl -H “Authorization: Bearer $TOKEN” -H “Content-Type: multipart/form-data” -F “file=@/shared/testfile1” -F “file=@/shared/testfile2” “http://localhost:8088/aip/v9.2/file/upload?workdir=/data”
- Query Parameters:
workdir (string) – workdir
extract (boolean) – extrac an uploaded .tar.gz file
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
500 Internal Server Error – Internal error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
file.path (string)
- POST /hgroup/addmember¶
Add new member to an existing host group
- Request JSON Object:
group (string) – (required)
members[] (string)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
host_group.group (string) – (required)
host_group.members[] (string)
- POST /hgroup/create¶
Create a new host group
- Request JSON Object:
group (string) – (required)
members[] (string)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
host_group.group (string) – (required)
host_group.members[] (string)
- POST /hgroup/delete/{hg_name}¶
Delete an existing host group
- Parameters:
hg_name (string) – hg_name
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
data (any)
msg (string)
- POST /hgroup/delmember¶
Delete member from an existing host group
- Request JSON Object:
group (string) – (required)
members[] (string)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
host_group.group (string) – (required)
host_group.members[] (string)
- GET /hgroup/{hg_name}¶
Get host group info
- Parameters:
hg_name (string) – hg_name
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
404 Not Found – Host group not found
500 Internal Server Error – Interal server error
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
host_group.group (string) – (required)
host_group.members[] (string)
- GET /hgroups¶
Get host group list
- Status Codes:
200 OK – Success
401 Unauthorized – Unauthorized user
500 Internal Server Error – Interal server error
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
host_groups[].group (string) – (required)
host_groups[].members[] (string)
total (integer)
- GET /host/{host_name}¶
Get host info
- Parameters:
host_name (string) – host_name
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
404 Not Found – Host not found
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
host.closeMsg (string)
host.cluster (string)
host.cpu (string)
host.cpuBind (boolean)
host.cpuInfo.coresPerSocket (integer)
host.cpuInfo.model (string)
host.cpuInfo.sockets (integer)
host.cpuInfo.utilization[].id (integer)
host.cpuInfo.utilization[].ut (number)
host.gpu (string)
host.gpuInfo[].freeMemory (integer)
host.gpuInfo[].gpuUt (number)
host.gpuInfo[].id (integer)
host.gpuInfo[].memUt (number)
host.gpuInfo[].model (string)
host.gpuInfo[].temperature (integer)
host.gpuInfo[].totalMemory (integer)
host.gpuInfo[].usage (number)
host.hGroup (string)
host.hostType (string)
host.ipAddr (string)
host.load[].name (string)
host.load[].values (number)
host.localDiskIO[].device (string)
host.localDiskIO[].readKBps (number)
host.localDiskIO[].writeKBps (number)
host.maxJobs (integer)
host.maxMem (number)
host.maxSwap (number)
host.mem (string)
host.memUt (number)
host.nJobs (integer)
host.nRsv (integer)
host.nRun (integer)
host.nSStop (integer)
host.nUStop (integer)
host.name (string)
host.netIO[].device (string)
host.netIO[].recvKBps (number)
host.netIO[].sendKBps (number)
host.slotUt (number)
host.status (string)
host.swapUt (number)
host.tags[] (string)
host.usedMem (number)
- GET /hosts¶
Get host list
- Status Codes:
200 OK – Success
401 Unauthorized – Unauthorized user
500 Internal Server Error – Interal server error
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
hosts[].closeMsg (string)
hosts[].cluster (string)
hosts[].cpu (string)
hosts[].cpuBind (boolean)
hosts[].cpuInfo.coresPerSocket (integer)
hosts[].cpuInfo.model (string)
hosts[].cpuInfo.sockets (integer)
hosts[].cpuInfo.utilization[].id (integer)
hosts[].cpuInfo.utilization[].ut (number)
hosts[].gpu (string)
hosts[].gpuInfo[].freeMemory (integer)
hosts[].gpuInfo[].gpuUt (number)
hosts[].gpuInfo[].id (integer)
hosts[].gpuInfo[].memUt (number)
hosts[].gpuInfo[].model (string)
hosts[].gpuInfo[].temperature (integer)
hosts[].gpuInfo[].totalMemory (integer)
hosts[].gpuInfo[].usage (number)
hosts[].hGroup (string)
hosts[].hostType (string)
hosts[].ipAddr (string)
hosts[].load[].name (string)
hosts[].load[].values (number)
hosts[].localDiskIO[].device (string)
hosts[].localDiskIO[].readKBps (number)
hosts[].localDiskIO[].writeKBps (number)
hosts[].maxJobs (integer)
hosts[].maxMem (number)
hosts[].maxSwap (number)
hosts[].mem (string)
hosts[].memUt (number)
hosts[].nJobs (integer)
hosts[].nRsv (integer)
hosts[].nRun (integer)
hosts[].nSStop (integer)
hosts[].nUStop (integer)
hosts[].name (string)
hosts[].netIO[].device (string)
hosts[].netIO[].recvKBps (number)
hosts[].netIO[].sendKBps (number)
hosts[].slotUt (number)
hosts[].status (string)
hosts[].swapUt (number)
hosts[].tags[] (string)
hosts[].usedMem (number)
total (integer)
- POST /job/kill/{job_id}¶
Kill a running job
- Parameters:
job_id (string) – job_id
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
404 Not Found – Job not found
500 Internal Server Error – Interal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
data (any)
msg (string)
- GET /job/output/{job_id}¶
Get job standard output and standard error output
- Parameters:
job_id (string) – job_id
- Query Parameters:
start_line (string) – start_line
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
404 Not Found – Job not found
500 Internal Server Error – Interal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
job.actualMaxRunTime (integer) – Maximum job runtime
job.cluster (string)
job.cpuTime (number) – CPU time in seconds the job used
job.cpuUsage (number) – Job resource usage: cpuUsage
job.endReason (string) – Job exit reason
job.endTime (integer) – Unix epoch time when job is finished
job.execHosts[] (string)
job.exitCode (integer) – Job exit code
job.exitStatusString (string) – Job exit status string
job.jobId (integer)
job.jobIndex (integer)
job.jobSpec.app (string) – Application name
job.jobSpec.beginTime (string) – Dispatches the job for execution on or after the specified date and time. The format for the termination time is [[month:]day:]hour:minute where the number ranges are as follows: month 1-12, day 1-31, hour 0-23, minute 0-59
job.jobSpec.command (string) – Job command to run (required)
job.jobSpec.cwd (string) – Specifies the current working directory for job execution
job.jobSpec.deadline (string) – Specifies the job termination deadline. The format for the termination time is [[month:]day:]hour:minute where the number ranges are as follows: month 1-12, day 1-31, hour 0-23, minute 0-59
job.jobSpec.dependCond (string) – AIP will not place the job unless the dependency expression evaluates to TRUE
job.jobSpec.envs[] (string)
job.jobSpec.errFile (string) – Appends the standard error output of the job to the specified file
job.jobSpec.hosts[] (string)
job.jobSpec.inFile (string) – Gets the standard input for the job from specified file
job.jobSpec.jobDescription (string) – Job description
job.jobSpec.jobName (string) – Same with job command by default
job.jobSpec.maxNumSlots (integer) – Maximum number of required job slots
job.jobSpec.maxRunTime (string) – Sets the run time limit of the job. The format is [hours:]minutes. The minutes can be specified as a number greater than 59. For example, three and a half hours can either be specified as 3:30, or 210.
job.jobSpec.minNumSlots (integer) – Minimum number of required job slots
job.jobSpec.outFile (string) – Appends the standard output of the job to the specified file
job.jobSpec.priority (integer) – User-assigned job priority which allow users to order their jobs in a queue
job.jobSpec.project (string) – Project name
job.jobSpec.queue (string) – Submit job to the queue
job.jobSpec.resReq (string) – Run the job on a host that meets the specified resource requirements
job.mem (number) – Job resource usage: mem
job.msg (any) – Job message posted
job.runTime (integer) – Job runtime in seconds
job.startTime (integer) – Unix epoch time when job is started
job.status (integer)
job.statusString (string)
job.submitHost (string) – Job is submitted from the host
job.submitTime (integer) – Unix epoch time when job is submitted
job.user (string)
job.waitReason (string) – Job pend reason
- POST /job/resume/{job_id}¶
Resume a stopped job
- Parameters:
job_id (string) – job_id
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
404 Not Found – Job not found
500 Internal Server Error – Interal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
data (any)
msg (string)
- POST /job/stop/{job_id}¶
Stop a running job
- Parameters:
job_id (string) – job_id
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
404 Not Found – Job not found
500 Internal Server Error – Interal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
data (any)
msg (string)
- POST /job/submit¶
Submit a new job
- Request JSON Object:
app (string) – Application name
beginTime (string) – Dispatches the job for execution on or after the specified date and time. The format for the termination time is [[month:]day:]hour:minute where the number ranges are as follows: month 1-12, day 1-31, hour 0-23, minute 0-59
command (string) – Job command to run (required)
cwd (string) – Specifies the current working directory for job execution
deadline (string) – Specifies the job termination deadline. The format for the termination time is [[month:]day:]hour:minute where the number ranges are as follows: month 1-12, day 1-31, hour 0-23, minute 0-59
dependCond (string) – AIP will not place the job unless the dependency expression evaluates to TRUE
envs[] (string)
errFile (string) – Appends the standard error output of the job to the specified file
hosts[] (string)
inFile (string) – Gets the standard input for the job from specified file
jobDescription (string) – Job description
jobName (string) – Same with job command by default
maxNumSlots (integer) – Maximum number of required job slots
maxRunTime (string) – Sets the run time limit of the job. The format is [hours:]minutes. The minutes can be specified as a number greater than 59. For example, three and a half hours can either be specified as 3:30, or 210.
minNumSlots (integer) – Minimum number of required job slots
outFile (string) – Appends the standard output of the job to the specified file
priority (integer) – User-assigned job priority which allow users to order their jobs in a queue
project (string) – Project name
queue (string) – Submit job to the queue
resReq (string) – Run the job on a host that meets the specified resource requirements
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
job.jobId (integer)
- GET /job/{job_id}¶
Get job info
- Parameters:
job_id (string) – job_id
- Query Parameters:
msg (boolean) – msg
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
404 Not Found – Job not found
500 Internal Server Error – Interal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
job.actualMaxRunTime (integer) – Maximum job runtime
job.cluster (string)
job.cpuTime (number) – CPU time in seconds the job used
job.cpuUsage (number) – Job resource usage: cpuUsage
job.endReason (string) – Job exit reason
job.endTime (integer) – Unix epoch time when job is finished
job.execHosts[] (string)
job.exitCode (integer) – Job exit code
job.exitStatusString (string) – Job exit status string
job.jobId (integer)
job.jobIndex (integer)
job.jobSpec.app (string) – Application name
job.jobSpec.beginTime (string) – Dispatches the job for execution on or after the specified date and time. The format for the termination time is [[month:]day:]hour:minute where the number ranges are as follows: month 1-12, day 1-31, hour 0-23, minute 0-59
job.jobSpec.command (string) – Job command to run (required)
job.jobSpec.cwd (string) – Specifies the current working directory for job execution
job.jobSpec.deadline (string) – Specifies the job termination deadline. The format for the termination time is [[month:]day:]hour:minute where the number ranges are as follows: month 1-12, day 1-31, hour 0-23, minute 0-59
job.jobSpec.dependCond (string) – AIP will not place the job unless the dependency expression evaluates to TRUE
job.jobSpec.envs[] (string)
job.jobSpec.errFile (string) – Appends the standard error output of the job to the specified file
job.jobSpec.hosts[] (string)
job.jobSpec.inFile (string) – Gets the standard input for the job from specified file
job.jobSpec.jobDescription (string) – Job description
job.jobSpec.jobName (string) – Same with job command by default
job.jobSpec.maxNumSlots (integer) – Maximum number of required job slots
job.jobSpec.maxRunTime (string) – Sets the run time limit of the job. The format is [hours:]minutes. The minutes can be specified as a number greater than 59. For example, three and a half hours can either be specified as 3:30, or 210.
job.jobSpec.minNumSlots (integer) – Minimum number of required job slots
job.jobSpec.outFile (string) – Appends the standard output of the job to the specified file
job.jobSpec.priority (integer) – User-assigned job priority which allow users to order their jobs in a queue
job.jobSpec.project (string) – Project name
job.jobSpec.queue (string) – Submit job to the queue
job.jobSpec.resReq (string) – Run the job on a host that meets the specified resource requirements
job.mem (number) – Job resource usage: mem
job.msg (any) – Job message posted
job.runTime (integer) – Job runtime in seconds
job.startTime (integer) – Unix epoch time when job is started
job.status (integer)
job.statusString (string)
job.submitHost (string) – Job is submitted from the host
job.submitTime (integer) – Unix epoch time when job is submitted
job.user (string)
job.waitReason (string) – Job pend reason
- GET /jobs¶
Get job list
- Query Parameters:
user (string) – user
host (string) – host
name (string) – name
queue (string) – queue
project (string) – project
app (string) – app
status (string) – status
msg (boolean) – msg
id (string) – id
search (string) – search
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
404 Not Found – Job not found
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
jobs[].actualMaxRunTime (integer) – Maximum job runtime
jobs[].cluster (string)
jobs[].cpuTime (number) – CPU time in seconds the job used
jobs[].cpuUsage (number) – Job resource usage: cpuUsage
jobs[].endReason (string) – Job exit reason
jobs[].endTime (integer) – Unix epoch time when job is finished
jobs[].execHosts[] (string)
jobs[].exitCode (integer) – Job exit code
jobs[].exitStatusString (string) – Job exit status string
jobs[].jobId (integer)
jobs[].jobIndex (integer)
jobs[].jobSpec.app (string) – Application name
jobs[].jobSpec.beginTime (string) – Dispatches the job for execution on or after the specified date and time. The format for the termination time is [[month:]day:]hour:minute where the number ranges are as follows: month 1-12, day 1-31, hour 0-23, minute 0-59
jobs[].jobSpec.command (string) – Job command to run (required)
jobs[].jobSpec.cwd (string) – Specifies the current working directory for job execution
jobs[].jobSpec.deadline (string) – Specifies the job termination deadline. The format for the termination time is [[month:]day:]hour:minute where the number ranges are as follows: month 1-12, day 1-31, hour 0-23, minute 0-59
jobs[].jobSpec.dependCond (string) – AIP will not place the job unless the dependency expression evaluates to TRUE
jobs[].jobSpec.envs[] (string)
jobs[].jobSpec.errFile (string) – Appends the standard error output of the job to the specified file
jobs[].jobSpec.hosts[] (string)
jobs[].jobSpec.inFile (string) – Gets the standard input for the job from specified file
jobs[].jobSpec.jobDescription (string) – Job description
jobs[].jobSpec.jobName (string) – Same with job command by default
jobs[].jobSpec.maxNumSlots (integer) – Maximum number of required job slots
jobs[].jobSpec.maxRunTime (string) – Sets the run time limit of the job. The format is [hours:]minutes. The minutes can be specified as a number greater than 59. For example, three and a half hours can either be specified as 3:30, or 210.
jobs[].jobSpec.minNumSlots (integer) – Minimum number of required job slots
jobs[].jobSpec.outFile (string) – Appends the standard output of the job to the specified file
jobs[].jobSpec.priority (integer) – User-assigned job priority which allow users to order their jobs in a queue
jobs[].jobSpec.project (string) – Project name
jobs[].jobSpec.queue (string) – Submit job to the queue
jobs[].jobSpec.resReq (string) – Run the job on a host that meets the specified resource requirements
jobs[].mem (number) – Job resource usage: mem
jobs[].msg (any) – Job message posted
jobs[].runTime (integer) – Job runtime in seconds
jobs[].startTime (integer) – Unix epoch time when job is started
jobs[].status (integer)
jobs[].statusString (string)
jobs[].submitHost (string) – Job is submitted from the host
jobs[].submitTime (integer) – Unix epoch time when job is submitted
jobs[].user (string)
jobs[].waitReason (string) – Job pend reason
total (integer)
- GET /limits¶
Get limit list
- Status Codes:
200 OK – Success
401 Unauthorized – Unauthorized user
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
limits[].consumers[].consumer (string)
limits[].consumers[].definition (string)
limits[].consumers[].expansion (string)
limits[].name (string)
limits[].resLimits[].limit (number)
limits[].resLimits[].res (string)
limits[].resLimits[].resName (string)
limits[].resLimits[].windows (string)
limits[].usages[].app (string)
limits[].usages[].host (string)
limits[].usages[].jobs (number)
limits[].usages[].maxJobs (number)
limits[].usages[].maxSlots (number)
limits[].usages[].project (string)
limits[].usages[].queue (string)
limits[].usages[].resourceUsages[].resLimitValue (number)
limits[].usages[].resourceUsages[].resName (string)
limits[].usages[].resourceUsages[].resValue (number)
limits[].usages[].slots (number)
limits[].usages[].user (string)
total (integer)
- POST /login¶
Logs user into the system
- Request JSON Object:
notExpire (integer) – Token not expire
password (string) – Password (required)
username (string) – User name (required)
- Status Codes:
200 OK – Success
400 Bad Request – Invalid username/password supplied
- Response JSON Object:
token.token (string) – User token used to be authenticated
token.userName (string) – User name
- POST /param/modify¶
Modify parameters
- Request JSON Object:
paramConf.cGroup (string)
paramConf.defaultQueue (string)
paramConf.elasticJob (string)
paramConf.gpuShareSpread (string)
paramConf.idleActionTriggerDuration (string)
paramConf.jmInterval (integer)
paramConf.jobAcceptInterval (integer)
paramConf.jobFailCloseHost (string)
paramConf.jobTerminateInterval (integer)
paramConf.mailOnMaster (string)
paramConf.mailProg (string)
paramConf.mailServer (string)
paramConf.mailSizeLimit (integer)
paramConf.mailTo (string)
paramConf.maxArraySize (integer)
paramConf.maxCbacctNum (integer)
paramConf.maxCbdataJobNum (integer)
paramConf.maxCbdataNum (integer)
paramConf.maxStreamRecords (integer)
paramConf.memPeriod (integer)
paramConf.preemptableResources (string)
paramConf.preemptionSuspend (string)
paramConf.rootCanRun (string)
paramConf.schedInteral (integer)
paramConf.windowsMappingAccount (string)
powerConf.cycleTime (string)
powerConf.excludeHosts (string)
powerConf.idleTime (integer)
powerConf.pendTime (string)
powerConf.powerDownCmd (string)
powerConf.powerDownFilter (string)
powerConf.powerRestartCmd (string)
powerConf.powerUpCmd (string)
powerConf.powerUpFilter (string)
powerConf.resumeRate (string)
powerConf.suspendRate (string)
scaleConf.scalUpBuffer (integer)
scaleConf.scaleDownAction (string)
scaleConf.scaleDownBuffer (integer)
scaleConf.scaleIdleTime (integer)
scaleConf.scaleMaxSlots (integer)
scaleConf.scalePendTime (integer)
scaleConf.scaleQueues (string)
scaleConf.scaleSchedInterval (integer)
scaleConf.scaleUpActiom (string)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
param.paramConf.cGroup (string)
param.paramConf.defaultQueue (string)
param.paramConf.elasticJob (string)
param.paramConf.gpuShareSpread (string)
param.paramConf.idleActionTriggerDuration (string)
param.paramConf.jmInterval (integer)
param.paramConf.jobAcceptInterval (integer)
param.paramConf.jobFailCloseHost (string)
param.paramConf.jobTerminateInterval (integer)
param.paramConf.mailOnMaster (string)
param.paramConf.mailProg (string)
param.paramConf.mailServer (string)
param.paramConf.mailSizeLimit (integer)
param.paramConf.mailTo (string)
param.paramConf.maxArraySize (integer)
param.paramConf.maxCbacctNum (integer)
param.paramConf.maxCbdataJobNum (integer)
param.paramConf.maxCbdataNum (integer)
param.paramConf.maxStreamRecords (integer)
param.paramConf.memPeriod (integer)
param.paramConf.preemptableResources (string)
param.paramConf.preemptionSuspend (string)
param.paramConf.rootCanRun (string)
param.paramConf.schedInteral (integer)
param.paramConf.windowsMappingAccount (string)
param.powerConf.cycleTime (string)
param.powerConf.excludeHosts (string)
param.powerConf.idleTime (integer)
param.powerConf.pendTime (string)
param.powerConf.powerDownCmd (string)
param.powerConf.powerDownFilter (string)
param.powerConf.powerRestartCmd (string)
param.powerConf.powerUpCmd (string)
param.powerConf.powerUpFilter (string)
param.powerConf.resumeRate (string)
param.powerConf.suspendRate (string)
param.scaleConf.scalUpBuffer (integer)
param.scaleConf.scaleDownAction (string)
param.scaleConf.scaleDownBuffer (integer)
param.scaleConf.scaleIdleTime (integer)
param.scaleConf.scaleMaxSlots (integer)
param.scaleConf.scalePendTime (integer)
param.scaleConf.scaleQueues (string)
param.scaleConf.scaleSchedInterval (integer)
param.scaleConf.scaleUpActiom (string)
- GET /params¶
Get parameters
- Status Codes:
200 OK – Success
401 Unauthorized – Unauthorized user
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
param.paramConf.cGroup (string)
param.paramConf.defaultQueue (string)
param.paramConf.elasticJob (string)
param.paramConf.gpuShareSpread (string)
param.paramConf.idleActionTriggerDuration (string)
param.paramConf.jmInterval (integer)
param.paramConf.jobAcceptInterval (integer)
param.paramConf.jobFailCloseHost (string)
param.paramConf.jobTerminateInterval (integer)
param.paramConf.mailOnMaster (string)
param.paramConf.mailProg (string)
param.paramConf.mailServer (string)
param.paramConf.mailSizeLimit (integer)
param.paramConf.mailTo (string)
param.paramConf.maxArraySize (integer)
param.paramConf.maxCbacctNum (integer)
param.paramConf.maxCbdataJobNum (integer)
param.paramConf.maxCbdataNum (integer)
param.paramConf.maxStreamRecords (integer)
param.paramConf.memPeriod (integer)
param.paramConf.preemptableResources (string)
param.paramConf.preemptionSuspend (string)
param.paramConf.rootCanRun (string)
param.paramConf.schedInteral (integer)
param.paramConf.windowsMappingAccount (string)
param.powerConf.cycleTime (string)
param.powerConf.excludeHosts (string)
param.powerConf.idleTime (integer)
param.powerConf.pendTime (string)
param.powerConf.powerDownCmd (string)
param.powerConf.powerDownFilter (string)
param.powerConf.powerRestartCmd (string)
param.powerConf.powerUpCmd (string)
param.powerConf.powerUpFilter (string)
param.powerConf.resumeRate (string)
param.powerConf.suspendRate (string)
param.scaleConf.scalUpBuffer (integer)
param.scaleConf.scaleDownAction (string)
param.scaleConf.scaleDownBuffer (integer)
param.scaleConf.scaleIdleTime (integer)
param.scaleConf.scaleMaxSlots (integer)
param.scaleConf.scalePendTime (integer)
param.scaleConf.scaleQueues (string)
param.scaleConf.scaleSchedInterval (integer)
param.scaleConf.scaleUpActiom (string)
- POST /queue/create¶
Create a queue
- Request JSON Object:
description (string)
exclusive (string)
fairshare (string)
hosts (string)
jobIdle (string)
jobStarter (string)
killAction (string)
maxSlots (integer)
name (string) – (required)
postExec (string)
preExec (string)
preemption (string)
priority (integer) – (required)
rerunOnExitCode (string)
rerunOnHostFail (string)
resReq (string)
resumeAction (string)
runLimit (string)
slotReserveTime (string)
stopAction (string)
userMaxSlots (integer)
users (string)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
queue.availGPUs (number)
queue.availMemGB (number)
queue.availSlots (string)
queue.description (string)
queue.dispatchWindow (string)
queue.exclusive (string)
queue.fairshare.freeSlots (integer)
queue.fairshare.shares[].nPend (integer)
queue.fairshare.shares[].nRun (integer)
queue.fairshare.shares[].priorigy (number)
queue.fairshare.shares[].shares (number)
queue.fairshare.shares[].user (string)
queue.fairshare.totalSlots (integer)
queue.gpuEnforce (boolean)
queue.hostJLimit (string)
queue.hosts (string)
queue.interactive (boolean)
queue.jobIdleAction (string)
queue.jobIdleDetectAfter (integer)
queue.jobIdleFactor (string)
queue.jobSizes[] (integer)
queue.jobStarter (string)
queue.killAction (string)
queue.maxAvailGPUs (integer)
queue.maxAvailMemGB (number)
queue.maxAvailSlots (string)
queue.maxJobs (string)
queue.nJobs (integer)
queue.nPend (integer)
queue.nRun (integer)
queue.nStop (integer)
queue.name (string)
queue.postExec (string)
queue.preExec (string)
queue.preemption (string)
queue.priority (integer)
queue.procJLimit (string)
queue.resReq (string)
queue.resumeAction (string)
queue.runWindow (string)
queue.runlimit (integer)
queue.slotReserveTime (integer)
queue.status (string)
queue.stopAction (string)
queue.userJLimit (string)
queue.users (string)
- POST /queue/delete/{queue_name}¶
Delete a queue
- Parameters:
queue_name (string) – queue_name
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
500 Internal Server Error – Interal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
data (any)
msg (string)
- POST /queue/modify¶
Modify a queue
- Request JSON Object:
description (string)
exclusive (string)
fairshare (string)
hosts (string)
jobIdle (string)
jobStarter (string)
killAction (string)
maxSlots (integer)
name (string) – (required)
postExec (string)
preExec (string)
preemption (string)
priority (integer) – (required)
rerunOnExitCode (string)
rerunOnHostFail (string)
resReq (string)
resumeAction (string)
runLimit (string)
slotReserveTime (string)
stopAction (string)
userMaxSlots (integer)
users (string)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
queue.availGPUs (number)
queue.availMemGB (number)
queue.availSlots (string)
queue.description (string)
queue.dispatchWindow (string)
queue.exclusive (string)
queue.fairshare.freeSlots (integer)
queue.fairshare.shares[].nPend (integer)
queue.fairshare.shares[].nRun (integer)
queue.fairshare.shares[].priorigy (number)
queue.fairshare.shares[].shares (number)
queue.fairshare.shares[].user (string)
queue.fairshare.totalSlots (integer)
queue.gpuEnforce (boolean)
queue.hostJLimit (string)
queue.hosts (string)
queue.interactive (boolean)
queue.jobIdleAction (string)
queue.jobIdleDetectAfter (integer)
queue.jobIdleFactor (string)
queue.jobSizes[] (integer)
queue.jobStarter (string)
queue.killAction (string)
queue.maxAvailGPUs (integer)
queue.maxAvailMemGB (number)
queue.maxAvailSlots (string)
queue.maxJobs (string)
queue.nJobs (integer)
queue.nPend (integer)
queue.nRun (integer)
queue.nStop (integer)
queue.name (string)
queue.postExec (string)
queue.preExec (string)
queue.preemption (string)
queue.priority (integer)
queue.procJLimit (string)
queue.resReq (string)
queue.resumeAction (string)
queue.runWindow (string)
queue.runlimit (integer)
queue.slotReserveTime (integer)
queue.status (string)
queue.stopAction (string)
queue.userJLimit (string)
queue.users (string)
- GET /queue/{queue_name}¶
Get queue info
- Parameters:
queue_name (string) – queue_name
- Query Parameters:
uextend (boolean) – uextend
- Status Codes:
200 OK – Success
401 Unauthorized – Unauthorized user
404 Not Found – Queue not found
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
queue.availGPUs (number)
queue.availMemGB (number)
queue.availSlots (string)
queue.description (string)
queue.dispatchWindow (string)
queue.exclusive (string)
queue.fairshare.freeSlots (integer)
queue.fairshare.shares[].nPend (integer)
queue.fairshare.shares[].nRun (integer)
queue.fairshare.shares[].priorigy (number)
queue.fairshare.shares[].shares (number)
queue.fairshare.shares[].user (string)
queue.fairshare.totalSlots (integer)
queue.gpuEnforce (boolean)
queue.hostJLimit (string)
queue.hosts (string)
queue.interactive (boolean)
queue.jobIdleAction (string)
queue.jobIdleDetectAfter (integer)
queue.jobIdleFactor (string)
queue.jobSizes[] (integer)
queue.jobStarter (string)
queue.killAction (string)
queue.maxAvailGPUs (integer)
queue.maxAvailMemGB (number)
queue.maxAvailSlots (string)
queue.maxJobs (string)
queue.nJobs (integer)
queue.nPend (integer)
queue.nRun (integer)
queue.nStop (integer)
queue.name (string)
queue.postExec (string)
queue.preExec (string)
queue.preemption (string)
queue.priority (integer)
queue.procJLimit (string)
queue.resReq (string)
queue.resumeAction (string)
queue.runWindow (string)
queue.runlimit (integer)
queue.slotReserveTime (integer)
queue.status (string)
queue.stopAction (string)
queue.userJLimit (string)
queue.users (string)
- GET /queues¶
Get queue list
- Query Parameters:
user (string) – user
host (string) – host
uextend (boolean) – uextend
- Status Codes:
200 OK – Success
401 Unauthorized – Unauthorized user
404 Not Found – Queue not found
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
queues[].availGPUs (number)
queues[].availMemGB (number)
queues[].availSlots (string)
queues[].description (string)
queues[].dispatchWindow (string)
queues[].exclusive (string)
queues[].fairshare.freeSlots (integer)
queues[].fairshare.shares[].nPend (integer)
queues[].fairshare.shares[].nRun (integer)
queues[].fairshare.shares[].priorigy (number)
queues[].fairshare.shares[].shares (number)
queues[].fairshare.shares[].user (string)
queues[].fairshare.totalSlots (integer)
queues[].gpuEnforce (boolean)
queues[].hostJLimit (string)
queues[].hosts (string)
queues[].interactive (boolean)
queues[].jobIdleAction (string)
queues[].jobIdleDetectAfter (integer)
queues[].jobIdleFactor (string)
queues[].jobSizes[] (integer)
queues[].jobStarter (string)
queues[].killAction (string)
queues[].maxAvailGPUs (integer)
queues[].maxAvailMemGB (number)
queues[].maxAvailSlots (string)
queues[].maxJobs (string)
queues[].nJobs (integer)
queues[].nPend (integer)
queues[].nRun (integer)
queues[].nStop (integer)
queues[].name (string)
queues[].postExec (string)
queues[].preExec (string)
queues[].preemption (string)
queues[].priority (integer)
queues[].procJLimit (string)
queues[].resReq (string)
queues[].resumeAction (string)
queues[].runWindow (string)
queues[].runlimit (integer)
queues[].slotReserveTime (integer)
queues[].status (string)
queues[].stopAction (string)
queues[].userJLimit (string)
queues[].users (string)
total (integer)
- GET /res¶
Get resource configuration
- Status Codes:
200 OK – Success
401 Unauthorized – Unauthorized user
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
res[].assigned (boolean)
res[].desc (string)
res[].dir (string)
res[].name (string)
res[].slotResource (boolean)
res[].type (string)
total (integer)
- POST /revoke¶
Revoke the token
- Request JSON Object:
password (string) – Password (required)
token (string) – Token (required)
username (string) – User name (required)
- Status Codes:
200 OK – Success
400 Bad Request – Invalid username/password supplied
- Response JSON Object:
data (any)
msg (string)
- POST /ugroup/addmember¶
Add members into an existing user group
- Request JSON Object:
group (string) – (required)
members[] (string)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
user_group.cluster (string)
user_group.gStats.numJobs (integer)
user_group.gStats.numPend (integer)
user_group.gStats.numReserve (integer)
user_group.gStats.numRun (integer)
user_group.gStats.numSSusp (integer)
user_group.gStats.numStartJobs (integer)
user_group.gStats.numUSusp (integer)
user_group.group (string)
user_group.queue (string)
user_group.uStats.jobPend (integer)
user_group.uStats.jobRun (integer)
user_group.uStats.jobSusp (integer)
user_group.uStats.numPend (integer)
user_group.uStats.numRun (integer)
user_group.uStats.numSusp (integer)
user_group.ugSpec.admin (string)
user_group.ugSpec.group (string) – (required)
user_group.ugSpec.max_gpus (integer)
user_group.ugSpec.max_jobs (integer)
user_group.ugSpec.max_slots (integer)
user_group.ugSpec.members[] (string)
user_group.ugSpec.user_job_limit (integer)
user_group.ugSpec.user_shares (string)
user_group.user (string)
- POST /ugroup/admin¶
Update admin into an existing user group
- Request JSON Object:
admin (string) – (required)
group (string) – (required)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
user_group.cluster (string)
user_group.gStats.numJobs (integer)
user_group.gStats.numPend (integer)
user_group.gStats.numReserve (integer)
user_group.gStats.numRun (integer)
user_group.gStats.numSSusp (integer)
user_group.gStats.numStartJobs (integer)
user_group.gStats.numUSusp (integer)
user_group.group (string)
user_group.queue (string)
user_group.uStats.jobPend (integer)
user_group.uStats.jobRun (integer)
user_group.uStats.jobSusp (integer)
user_group.uStats.numPend (integer)
user_group.uStats.numRun (integer)
user_group.uStats.numSusp (integer)
user_group.ugSpec.admin (string)
user_group.ugSpec.group (string) – (required)
user_group.ugSpec.max_gpus (integer)
user_group.ugSpec.max_jobs (integer)
user_group.ugSpec.max_slots (integer)
user_group.ugSpec.members[] (string)
user_group.ugSpec.user_job_limit (integer)
user_group.ugSpec.user_shares (string)
user_group.user (string)
- POST /ugroup/create¶
Create a user group
- Request JSON Object:
admin (string)
group (string) – (required)
max_gpus (integer)
max_jobs (integer)
max_slots (integer)
members[] (string)
user_job_limit (integer)
user_shares (string)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
user_group.cluster (string)
user_group.gStats.numJobs (integer)
user_group.gStats.numPend (integer)
user_group.gStats.numReserve (integer)
user_group.gStats.numRun (integer)
user_group.gStats.numSSusp (integer)
user_group.gStats.numStartJobs (integer)
user_group.gStats.numUSusp (integer)
user_group.group (string)
user_group.queue (string)
user_group.uStats.jobPend (integer)
user_group.uStats.jobRun (integer)
user_group.uStats.jobSusp (integer)
user_group.uStats.numPend (integer)
user_group.uStats.numRun (integer)
user_group.uStats.numSusp (integer)
user_group.ugSpec.admin (string)
user_group.ugSpec.group (string) – (required)
user_group.ugSpec.max_gpus (integer)
user_group.ugSpec.max_jobs (integer)
user_group.ugSpec.max_slots (integer)
user_group.ugSpec.members[] (string)
user_group.ugSpec.user_job_limit (integer)
user_group.ugSpec.user_shares (string)
user_group.user (string)
- POST /ugroup/delete/{ug_name}¶
Delete a user group
- Parameters:
ug_name (string) – ug_name
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
data (any)
msg (string)
- POST /ugroup/delmember¶
Delete members from an existing user group
- Request JSON Object:
group (string) – (required)
members[] (string)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
user_group.cluster (string)
user_group.gStats.numJobs (integer)
user_group.gStats.numPend (integer)
user_group.gStats.numReserve (integer)
user_group.gStats.numRun (integer)
user_group.gStats.numSSusp (integer)
user_group.gStats.numStartJobs (integer)
user_group.gStats.numUSusp (integer)
user_group.group (string)
user_group.queue (string)
user_group.uStats.jobPend (integer)
user_group.uStats.jobRun (integer)
user_group.uStats.jobSusp (integer)
user_group.uStats.numPend (integer)
user_group.uStats.numRun (integer)
user_group.uStats.numSusp (integer)
user_group.ugSpec.admin (string)
user_group.ugSpec.group (string) – (required)
user_group.ugSpec.max_gpus (integer)
user_group.ugSpec.max_jobs (integer)
user_group.ugSpec.max_slots (integer)
user_group.ugSpec.members[] (string)
user_group.ugSpec.user_job_limit (integer)
user_group.ugSpec.user_shares (string)
user_group.user (string)
- POST /ugroup/grouplimit¶
Update group limit into an existing user group
- Request JSON Object:
group (string) – (required)
group_limit (integer) – (required)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
user_group.cluster (string)
user_group.gStats.numJobs (integer)
user_group.gStats.numPend (integer)
user_group.gStats.numReserve (integer)
user_group.gStats.numRun (integer)
user_group.gStats.numSSusp (integer)
user_group.gStats.numStartJobs (integer)
user_group.gStats.numUSusp (integer)
user_group.group (string)
user_group.queue (string)
user_group.uStats.jobPend (integer)
user_group.uStats.jobRun (integer)
user_group.uStats.jobSusp (integer)
user_group.uStats.numPend (integer)
user_group.uStats.numRun (integer)
user_group.uStats.numSusp (integer)
user_group.ugSpec.admin (string)
user_group.ugSpec.group (string) – (required)
user_group.ugSpec.max_gpus (integer)
user_group.ugSpec.max_jobs (integer)
user_group.ugSpec.max_slots (integer)
user_group.ugSpec.members[] (string)
user_group.ugSpec.user_job_limit (integer)
user_group.ugSpec.user_shares (string)
user_group.user (string)
- POST /ugroup/userlimit¶
Update user limit into an existing user group
- Request JSON Object:
group (string) – (required)
user_limit (integer) – (required)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
403 Forbidden – Permission denied
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
user_group.cluster (string)
user_group.gStats.numJobs (integer)
user_group.gStats.numPend (integer)
user_group.gStats.numReserve (integer)
user_group.gStats.numRun (integer)
user_group.gStats.numSSusp (integer)
user_group.gStats.numStartJobs (integer)
user_group.gStats.numUSusp (integer)
user_group.group (string)
user_group.queue (string)
user_group.uStats.jobPend (integer)
user_group.uStats.jobRun (integer)
user_group.uStats.jobSusp (integer)
user_group.uStats.numPend (integer)
user_group.uStats.numRun (integer)
user_group.uStats.numSusp (integer)
user_group.ugSpec.admin (string)
user_group.ugSpec.group (string) – (required)
user_group.ugSpec.max_gpus (integer)
user_group.ugSpec.max_jobs (integer)
user_group.ugSpec.max_slots (integer)
user_group.ugSpec.members[] (string)
user_group.ugSpec.user_job_limit (integer)
user_group.ugSpec.user_shares (string)
user_group.user (string)
- GET /ugroup/{ug_name}¶
Get user group info
- Parameters:
ug_name (string) – ug_name
- Status Codes:
200 OK – Success
401 Unauthorized – Unauthorized user
404 Not Found – User group not found
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
user_group.cluster (string)
user_group.gStats.numJobs (integer)
user_group.gStats.numPend (integer)
user_group.gStats.numReserve (integer)
user_group.gStats.numRun (integer)
user_group.gStats.numSSusp (integer)
user_group.gStats.numStartJobs (integer)
user_group.gStats.numUSusp (integer)
user_group.group (string)
user_group.queue (string)
user_group.uStats.jobPend (integer)
user_group.uStats.jobRun (integer)
user_group.uStats.jobSusp (integer)
user_group.uStats.numPend (integer)
user_group.uStats.numRun (integer)
user_group.uStats.numSusp (integer)
user_group.ugSpec.admin (string)
user_group.ugSpec.group (string) – (required)
user_group.ugSpec.max_gpus (integer)
user_group.ugSpec.max_jobs (integer)
user_group.ugSpec.max_slots (integer)
user_group.ugSpec.members[] (string)
user_group.ugSpec.user_job_limit (integer)
user_group.ugSpec.user_shares (string)
user_group.user (string)
- GET /ugroups¶
Get user group list
- Status Codes:
200 OK – Success
401 Unauthorized – Unauthorized user
500 Internal Server Error – Internal server error
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
total (integer)
user_groups[].cluster (string)
user_groups[].gStats.numJobs (integer)
user_groups[].gStats.numPend (integer)
user_groups[].gStats.numReserve (integer)
user_groups[].gStats.numRun (integer)
user_groups[].gStats.numSSusp (integer)
user_groups[].gStats.numStartJobs (integer)
user_groups[].gStats.numUSusp (integer)
user_groups[].group (string)
user_groups[].queue (string)
user_groups[].uStats.jobPend (integer)
user_groups[].uStats.jobRun (integer)
user_groups[].uStats.jobSusp (integer)
user_groups[].uStats.numPend (integer)
user_groups[].uStats.numRun (integer)
user_groups[].uStats.numSusp (integer)
user_groups[].ugSpec.admin (string)
user_groups[].ugSpec.group (string) – (required)
user_groups[].ugSpec.max_gpus (integer)
user_groups[].ugSpec.max_jobs (integer)
user_groups[].ugSpec.max_slots (integer)
user_groups[].ugSpec.members[] (string)
user_groups[].ugSpec.user_job_limit (integer)
user_groups[].ugSpec.user_shares (string)
user_groups[].user (string)
- POST /user/create¶
Create new user
- Request JSON Object:
home_dir (string) – User home directory
login_shell (string) – Command-line shell
password (string) – (required)
username (string) – (required)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
user.dn (string)
user.home_dir (string)
user.login_shell (string)
user.logon_name (string)
user.member_of[] (string)
user.name (string)
- POST /user/delete/{user_name}¶
Delete a user
- Parameters:
user_name (string) – user_name
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
data (any)
msg (string)
- POST /user/modify¶
Modify an existing user
- Request JSON Object:
home_dir (string) – (required)
username (string) – (required)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
user.dn (string)
user.home_dir (string)
user.login_shell (string)
user.logon_name (string)
user.member_of[] (string)
user.name (string)
- GET /user/{user_name}¶
Get user info
- Parameters:
user_name (string) – user_name
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
404 Not Found – User not found
500 Internal Server Error – Internal server error
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
user.dn (string)
user.home_dir (string)
user.login_shell (string)
user.logon_name (string)
user.member_of[] (string)
user.name (string)
- GET /users¶
Get user list
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
500 Internal Server Error – Internal server error
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
user.dn (string)
user.home_dir (string)
user.login_shell (string)
user.logon_name (string)
user.member_of[] (string)
user.name (string)
- POST /vis/submit¶
Submit remote visualization job.
Example submission request: {“type”: “vnc”, “command”: “desktop”} {“type”: “vnc”, “command”: “desktop”, “jobProperties”: {“minNumSlots”: 2, “project”: “MyFirstProject”}} {“type”: “dcv”, “command”: “/bin/firefox”, “jobProperties”: {“errFile”: “%J.err”, “outFile”: “%J.out”}} {“type”: “rdp_web”, “command”: “\”C:\\Windows\\System32\\notepad.exe\””, “jobProperties”: {“queue”: “winq”}} {“type”: “rdp”, “command”: “\”C:\\Program Files\\Dassault Systemes\\B27\\win_b64\\code\\bin\\catstart.exe\””, “jobProperties”: {“queue”: “winq”}, “rdpProperties”: {“runCmd”: “cnext.exe”}}
- Request JSON Object:
command (string) – desktop or application start command “desktop” means a full desktop Linux application start command example:”/bin/firefox” Windows application start command example: “C:Program FilesDassault SystemesB27win_b64codebincatstart.exe” (required)
jobProperties.app (string) – Application name
jobProperties.beginTime (string) – Dispatches the job for execution on or after the specified date and time. The format for the termination time is [[month:]day:]hour:minute where the number ranges are as follows: month 1-12, day 1-31, hour 0-23, minute 0-59
jobProperties.cwd (string) – Specifies the current working directory for job execution
jobProperties.deadline (string) – Specifies the job termination deadline. The format for the termination time is [[month:]day:]hour:minute where the number ranges are as follows: month 1-12, day 1-31, hour 0-23, minute 0-59
jobProperties.envs[] (string)
jobProperties.errFile (string) – Appends the standard error output of the job to the specified file
jobProperties.hosts[] (string)
jobProperties.inFile (string) – Gets the standard input for the job from specified file
jobProperties.jobName (string) – Job name
jobProperties.maxNumSlots (integer) – Maximum number of required job slots
jobProperties.maxRunTime (string) – Sets the run time limit of the job. The format is [hours:]minutes. The minutes can be specified as a number greater than 59. For example, three and a half hours can either be specified as 3:30, or 210.
jobProperties.minNumSlots (integer) – Minimum number of required job slots
jobProperties.otherParams (string) – Other parameters of vncsub
jobProperties.outFile (string) – Appends the standard output of the job to the specified file
jobProperties.priority (integer) – User-assigned job priority which allow users to order their jobs in a queue
jobProperties.project (string) – Project name
jobProperties.queue (string) – Submit job to the queue
jobProperties.resReq (string) – Run the job on a host that meets the specified resource requirements
rdpProperties.runCmd (string) – Only for type:rdp. In case of application start command is different from final running process. For example, application catia start command is “catstart.exe”, but final running process is “cnext.exe”. Then set “Command”:”catstart.exe”, “RunCmd”:”cnext.exe”
rdpWebProperties.geometry (string) – widthXheight
type (string) – vnc: Linux only. Remote access via web. dcv: Linux and Windows. Remote access via web. rdp: Windows only. Remote access via RDP client. skyformaspagent is required on client host. rdp_web: Windows only. Remote access via web. (required)
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
vis.jobId (integer)
- GET /vis/url/{job_id}¶
Get remote visualization access URL
- Parameters:
job_id (string) – job_id
- Status Codes:
200 OK – Success
400 Bad Request – Bad request
401 Unauthorized – Unauthorized user
404 Not Found – Job not found
500 Internal Server Error – Internal server error
503 Service Unavailable – Service unavailable
- Request Headers:
Authorization – Token with Bearer started
- Response JSON Object:
visurl.postMsg (string)
visurl.reason (string)
visurl.url (string)