REST Resources
-
/ -
/acknowledge-device-fingerprint -
/change-device-credentials -
/delete-device-discovery-rules -
/delete-devices -
/device-discovery-rules -
/device-discovery-rules /{id} -
/devices -
/devices /{device-id} /activate-modeled-device -
/devices /{device-id} /applicable-configlets -
/devices /{device-id} /apply-cli-configlet -
/devices /{device-id} /associated-softwares -
/devices /{device-id} /clone -
/devices /{device-id} /compute-configlet-parameter-values -
/devices /{device-id} /configlet -
/devices /{device-id} /configurations /expanded -
/devices /{device-id} /configurations /raw -
/devices /{device-id} /submit-cli-configlet -
/devices /{device-id} /validate-cli-configlet -
/devices /{deviceid} /customized-attribute-values -
/devices /{deviceid} /customized-attribute-values /{id} -
/devices /{id} -
/devices /{id} /associated-scripts -
/devices /{id} /change-requests -
/devices /{id} /configurations -
/devices /{id} /configurations /expanded /match-content -
/devices /{id} /configurations /raw /match-content -
/devices /{id} /connection-status -
/devices /{id} /exec-resync -
/devices /{id} /exec-rpc -
/devices /{id} /managed-elements -
/devices /{id} /managed-status -
/devices /{id} /modify-device-target-ip -
/devices /{id} /view-customized-attributes -
/discover-devices -
/discoveryresult /{id} -
/get-device-statistics -
/get-syslog-events -
/job-instances /{job-id} /acknowledge-fingerprint-job-results -
/job-instances /{job-id} /delete-devices-job-results -
/job-instances /{job-id} /discovery-job-results -
/job-instances /{job-id} /exec-rpc-job-results -
/job-instances /{job-id} /reboot-devices-job-results -
/job-instances /{job-id} /resync-devices-job-results -
/job-instances /{job-id} /rsa-key-transfer-job-results -
/reactivate-devices-from-rma -
/reboot-devices -
/resolve-key-conflict -
/resync-devices -
/stop-syslog-events -
/stop-syslog-events /{id} -
/upload-keys
/api/space/device-management/devices/{device-id}/configurations/expanded
The following operations are supported on this resource:
GET /devices/{device-id}/configurations/expanded | Version 5 |
This API is used to access configuration data with configuration groups expanded and results will be displayed in xml format
sample configuration:
<configuration xmlns="http://xml.juniper.net/xnm/1.1/xnm" xmlns:junos="http://xml.juniper.net/junos/12.3R3/junos" junos:commit-localtime="2013-06-17 04:32:17 UTC" junos:commit-seconds="1371443537" junos:commit-user="root"> <version>12.3R3.4</version> <system> <root-authentication> <encrypted-password>$1$nTfQePCG$paMKOkFTfjGLjK9K7DGkJ0</encrypted-password> </root-authentication> <scripts> <op> <file> <name>MyscriptlogicalinterfaceScript.slax</name> </file> </op> </scripts> <login> <user> <name>String</name> <uid>2077</uid> <class>super-user</class> <authentication> <encrypted-password>$1$dbopsnyN$PVDcL2aAuh2uaP.j.q7U0.</encrypted-password> </authentication> </user> </login> </system> <interfaces> <interface> <name>ge-0/0/0</name> <unit> <name>0</name> <family> <ethernet-switching> </ethernet-switching> </family> </unit> </interface> ... ... </configuration>.
Sample Usage
GET /devices/{device-id}/configurations/expanded
-
Parameters:
Name Type URI Type Description Required device-id Integer Path Device ID Y
-
Accept Headers:
application/vnd.net.juniper.space.device-management.expanded-xml-configuration+xml;version=5
application/vnd.net.juniper.space.device-management.expanded-xml-configuration+json;version=5
<expanded-xml-configuration uri="/api/space/device-management/devices/2228251/configurations/raw">
<id>2228251</id>
<configuration>
<![CDATA[
<configuration
xmlns="http://xml.juniper.net/xnm/1.1/xnm" junos:commit-seconds="1263864466" junos:commit-localtime="2010-01-19 01:27:46 UTC" junos:commit-user="root"
xmlns:junos="http://xml.juniper.net/junos/14.1X53/junos">
<version>14.1X53-D40.8</version>
<system>
<host-name>EX</host-name>
<root-authentication>
<encrypted-password>$1$kXs/XDp0$fALhYuFTOIsNgSxtHpiJO.</encrypted-password>
</root-authentication>
</system>
</configuration>
]]>
</configuration>
</expanded-xml-configuration>
{
"expanded-xml-configuration" : {
"@uri" :
"/api/space/device-management/devices/2228251/configurations/raw" ,
"id" : 2228251 ,
"configuration" : "<![CDATA[
<configuration\n xmlns=\"http://xml.juniper.net/xnm/1.1/xnm\" junos:commit-seconds=\"1263864466\"
junos:commit-localtime=\"2010-01-19 01:27:46 UTC\" junos:commit-user=\"root\"\n xmlns:junos=
\"http://xml.juniper.net/junos/14.1X53/junos\">\n <version>14.1X53-D40.8</version>\n
<system>\n <host-name>EX</host-name>\n <root-authentication>\n <encrypted
-password>$1$kXs/XDp0$fALhYuFTOIsNgSxtHpiJO.</encrypted-password>\n </root-authentication>\n
</system>\n</configuration>
]]>"
}
}
Access Control
The following capabilities are required to access this API: DeviceConfiguration
GET /devices/{device-id}/configurations/expanded | Version 5 |
This API is used to access configuration data with configuration groups expanded and results will be displayed in CLI format
Sample configuration :
version 12.3R3.4; system { root-authentication { encrypted-password $1$nTfQePCG$paMKOkFTfjGLjK9K7DGkJ0; } scripts { op { file MyscriptPhysicalinterfaceScript.slax ; } } login { user String { uid 2077; class super-user; authentication { encrypted-password $1$dbopsnyN$PVDcL2aAuh2uaP.j.q7U0.; } } } services { ssh { protocol-version v2; max-sessions-per-connection 32; } netconf { ssh ; } outbound-ssh { client 192.168.27.171 { device-id C233F9; secret $9$cklrKWNdsJGiLxGik.zFcyl; services netconf; 192.168.27.171 { port 7804; } } } web-management { http ; } } syslog { user * { any { emergency ; } } file messages { any { notice ; } authorization { info ; } } file interactive-commands { interactive-commands { any ; } } } } interfaces { ge-0/0/0 { unit 0 { family ethernet-switching ; } } ge-0/0/1 { description mydescription; mtu 554; unit 0 { family ethernet-switching ; } } } protocols { igmp-snooping { vlan all ; } rstp ; lldp { interface all ; } lldp-med { interface all ; } } poe { interface all ; }.
Sample Usage
GET /devices/{device-id}/configurations/expanded
-
Parameters:
Name Type URI Type Description Required device-id Integer Path Device ID Y
-
Accept Headers:
application/vnd.net.juniper.space.device-management.expanded-cli-configuration+xml;version=5
application/vnd.net.juniper.space.device-management.expanded-cli-configuration+json;version=5
<expanded-cli-configuration uri="/api/space/device-management/devices/2228251/configurations/raw">
<id>2228251</id>
<configuration><![CDATA[
version 14.1X53-D40.8;
system {
host-name EX;
root-authentication {
encrypted-password $1$kXs/XDp0$fALhYuFTOIsNgSxtHpiJO.;
}
}
]]>
</configuration>
</expanded-cli-configuration>
{
"expanded-cli-configuration" : {
"@uri" :
"/api/space/device-management/devices/2228251/configurations/expanded" ,
"id" : 2228251 ,
"configuration" :
"version 14.1X53-D40.8;\n system {\n host-name EX;\n
root-authentication {\n encrypted-password $1$kXs/XDp0$f
ALhYuFTOIsNgSxtHpiJO.;\n * }\n }"
}
}
Access Control
The following capabilities are required to access this API: DeviceConfiguration
GET /devices/{device-id}/configurations/expanded | Version 3 |
This API is used to access configuration data with configuration groups expanded (using the inherit="inherit" option on the Junos OS "get-configuration" RPC).
Fields Selection
A particular section of a configuration can be fetched using the 'fields' criteria. For example:
fields=(version,system:(login:(user)))
These fields should be nested properly to get the required configuration content. For example, a 'fields' selection passed as fields=(version) will fetch only version information. (See the sample output below.)
.Sample Usage
GET /devices/{device-id}/configurations/expanded
-
Parameters:
Name Type URI Type Description Required device-id Integer Path The ID of the device whose configuration data will be accessed. Y
-
Accept Headers:
application/vnd.net.juniper.space.device-management.expanded-configuration+xml;version=3
application/vnd.net.juniper.space.device-management.expanded-configuration+json;version=3
<expanded-configuration>
<configuration>String</configuration>
<method href=
"/api/space/device-management/devices/229377/configurations/raw/match-content"
rel="match device configuration"/>
</expanded-configuration>
{
"expanded-configuration":{
"configuration":"String",
"method":{
"@href": "/api/space/device-management/devices/229377/configurations/expanded/match-content",
"@rel":"match device configuration"
}
}
}
Access Control
The following capabilities are required to access this API: DeviceConfiguration
POST /devices/{device-id}/configurations/expanded | Version 5 |
This API is used to filter expanded configuration content of a device using an XPath expression. Configuration groups are expanded and results will be displayed in xml format
sample xpath : "/configuration"
sample configuration:
<configuration xmlns="http://xml.juniper.net/xnm/1.1/xnm" xmlns:junos="http://xml.juniper.net/junos/12.3R3/junos" junos:commit-localtime="2013-06-17 04:32:17 UTC" junos:commit-seconds="1371443537" junos:commit-user="root"> <version>12.3R3.4</version> <system> <root-authentication> <encrypted-password>$1$nTfQePCG$paMKOkFTfjGLjK9K7DGkJ0</encrypted-password> </root-authentication> <scripts> <op> <file> <name>MyscriptlogicalinterfaceScript.slax</name> </file> </op> </scripts> <login> <user> <name>String</name> <uid>2077</uid> <class>super-user</class> <authentication> <encrypted-password>$1$dbopsnyN$PVDcL2aAuh2uaP.j.q7U0.</encrypted-password> </authentication> </user> </login> </system> <interfaces> <interface> <name>ge-0/0/0</name> <unit> <name>0</name> <family> <ethernet-switching> </ethernet-switching> </family> </unit> </interface> ... ... </configuration>.
Sample Usage
POST /devices/{device-id}/configurations/expanded
-
Parameters:
Name Type URI Type Description Required device-id Integer Path Device ID Y
-
Content-Type Headers:
application/vnd.net.juniper.space.device-management.expanded-xml-configuration-request+xml;version=5;charset=UTF-8
application/vnd.net.juniper.space.device-management.expanded-xml-configuration-request+json;version=5;charset=UTF-8 -
Accept Headers:
application/vnd.net.juniper.space.device-management.expanded-xml-configuration+xml;version=5
application/vnd.net.juniper.space.device-management.expanded-xml-configuration+json;version=5
<expanded-xml-configuration-request>
<xpath-list>
<xpath>/configuration/interfaces/interface[name='me0']</xpath>
</xpath-list>
</expanded-xml-configuration-request>
<expanded-xml-configuration uri="/api/space/device-management/devices/2228241/configurations/raw">
<id>2228241</id>
<configuration><![CDATA[
<interface>
<name>me0</name>
<unit>
<name>me0-unit-0</name>
<family>
<inet>
<address>
<name>192.168.27.72/23</name>
</address>
</inet>
</family>
</unit>
</interface>
]]>
</configuration>
</expanded-xml-configuration>
{
"expanded-xml-configuration-request" : {
"xpath-list" : {
"xpath" : "/configuration/interfaces/interface[name='me0']"
}
}
}
{
"expanded-xml-configuration" : {
"@uri" : "/api/space/device-management/devices/2228241/configurations/raw" ,
"id" : "2228241" ,
"configuration" : "<![CDATA[
<interface>\n <name>me0</name>\n
<unit>\n <name>0</name>\n
<family>\n <inet>\n
<address>\n
<name>192.168.27.72/23</name>\n
</address>\n </inet>\n
</family>\n </unit>\n
</interface>
]]>"
}
}
Access Control
The following capabilities are required to access this API: DeviceConfiguration
POST /devices/{device-id}/configurations/expanded | Version 5 |
This API is used to filter expanded configuration content of a device using an XPath expression. Configuration groups are expanded. Results will be displayed in CLI format
Sample xpath : /configuration
Sample configuration :
version 12.3R3.4; system { root-authentication { encrypted-password $1$nTfQePCG$paMKOkFTfjGLjK9K7DGkJ0; } scripts { op { file MyscriptPhysicalinterfaceScript.slax ; } } login { user String { uid 2077; class super-user; authentication { encrypted-password $1$dbopsnyN$PVDcL2aAuh2uaP.j.q7U0.; } } } services { ssh { protocol-version v2; max-sessions-per-connection 32; } netconf { ssh ; } outbound-ssh { client 192.168.27.171 { device-id C233F9; secret $9$cklrKWNdsJGiLxGik.zFcyl; services netconf; 192.168.27.171 { port 7804; } } } web-management { http ; } } syslog { user * { any { emergency ; } } file messages { any { notice ; } authorization { info ; } } file interactive-commands { interactive-commands { any ; } } } } interfaces { ge-0/0/0 { unit 0 { family ethernet-switching ; } } ge-0/0/1 { description mydescription; mtu 554; unit 0 { family ethernet-switching ; } } } protocols { igmp-snooping { vlan all ; } rstp ; lldp { interface all ; } lldp-med { interface all ; } } poe { interface all ; }.
Sample Usage
POST /devices/{device-id}/configurations/expanded
-
Parameters:
Name Type URI Type Description Required device-id Integer Path Device ID Y
-
Content-Type Headers:
application/vnd.net.juniper.space.device-management.expanded-cli-configuration-request+xml;version=5;charset=UTF-8
application/vnd.net.juniper.space.device-management.expanded-cli-configuration-request+json;version=5;charset=UTF-8 -
Accept Headers:
application/vnd.net.juniper.space.device-management.expanded-cli-configuration+xml;version=5
application/vnd.net.juniper.space.device-management.expanded-cli-configuration+json;version=5
<expanded-cli-configuration-request>
<xpath-list>
<xpath>/configuration/interfaces/interface[name='me0']</xpath>
</xpath-list>
</expanded-cli-configuration-request>
<expanded-cli-configuration uri="/api/space/device-management/devices/2228241/configurations/raw">
<id>2228241</id>
<configuration>
<![CDATA[
interfaces {
me0 {
unit {
name 0;
family {
inet {
address {
name 192.168.27.72/23;
}
}
}
}
}
}
]]>
</configuration>
</expanded-cli-configuration>
{
"expanded-cli-configuration-request" : {
"xpath-list" : {
"xpath" : "/configuration/interfaces/interface[name='me0']"
}
}
}
{
"expanded-cli-configuration" : {
"@uri" :
"/api/space/device-management/devices/2228241/configurations/raw" ,
"id" : "2228241" ,
"configuration" :
"\ninterfaces {\n me0 {\n unit {\n
name 0;\n family {\n
inet {\n address {\n name 192.168.27.72/23;\n
}\n }\n
}\n }\n }\n}\n"
}
}
Access Control
The following capabilities are required to access this API: DeviceConfiguration
POST /devices/{device-id}/configurations/expanded | Version 1 |
This API is used to filter expanded configuration content of a device using an XPath expression. Configuration groups are expanded (using the inherit="inherit" option on the Junos "get-configuration" RPC). Also, an XPath filter expression is passed in the HTPP body to filter the XML datafurther.
Fields Selection
A particular section of the configuration can be fetched using the 'fields' criteria. For example:
fields=(version,system:(login:(user)))
These fields should be nested properly to get the required configuration content. For example, the 'fields' selection passed as fields=(version) will fetch only version information. (See the sample output below.)
An additional XPath filter expression can be supplied in the HTTP body.
Sample Usage
POST /devices/{device-id}/configurations/expanded
-
Parameters:
Name Type URI Type Description Required device-id Integer Path The ID of the device whose expanded configuration content will be filtered. Y
-
Content-Type Headers:
application/vnd.net.juniper.space.device-management.xpath+xml;version=1;charset=UTF-8
application/vnd.net.juniper.space.device-management.xpath+json;version=1;charset=UTF-8 -
Accept Headers:
application/vnd.net.juniper.space.device-management.expanded-configuration+xml;version=1
application/vnd.net.juniper.space.device-management.expanded-configuration+json;version=1
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<xpaths>
<xpath>/configuration/version</xpath>
<xpath>/configuration/interfaces/interface[name=
'ge-0/0/0']</xpath>
</xpaths>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<expanded-configuration>
<configuration><configuration><version>10.0R2.10
</version></configuration>
<method href=
"/api/space/device-management/devices/229377/configurations/raw/match-content"
rel="match device configuration"/>
</expanded-configuration>
{
"xpaths":{
"xpath":[
"/configuration/version",
"/configuration/interfaces/interface[name=\"ge-0/0/0\"]"
]
}
}
{
"expanded-configuration":
{
"configuration": "10.0R2.10 ",
"method":
{
"@href":"/api/space/device-management/devices/229377/configurations/expanded/match-content",
"@rel":"match device configuration"
}
Access Control
The following capabilities are required to access this API: DeviceConfiguration