Description |
Allows users to manipulate tasks in NEO |
|||||||||||
Request URL |
/neo/app/tasks |
|||||||||||
Main Operations |
|
Users can create, delete, fetch and run tasks using REST API.
Create Provisioning Task Using Explicit CLI Commands
Description |
Creates a new task in NEO using explicit CLI commands |
|||||||||||
Request URL |
POST /neo/app/tasks |
|||||||||||
Response |
HTTP Response location header will contain URI with Task ID that was created |
Response:
{
"action"
:"run_cli"
,
"params"
:{
"commandline"
:[
"<cli_command>"
],
"arguments"
:{
"globals"
:{},
"devices"
:{
"<system_IP>"
:{}
}
}
},
"description"
:""
,
"object_ids"
:[
"<system_IP>"
]
target_type":<type_of_target>,
}
{
"application"
: {
"version"
: "1.9.0-15062017"
,
"name"
: "Mellanox NEO"
},
"next"
: "/neo"
,
"server"
: {
"ip"
: "10.212.220.1"
,
"name"
: "dev-r-vrt-220.mtr.labs.mlnx"
}
}
Create a New Provisioning Task Using Template Name
Description |
Creates a new task in NEO using template name |
|||||||||||
Request URL |
POST /neo/app/tasks |
|||||||||||
Response |
HTTP Response location header will contain URI with Task ID that was created |
Request Data:
{"action"
:"run_cli"
,"description"
:"Shows list of trap- receivers"
,"object_type"
:"System"
,target_type":"
system","
object_ids":["
10.224
.26.118
"], "
params":{"
commandline":["
#!desc: Shows list of trap- receivers","
#!system_profile:","
#!system_type: mlnxos_switch","
#!owner: *system*","
show snmp host"],"
arguments":{"
globals":{}}}}
Create a New Software Upgrade Task
Description |
Creates a new software upgrade task in NEO |
|||||||||||
Request URL |
POST /neo/app/tasks |
|||||||||||
Response |
HTTP Response location header will contain URI with Task ID that was created |
Request Data:
{
"action"
: "sw_upgrade"
,
"params"
: {
"description"
: ""
,
"protocol"
: "scp"
,
"server"
: "<host_name>"
,
"path"
: "<image_path>"
,
"image"
: "<selected_image>"
,
"username"
: "<username>"
,
"password"
: "<password>"
},
"object_ids"
: ["<system_IP>"
],
"description"
: ""
}
Create a New Reboot Task
Description |
Creates a new reboot task in NEO |
|||||||||||
Request URL |
POST /neo/app/tasks |
|||||||||||
Response |
HTTP Response location header will contain URI with Task ID that was created |
Request Data:
{
"action"
: "reboot"
,
"params"
: {
},
"description"
: "Switch reboot"
,
"object_ids"
: ["<system_IP>"
]
}
Create a New Apply Configuration Task
Description |
Creates a new Apply Configuration task |
|||||||||||
Request URL |
POST /neo/app/tasks |
|||||||||||
Response |
HTTP Response location header will contain URI with Task ID that was created |
Request Data:
{
"action"
:"apply_conf"
, "description"
:"Apply Config"
,
"object_ids"
:["10.209.37.30"
, "10.209.37.13"
],
"object_type"
:"System"
,
"params"
:{
"file_id"
: "conf_file_global.global_test_avi2"
,
"arguments"
:
{
"globals"
: {},
"devices"
: {
"10.209.37.30"
: {
"switch_hostname"
: "r-ufm-sw56"
},
"10.209.37.13"
: {
"switch_hostname"
: "r-ufm-sw55"
}
}
}
},
"target_type"
:"System"
,
"task_type"
:""
}
Create a New Generate Dump Task
Description |
Creates a new Generate Dump task |
|||||||||||
Request URL |
POST /neo/app/tasks |
|||||||||||
Response |
HTTP Response location header will contain URI with Task ID that was created |
Request Data:
{
"action"
:"generate_dump"
,
"params"
:{
"description"
:"decription"
,
"protocol"
:"scp"
,
"server"
:"10.224.14.231"
,
"path"
:"/path/to/send/dump"
,
"username"
: "username"
,
"password"
: "password"
},
"description"
: "description"
,
"target_type"
: "System"
,
"object_type"
:"System"
,
"object_ids"
:["10.209.36.161"
]
}
Description |
Retrieves information for all tasks in NEO |
|||||||||||
Request URL |
GET /neo/app/tasks |
|||||||||||
Request Data |
N/A |
Response:
{
"lastJobId"
: ""
,
"description"
: "Shows list of trap-receivers"
,
"schedule"
: {},
"instanceID"
: "922cbf60-f4a8-4646-82bc-c6ce405dc4ff"
,
"createdOn"
: "2016-01-04 13:40:44"
,
"object_type"
: "System"
,
"object_ids"
: [
"10.224.26.118"
],
"parent_task_id"
: null
,
"target_type"
: "System"
,
"action"
: "Provisioning"
,
"readOnly"
: false
,
"params"
: {
"commandline"
: [
"show snmp host"
],
"arguments"
: {
"globals"
: {}
}
},
"lastRunTime"
: null
,
"owner"
: "admin"
}
Description |
Retrieves information for specific tasks in NEO |
|||||||||||
Request URL |
GET /neo/app/tasks/<list_of_Task_IDs> |
|||||||||||
Request Data |
N/A |
Response:
{
"lastJobId"
: ""
,
"description"
: "Setting MTU on interfaces"
,
"schedule"
: {},
"instanceID"
: "581513fa-63ac-442f-a89b-03552fd316e2"
,
"createdOn"
: "2016-12-11 14:20:03"
,
"object_type"
: "EthernetPort"
,
"object_ids"
: [
{
"10.209.24.148"
: [
"1/2"
,
"1/5"
]
}
],
"parent_task_id"
: null
,
"target_type"
: "EthernetPort"
,
"action"
: "Provisioning"
,
"readOnly"
: false
,
"task_type"
: ""
,
"params"
: {
"commandline"
: [
"interface ethernet <interface_range> mtu <MTU_size> force"
],
"arguments"
: {
"globals"
: {
"MTU_size"
: "1500"
}
}
},
"lastRunTime"
: "2016-12-13 13:16:09"
,
"owner"
: "admin"
,
"hidden"
: false
},
The user can use Tasks IDs in Request URL to filter tasks returned.
Description |
Runs an existing task in NEO |
|||||||||||
Request URL |
POST /neo/app/tasks/<Task_ID>/run |
|||||||||||
Request Data |
N/A |
|||||||||||
Response |
HTTP response location header will contain URI with Job ID created for the running task. |
|||||||||||
Status Codes |
Note: Status code 202 ACCEPTED means that task is running and a job has been created for this task |
Description |
Removes an existing task from NEO |
|||||||||||
Request URL |
DELETE /neo/app/tasks/<Task_ID> |
|||||||||||
Request Data |
N/A |
|||||||||||
Response |
N/A |
|||||||||||
Status Codes |
Note: Status code 204 NO CONTENT mean that task was removed successfully |
Description |
Updates an existing task data |
|||||||||||
Request URL |
PUT /neo/app/tasks/<Task_ID> |
|||||||||||
Response |
HTTP response location header will contain URI with task id of the updated task. |
|||||||||||
Status Codes |
Note: Status code 403 FORBIDDEN occurs when trying to set a schedule when not applicable |
Request Data:
{
"description"
: "new description"
,
"object_ids"
: ["10.224.15.89"
],
"params"
: {
"commandline"
: [
"show voltage"
],
"arguments"
: {
"globals"
: {}
}},
"timeout"
: 1
,
"schedule"
: {
"instanceID"
: "14b2ff5a-0ad6-45ec-9e0f-11879a348386"
,
"active"
: true
,
"trigger"
: "date"
,
"date"
: "2019-1-24 19:59:06"
,
"timezone"
: "Asia/Jerusalem"
}
}
Description |
Get the output of the last job of the given task |
|||||||||||
Request URL |
GET /neo/app/tasks/<task_id>/lastSnapshot |
|||||||||||
Response |
HTTP response location header will contain URI with task id of the updated task. |
Request Data:
[
{
"device"
: "10.209.36.162"
,
"output"
: "X86_64 3.6.8100 2018-08-01 21:29:20 x86_64"
}
]