This YANG module provides a data-model for the Clixon RESTCONF daemon. There is also clixon-config also including some restconf options. The separation is not always logical but there are some reasons for the split:
Some of this spec if in-lined from ietf-restconf-server@2022-05-24.yang
Example URL
This presence is strictly not necessary since the enable flag in clixon-restconf is the flag bearing the actual semantics. However, removing the presence leads to default config in all clixon installations, even those which do not use backend-started restconf. One could see this as mostly cosmetically annoying. Alternative would be to make the inclusion of this yang conditional.
clixon.restconf.Restconf
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf" req, _ := http.NewRequest("GET", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
This presence is strictly not necessary since the enable flag in clixon-restconf is the flag bearing the actual semantics. However, removing the presence leads to default config in all clixon installations, even those which do not use backend-started restconf. One could see this as mostly cosmetically annoying. Alternative would be to make the inclusion of this yang conditional.
clixon.restconf.Restconf to be added to list
clixon-restconf:restconf | object (clixon.restconf.Restconf) |
Object created
Internal error
Object already exists
Example URL
This presence is strictly not necessary since the enable flag in clixon-restconf is the flag bearing the actual semantics. However, removing the presence leads to default config in all clixon installations, even those which do not use backend-started restconf. One could see this as mostly cosmetically annoying. Alternative would be to make the inclusion of this yang conditional.
clixon.restconf.Restconf to be added or updated
clixon-restconf:restconf-wrapper | object (clixon.restconf.RestconfWrapper) |
Object created
Object modified
Internal error
Example URL
This presence is strictly not necessary since the enable flag in clixon-restconf is the flag bearing the actual semantics. However, removing the presence leads to default config in all clixon installations, even those which do not use backend-started restconf. One could see this as mostly cosmetically annoying. Alternative would be to make the inclusion of this yang conditional.
Object deleted
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf" req, _ := http.NewRequest("DELETE", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
List of server sockets that the restconf daemon listens to. Not fcgi
clixon.restconf.clixonrestconf.Socket to be added to list
socket | object (clixon.restconf.clixonrestconf.Socket) |
Object created
Internal error
Object already exists
Example URL
List of server sockets that the restconf daemon listens to. Not fcgi
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.Socket
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D" req, _ := http.NewRequest("GET", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
List of server sockets that the restconf daemon listens to. Not fcgi
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.Socket to be added or updated
clixon-restconf:socket-wrapper | object (clixon.restconf.clixonrestconf.SocketWrapper) |
Object created
Object modified
Internal error
Example URL
List of server sockets that the restconf daemon listens to. Not fcgi
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
Object deleted
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D" req, _ := http.NewRequest("DELETE", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
See RFC 8071 NETCONF Call Home and RESTCONF Call Home
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.CallHome
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D/call-home" req, _ := http.NewRequest("GET", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
See RFC 8071 NETCONF Call Home and RESTCONF Call Home
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.CallHome to be added to list
call-home | object (clixon.restconf.clixonrestconf.socket.CallHome) |
Object created
Internal error
Object already exists
Example URL
See RFC 8071 NETCONF Call Home and RESTCONF Call Home
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.CallHome to be added or updated
clixon-restconf:call-home-wrapper | object (clixon.restconf.clixonrestconf.socket.CallHomeWrapper) |
Object created
Object modified
Internal error
Example URL
See RFC 8071 NETCONF Call Home and RESTCONF Call Home
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
Object deleted
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D/call-home" req, _ := http.NewRequest("DELETE", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
Indicates the RESTCONF server's preference for how the RESTCONF connection is maintained.
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.ConnectionType
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D/call-home/connection-type" req, _ := http.NewRequest("GET", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
Indicates the RESTCONF server's preference for how the RESTCONF connection is maintained.
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.ConnectionType to be added to list
connection-type | object (clixon.restconf.clixonrestconf.socket.callhome.ConnectionType) |
Object created
Internal error
Object already exists
Example URL
Indicates the RESTCONF server's preference for how the RESTCONF connection is maintained.
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.ConnectionType to be added or updated
clixon-restconf:connection-type-wrapper | object (clixon.restconf.clixonrestconf.socket.callhome.ConnectionTypeWrapper) |
Object created
Object modified
Internal error
Example URL
Indicates the RESTCONF server's preference for how the RESTCONF connection is maintained.
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
Object deleted
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D/call-home/connection-type" req, _ := http.NewRequest("DELETE", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
returns clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.periodicconnection.Periodic
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.periodicconnection.Periodic
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D/call-home/connection-type/periodic" req, _ := http.NewRequest("GET", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
creates clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.periodicconnection.Periodic
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.periodicconnection.Periodic to be added to list
periodic | object (clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.periodicconnection.Periodic) |
Object created
Internal error
Object already exists
Example URL
creates or updates clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.periodicconnection.Periodic
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.periodicconnection.Periodic to be added or updated
clixon-restconf:periodic-wrapper | object (clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.periodicconnection.PeriodicWrapper) |
Object created
Object modified
Internal error
Example URL
removes clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.periodicconnection.Periodic
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
Object deleted
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D/call-home/connection-type/periodic" req, _ := http.NewRequest("DELETE", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
returns clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.persistentconnection.Persistent
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.persistentconnection.Persistent
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D/call-home/connection-type/persistent" req, _ := http.NewRequest("GET", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
creates clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.persistentconnection.Persistent
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.persistentconnection.Persistent to be added to list
persistent | object (clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.persistentconnection.Persistent) |
Object created
Internal error
Object already exists
Example URL
creates or updates clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.persistentconnection.Persistent
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.persistentconnection.Persistent to be added or updated
clixon-restconf:persistent-wrapper | object (clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.persistentconnection.PersistentWrapper) |
Object created
Object modified
Internal error
Example URL
removes clixon.restconf.clixonrestconf.socket.callhome.connectiontype.connectiontype.persistentconnection.Persistent
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
Object deleted
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D/call-home/connection-type/persistent" req, _ := http.NewRequest("DELETE", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
returns clixon.restconf.clixonrestconf.socket.callhome.ReconnectStrategy
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.ReconnectStrategy
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D/call-home/reconnect-strategy" req, _ := http.NewRequest("GET", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }
Example URL
creates clixon.restconf.clixonrestconf.socket.callhome.ReconnectStrategy
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.ReconnectStrategy to be added to list
reconnect-strategy | object (clixon.restconf.clixonrestconf.socket.callhome.ReconnectStrategy) |
Object created
Internal error
Object already exists
Example URL
creates or updates clixon.restconf.clixonrestconf.socket.callhome.ReconnectStrategy
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
clixon.restconf.clixonrestconf.socket.callhome.ReconnectStrategy to be added or updated
clixon-restconf:reconnect-strategy-wrapper | object (clixon.restconf.clixonrestconf.socket.callhome.ReconnectStrategyWrapper) |
Object created
Object modified
Internal error
Example URL
removes clixon.restconf.clixonrestconf.socket.callhome.ReconnectStrategy
namespace required | string Id of socket |
address required | string Id of socket |
port required | integer <int32> Id of socket |
Object deleted
Internal error
package main import ( "fmt" "net/http" "io/ioutil" ) func main() { url := "http://hostname/restconf/data/clixon-restconf:restconf/socket=%7Bnamespace%7D,%7Baddress%7D,%7Bport%7D/call-home/reconnect-strategy" req, _ := http.NewRequest("DELETE", url, nil) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) }