Status: 2020-06-27: under construction
The OpenDaylight project has implemented the RestConf interface according RCF8040. The previous in OpenDaylight implemented RestConf(-like) interface is supported too and both interfaces can be installed in parallel within the Apache Karaf container. Please see the documentation of NetConf project of OpenDaylight.
TODOs
http://10.20.5.5:8181/restconf/operations/data-provider:create-network-element-connection
http://10.20.5.5:8181/restconf/operations/data-provider:read-network-element-connection-list
http://10.20.5.5:8181/restconf/config/network-topology:network-topology/topology/topology-netconf/node/robot-ORAN-sim-lifecycle
This wiki shows difference between both interfaces based on examples.
The syntax is as defined by the vsCode/rest-client.
Info regarding RFC8040 and RFC8527
- RFC8040 defines RESTCONF
- The latest open-source implementation of RFC8040 is today in OpenDaylight Aluminium. However OpenDaylight Sodium and OpenDaylight Magnesium are good enough for our purposes.
- RFC8527 extends RFC8040 to support new datastores as defined in RFC8525, but RFC8527 does not make RFC8040 obsolete.
Description
Biermann
RestConf (RFC8040)
Get OpenDaylights YANG capabilities.
GET {{baseUrl}}/restconf/modules
Authorization: Basic {{user}} {{password}}
Accept: application/json
Content-Type: application/json
(currently not found... 404 )
Get NetConf Topology from configuration datastore
GET {{baseUrl}}/restconf/config/network-topology:network-topology/topology-netconf
Authorization: Basic {{user}} {{password}}
Accept: application/json
Content-Type: application/json
GET {{baseUrl}}/rests/data/network-topology:network-topology/topology=topology-netconf?content=config
Authorization: Basic {{user}} {{password}}
Accept: application/json
Content-Type: application/json
Get NetConf Topology from operational datastore
GET {{baseUrl}}/restconf/operational/network-topology:network-topology/topology/topology-netconf
Authorization: Basic {{user}} {{password}}Accept: application/json
Content-Type: application/json
GET {{baseUrl}}/rests/data/network-topology:network-topology/topology=topology-netconf?content=nonconfig
Authorization: Basic {{user}} {{password}}
Accept: application/json
Content-Type: application/json
Get NetConf Topology from both datastores at the same time
n/a
GET {{baseUrl}}/rests/data/network-topology:network-topology/topology=topology-netconf
Authorization: Basic {{user}} {{password}}
Accept: application/json
Content-Type: application/json
Get only the node-ids from both datastores
n/a
GET {{baseUrl}}/rests/data/network-topology:network-topology/topology=topology-netconf?fields=node(node-id)
Authorization: Basic {{user}} {{password}}
Accept: application/json
Content-Type: application/json
Get only the node-ids from operational datastores
n/a
GET {{baseUrl}}/rests/data/network-topology:network-topology/topology=topology-netconf?content=nonconfig&fields=node(node-id)
Authorization: Basic {{user}} {{password}}
Accept: application/json
Content-Type: application/json