Difference between revisions of "Web service API"
Jump to navigation
Jump to search
Line 46: | Line 46: | ||
== Get Specific Object == | == Get Specific Object == | ||
'''GET''' /objects/''id'' | '''GET''' /objects/''id'' | ||
== CURL Test == | |||
<pre> | |||
$ curl -X POST --data '{"login":"user","password":"pass"}' "http://localhost:8080/netxms-websvc/sessions" | |||
{ | |||
"sessionHandle": "8338e7f3-ba99-46c5-9fd6-84b38cc5d715", | |||
"session": { | |||
"server": { | |||
"address": "127.0.0.1", | |||
"version": "2.2.8", | |||
"color": "", | |||
"id": 3283229296059149299, | |||
"timeZone": "CET+02CEST" | |||
}, | |||
"user": { | |||
"name": "user", | |||
"id": 8, | |||
"globalAccessRights": 825439032336 | |||
}, | |||
"encrypted": false, | |||
"objectsSynchronized": false, | |||
"passwordExpired": false, | |||
"zoningEnabled": false | |||
} | |||
} | |||
$ curl -X GET --cookie "session_handle=8338e7f3-ba99-46c5-9fd6-84b38cc5d715" "http://localhost:8080/netxms-websvc/objects?class=container,node" | |||
.. prints some data .. | |||
</pre> |
Revision as of 14:10, 17 September 2018
Web service API provides access to NetXMS via HTTP/HTTPS. API calls are REST-like (although not purely RESTful) and uses JSON for data exchange.
Session Management
Login
POST /sessions
Create new session. Input object fields:
login password
On success server will set cookie session_handle which should be passed on each subsequent request.
Logout
DELETE /session/sid
Logout (delete session) with given session ID.
Object Management
Get Objects
GET /objects GET /objects?filter
Get all objects visible to logged in user. Optional filter can define additional criteria for object selection:
area=geographical_area
class=class_list
name=pattern
Examples
Get all objects with name starting with "T":
GET /objects?name=T*
Get all nodes around Riga:
GET /objects?class=node&area=57.0592,23.1647,56.8270,24.6025
Get all nodes and containers:
GET /objects?class=container,node
Get Specific Object
GET /objects/id
CURL Test
$ curl -X POST --data '{"login":"user","password":"pass"}' "http://localhost:8080/netxms-websvc/sessions" { "sessionHandle": "8338e7f3-ba99-46c5-9fd6-84b38cc5d715", "session": { "server": { "address": "127.0.0.1", "version": "2.2.8", "color": "", "id": 3283229296059149299, "timeZone": "CET+02CEST" }, "user": { "name": "user", "id": 8, "globalAccessRights": 825439032336 }, "encrypted": false, "objectsSynchronized": false, "passwordExpired": false, "zoningEnabled": false } } $ curl -X GET --cookie "session_handle=8338e7f3-ba99-46c5-9fd6-84b38cc5d715" "http://localhost:8080/netxms-websvc/objects?class=container,node" .. prints some data ..