Skip to main content
Glama

ONOS MCP Server

by davidlin2k
swagger.json276 kB
{ "swagger": "2.0", "info": { "version": "1.0", "title": "ONOS Core REST API", "description": "ONOS Core REST API" }, "basePath": "/onos/v1", "produces": [ "application/json" ], "consumes": [ "application/json" ], "tags": [ { "name": "docs", "description": "REST API documentation" }, { "name": "applications", "description": "Manage inventory of applications" }, { "name": "bit-error-rate" }, { "name": "cluster", "description": "Manage cluster of ONOS instances" }, { "name": "configuration", "description": "Manage component configurations" }, { "name": "keys", "description": "Query and Manage Device Keys" }, { "name": "devices", "description": "Manage inventory of infrastructure devices" }, { "name": "diagnostics", "description": "Provides stream of diagnostic information" }, { "name": "nextobjectives", "description": "Get Flow objective next list" }, { "name": "flowobjectives", "description": "Manage flow objectives" }, { "name": "flows", "description": "Query and program flow rules" }, { "name": "groups", "description": "Query and program group rules" }, { "name": "hosts", "description": "Manage inventory of end-station hosts" }, { "name": "intents", "description": "Query, submit and withdraw network intents" }, { "name": "links", "description": "Manage inventory of infrastructure links" }, { "name": "mastership", "description": "Manage the mastership of ONOS instances" }, { "name": "meters", "description": "Query and program meter rules" }, { "name": "metrics", "description": "Query metrics" }, { "name": "modulation", "description": "Query and program flow rules" }, { "name": "mcast", "description": "Manage the multicast routing information" }, { "name": "network/configuration", "description": "Manage network configurations" }, { "name": "packet/processors", "description": "Manage inventory of packet processors" }, { "name": "paths", "description": "Compute paths in the network graph" }, { "name": "regions", "description": "Manages region and device membership" }, { "name": "statistics", "description": "Query statistics" }, { "name": "system", "description": "Provides high-level system information, version, basic sumaries, memory usage, etc" }, { "name": "topology", "description": "Query network topology graph and its components" }, { "name": "ui/preferences", "description": "Manage user preferences" } ], "paths": { "/docs/index.html": { "get": { "tags": [ "docs" ], "summary": "Get Swagger UI main index page", "description": "", "parameters": [], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/docs/apis/{key: .*?}/swagger.json": { "get": { "tags": [ "docs" ], "summary": "Get Swagger UI JSON", "description": "", "parameters": [ { "name": "key", "in": "path", "type": "string", "description": "REST API web context", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/docs/apis/{key: .*?}/model.json": { "get": { "tags": [ "docs" ], "summary": "Get REST API model schema", "description": "", "parameters": [ { "name": "name", "in": "path", "type": "string", "description": "REST API web context", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/docs/apis": { "get": { "tags": [ "docs" ], "summary": "Get all registered REST API docs", "description": "Returns array of all registered API docs.", "parameters": [], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/docs": { "get": { "tags": [ "docs" ], "summary": "Get Swagger UI main index page", "description": "", "parameters": [], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/docs/{resource: .*}": { "get": { "tags": [ "docs" ], "summary": "Get Swagger UI resource", "description": "", "parameters": [ { "name": "resource", "in": "path", "type": "string", "description": "path of the resource", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/applications/{name}": { "get": { "tags": [ "applications" ], "summary": "Get application details", "description": "Returns details of the specified application.", "parameters": [ { "name": "name", "in": "path", "type": "string", "description": "application name", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "applications" ], "summary": "Uninstall application", "description": "Uninstalls the specified application deactivating it first if necessary.", "parameters": [ { "name": "name", "in": "path", "type": "string", "description": "application name", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/applications/{name}/health": { "get": { "tags": [ "applications" ], "summary": "Get application health", "description": "", "parameters": [ { "name": "name", "in": "path", "type": "string", "description": "application name", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/applications/ids/entry": { "get": { "tags": [ "applications" ], "summary": "Gets applicationId entry by either id or name", "description": "", "parameters": [ { "name": "id", "in": "query", "type": "string", "description": "id of application", "required": true }, { "name": "name", "in": "query", "type": "string", "description": "name of application", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/applications": { "get": { "tags": [ "applications" ], "summary": "Get all installed applications", "description": "Returns array of all installed applications.", "parameters": [], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "applications" ], "summary": "Install a new application", "description": "Uploads application archive stream and optionally activates the\napplication.", "parameters": [ { "name": "activate", "in": "query", "type": "boolean", "description": "true to activate app also", "required": true }, { "name": "stream", "in": "body", "description": "application archive stream", "required": true } ], "consumes": [ "application/octet_stream" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/applications/{name}/bits": { "get": { "tags": [ "applications" ], "summary": "Get application OAR/JAR file", "description": "Returns the OAR/JAR file used to install the specified application.", "parameters": [ { "name": "name", "in": "path", "type": "string", "description": "application name", "required": true } ], "produces": [ "application/octet_stream" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/applications/{name}/register": { "post": { "tags": [ "applications" ], "summary": "Registers an on or off platform application", "description": "", "parameters": [ { "name": "name", "in": "path", "type": "string", "description": "application name", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/applications/ids": { "get": { "tags": [ "applications" ], "summary": "Gets a collection of application ids", "description": "Returns array of all registered application ids.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/applications/{name}/active": { "post": { "tags": [ "applications" ], "summary": "Activate application", "description": "Activates the specified application.", "parameters": [ { "name": "name", "in": "path", "type": "string", "description": "application name", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "applications" ], "summary": "De-activate application", "description": "De-activates the specified application.", "parameters": [ { "name": "name", "in": "path", "type": "string", "description": "application name", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/bit-error-rate/{connectPoint}/pre_fec_ber": { "get": { "tags": [ "bit-error-rate" ], "parameters": [ { "name": "connectPoint", "in": "path", "type": "string", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/bit-error-rate/{connectPoint}/post_fec_ber": { "get": { "tags": [ "bit-error-rate" ], "parameters": [ { "name": "connectPoint", "in": "path", "type": "string", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/cluster": { "get": { "tags": [ "cluster" ], "summary": "Get all cluster nodes", "description": "Returns array of all cluster nodes.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/cluster/{id}": { "get": { "tags": [ "cluster" ], "summary": "Get cluster node details", "description": "Returns details of the specified cluster node.", "parameters": [ { "name": "id", "in": "path", "type": "string", "description": "cluster node identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/configuration/{component}": { "get": { "tags": [ "configuration" ], "summary": "Gets configuration of the specified component", "description": "", "parameters": [ { "name": "component", "in": "path", "type": "string", "description": "component name", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "configuration" ], "summary": "Selectively sets configuration properties", "description": "Sets only the properties present in the JSON request.", "parameters": [ { "name": "component", "in": "path", "type": "string", "description": "component name", "required": true }, { "name": "preset", "in": "query", "type": "boolean", "description": "preset the property if true", "required": true }, { "name": "request", "in": "body", "description": "JSON configuration", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "configuration" ], "summary": "Selectively clears configuration properties", "description": "Clears only the properties present in the JSON request.", "parameters": [ { "name": "component", "in": "path", "type": "string", "description": "component name", "required": true }, { "name": "request", "in": "body", "description": "JSON configuration", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/configuration": { "get": { "tags": [ "configuration" ], "summary": "Gets all component configurations", "description": "Returns collection of all registered component configurations.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/configuration/{component}/{attribute}": { "get": { "tags": [ "configuration" ], "summary": "Gets specified value of a specified component and variable", "description": "", "parameters": [ { "name": "component", "in": "path", "type": "string", "description": "component name", "required": true }, { "name": "attribute", "in": "path", "type": "string", "description": "attribute name", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/keys": { "get": { "tags": [ "keys" ], "summary": "Gets all device keys", "description": "Returns array of all device keys.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "keys" ], "summary": "Adds a new device key from the JSON input stream", "description": "", "parameters": [ { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/Devicekey" }, "description": "device key JSON stream", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/keys/{id}": { "get": { "tags": [ "keys" ], "summary": "Gets a single device key by device key unique identifier", "description": "Returns the specified device key.", "parameters": [ { "name": "id", "in": "path", "type": "string", "description": "device key identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "keys" ], "summary": "Removes a device key by device key identifier", "description": "", "parameters": [ { "name": "id", "in": "path", "type": "string", "description": "device key identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/devices": { "get": { "tags": [ "devices" ], "summary": "Gets all infrastructure devices", "description": "Returns array of all discovered infrastructure devices.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/devices/ports": { "get": { "tags": [ "devices" ], "summary": "Gets ports of all infrastructure devices", "description": "Returns port details of all infrastructure devices.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/devices/{id}": { "get": { "tags": [ "devices" ], "summary": "Gets details of infrastructure device", "description": "Returns details of the specified infrastructure device.", "parameters": [ { "name": "id", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "devices" ], "summary": "Removes infrastructure device", "description": "Administratively deletes the specified device from the inventory of\nknown devices.", "parameters": [ { "name": "id", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/devices/{id}/ports": { "get": { "tags": [ "devices" ], "summary": "Gets ports of infrastructure device", "description": "Returns details of the specified infrastructure device.", "parameters": [ { "name": "id", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/devices/{id}/portstate/{port_id}": { "post": { "tags": [ "devices" ], "summary": "Changes the administrative state of a port", "description": "", "parameters": [ { "name": "id", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "port_id", "in": "path", "type": "string", "description": "port number", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/PortAdministrativeState" }, "description": "input JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/diagnostics": { "get": { "tags": [ "diagnostics" ], "summary": "Get tar", "description": "gz stream of node diagnostic information.", "parameters": [], "produces": [ "application/octet_stream" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/nextobjectives": { "get": { "tags": [ "nextobjectives" ], "summary": "To get all obj-next-Ids", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/nextobjectives/{deviceId}": { "get": { "tags": [ "nextobjectives" ], "summary": "Returns all group-chains associated with the given deviceId", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "deviceId mapping", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/nextobjectives/nextobjective/{nextId}": { "get": { "tags": [ "nextobjectives" ], "summary": "Returns all group-chains associated with the given nextId", "description": "", "parameters": [ { "name": "nextId", "in": "path", "type": "string", "description": "nextid mapping", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/flowobjectives/policy": { "post": { "tags": [ "flowobjectives" ], "summary": "Installs the filtering rules onto the specified device", "description": "", "parameters": [ { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/ObjectivePolicy" }, "description": "filtering rule JSON", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/flowobjectives/{deviceId}/forward": { "post": { "tags": [ "flowobjectives" ], "summary": "Creates and installs a new forwarding objective for the specified device", "description": "", "parameters": [ { "name": "appId", "in": "query", "type": "string", "description": "application identifier", "required": true }, { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/ForwardingObjective" }, "description": "forwarding objective JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/flowobjectives/next": { "get": { "tags": [ "flowobjectives" ], "summary": "Returns the globally unique nextId", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/flowobjectives/{deviceId}/filter": { "post": { "tags": [ "flowobjectives" ], "summary": "Creates and installs a new filtering objective for the specified device", "description": "", "parameters": [ { "name": "appId", "in": "query", "type": "string", "description": "application identifier", "required": true }, { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/FilteringObjective" }, "description": "filtering objective JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/flowobjectives/{deviceId}/next": { "post": { "tags": [ "flowobjectives" ], "summary": "Creates and installs a new next objective for the specified device", "description": "", "parameters": [ { "name": "appId", "in": "query", "type": "string", "description": "application identifier", "required": true }, { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/NextObjective" }, "description": "next objective JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/flows/table/{tableId}": { "get": { "tags": [ "flows" ], "summary": "Gets all flow entries for a table", "description": "Returns array of all flow rules for a table.", "parameters": [ { "name": "tableId", "in": "path", "type": "integer", "description": "table identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/flows/application/{appId}": { "get": { "tags": [ "flows" ], "summary": "Gets flow rules generated by an application", "description": "Returns the flow rule specified by the application id.", "parameters": [ { "name": "appId", "in": "path", "type": "string", "description": "application identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "flows" ], "summary": "Removes flow rules by application ID", "description": "Removes a collection of flow rules generated by the given application.", "parameters": [ { "name": "appId", "in": "path", "type": "string", "description": "application identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/flows": { "get": { "tags": [ "flows" ], "summary": "Gets all flow entries", "description": "Returns array of all flow rules in the system.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "flows" ], "summary": "Creates new flow rules", "description": "Creates and installs a new flow rules.\u003Cbr\u003E\nFlow rule criteria and instruction description:\nhttps://wiki.onosproject.org/display/ONOS/Flow+Rules", "parameters": [ { "name": "appId", "in": "query", "type": "string", "description": "application id", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/FlowsBatchPost" }, "description": "flow rules JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "flows" ], "summary": "Removes a batch of flow rules", "description": "", "parameters": [ { "name": "stream", "in": "body", "description": "stream for posted JSON", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/flows/{deviceId}/{flowId}": { "get": { "tags": [ "flows" ], "summary": "Gets flow rules", "description": "Returns the flow entry specified by the device id and\nflow rule id.", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "flowId", "in": "path", "type": "number", "description": "flow rule identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "flows" ], "summary": "Removes flow rule", "description": "Removes the specified flow rule.", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "flowId", "in": "path", "type": "number", "description": "flow rule identifier", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/flows/pending": { "get": { "tags": [ "flows" ], "summary": "Gets all pending flow entries", "description": "Returns array of all pending flow rules in the system.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/flows/{deviceId}": { "get": { "tags": [ "flows" ], "summary": "Gets flow entries of a device", "description": "Returns array of all flow rules for the\nspecified device.", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "flows" ], "summary": "Creates new flow rule", "description": "Creates and installs a new flow rule for the\nspecified device. \u003Cbr\u003E\nFlow rule criteria and instruction description:\nhttps://wiki.onosproject.org/display/ONOS/Flow+Rules", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "appId", "in": "query", "type": "string", "description": "application identifier", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/FlowsPost" }, "description": "flow rule JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/groups": { "get": { "tags": [ "groups" ], "summary": "Returns all groups of all devices", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/groups/{deviceId}": { "get": { "tags": [ "groups" ], "summary": "Returns all groups associated with the given device", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "groups" ], "summary": "Create new group rule", "description": "Creates and installs a new group rule for the\nspecified device.", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/GroupsPost" }, "description": "group rule JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/groups/{deviceId}/{appCookie}/buckets": { "post": { "tags": [ "groups" ], "summary": "Adds buckets to an existing group", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "appCookie", "in": "path", "type": "string", "description": "application cookie", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/GroupsBucketsPost" }, "description": "buckets JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/groups/{deviceId}/{appCookie}/buckets/{bucketIds}": { "delete": { "tags": [ "groups" ], "summary": "Removes buckets from an existing group", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "appCookie", "in": "path", "type": "string", "description": "application cookie", "required": true }, { "name": "bucketIds", "in": "path", "type": "string", "description": "comma separated list of identifiers of buckets to remove from this group", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/groups/{deviceId}/{appCookie}": { "get": { "tags": [ "groups" ], "summary": "Returns a group with the given deviceId and appCookie", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "appCookie", "in": "path", "type": "string", "description": "group key", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "groups" ], "summary": "Removes the specified group", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "appCookie", "in": "path", "type": "string", "description": "application cookie to be used for lookup", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/hosts/{mac}/{vlan}": { "get": { "tags": [ "hosts" ], "summary": "Get details of end-station host with MAC/VLAN", "description": "Returns detailed properties of the specified end-station host.", "parameters": [ { "name": "mac", "in": "path", "type": "string", "description": "host MAC address", "required": true }, { "name": "vlan", "in": "path", "type": "string", "description": "host VLAN identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "hosts" ], "summary": "Removes infrastructure device", "description": "Administratively deletes the specified device from the inventory of\nknown devices.", "parameters": [ { "name": "mac", "in": "path", "type": "string", "description": "host MAC address", "required": true }, { "name": "vlan", "in": "path", "type": "string", "description": "host VLAN identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/hosts/{id}": { "get": { "tags": [ "hosts" ], "summary": "Get details of end-station host", "description": "Returns detailed properties of the specified end-station host.", "parameters": [ { "name": "id", "in": "path", "type": "string", "description": "host identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/hosts": { "get": { "tags": [ "hosts" ], "summary": "Get all end-station hosts", "description": "Returns array of all known end-station hosts.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "hosts" ], "summary": "Creates a new host based on JSON input and adds it to the current\nhost inventory", "description": "", "parameters": [ { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/HostPut" }, "description": "input JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/intents/relatedflows/{appId}/{key}": { "get": { "tags": [ "intents" ], "summary": "Gets all related flow entries created by a particular intent", "description": "Returns all flow entries of the specified intent.", "parameters": [ { "name": "appId", "in": "path", "type": "string", "description": "application identifier", "required": true }, { "name": "key", "in": "path", "type": "string", "description": "intent key", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/intents": { "get": { "tags": [ "intents" ], "summary": "Gets all intents", "description": "Returns array containing all the intents in the system.", "parameters": [ { "name": "detail", "in": "query", "type": "boolean", "description": "flag to return full details of intents in list.", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "intents" ], "summary": "Submits a new intent", "description": "Creates and submits intent from the JSON request.", "parameters": [ { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/IntentHost" }, "description": "input JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/intents/application/{appId}": { "get": { "tags": [ "intents" ], "summary": "Gets intents by application", "description": "Returns the intents specified by the application id.", "parameters": [ { "name": "appId", "in": "path", "type": "string", "description": "application identifier", "required": true }, { "name": "detail", "in": "query", "type": "boolean", "description": "flag to return full details of intents in list.", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/intents/installables/{appId}/{key}": { "get": { "tags": [ "intents" ], "summary": "Gets intent installables by application ID and key", "description": "", "parameters": [ { "name": "appId", "in": "path", "type": "string", "description": "application identifier", "required": true }, { "name": "key", "in": "path", "type": "string", "description": "intent key", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/intents/{appId}/{key}": { "get": { "tags": [ "intents" ], "summary": "Gets intent by application and key", "description": "Returns details of the specified intent.", "parameters": [ { "name": "appId", "in": "path", "type": "string", "description": "application identifier", "required": true }, { "name": "key", "in": "path", "type": "string", "description": "intent key", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "intents" ], "summary": "Withdraws intent", "description": "Withdraws the specified intent from the system.", "parameters": [ { "name": "appId", "in": "path", "type": "string", "description": "application identifier", "required": true }, { "name": "key", "in": "path", "type": "string", "description": "intent key", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/intents/minisummary": { "get": { "tags": [ "intents" ], "summary": "Gets Summary of all intents", "description": "Returns Summary of the intents in the system.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/links/{usestalelinkage}": { "get": { "tags": [ "links" ], "summary": "Get useStaleLinkAge active status", "description": "Returns current status of the VanishedStaleLink.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "links" ], "summary": "Set useStaleLinkAge status", "description": "", "parameters": [ { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/VanishedLink" }, "description": "input JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/links": { "get": { "tags": [ "links" ], "summary": "Gets infrastructure links", "description": "Returns array of all links, or links for the specified device or port.", "parameters": [ { "name": "device", "in": "query", "type": "string", "description": "(optional) device identifier", "required": false }, { "name": "port", "in": "query", "type": "string", "description": "(optional) port number", "required": false }, { "name": "direction", "in": "query", "type": "string", "description": "(optional) direction qualifier", "required": false } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/mastership/{deviceId}/role": { "get": { "tags": [ "mastership" ], "summary": "Returns controllers connected to a given device, in order of\npreference", "description": "The first entry in the list is the current master.", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/mastership": { "put": { "tags": [ "mastership" ], "summary": "Applies the current mastership role for the specified device", "description": "", "parameters": [ { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/MastershipPut" }, "description": "JSON representation of device, node, mastership info", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "get": { "tags": [ "mastership" ], "summary": "Balances the mastership to be shared as evenly as possibly by all\nonline instances", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/mastership/{deviceId}/request": { "get": { "tags": [ "mastership" ], "summary": "Returns the mastership status of the local controller for a given\ndevice forcing master selection if necessary", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/mastership/{deviceId}/master": { "get": { "tags": [ "mastership" ], "summary": "Returns the current master for a given device", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/mastership/{nodeId}/device": { "get": { "tags": [ "mastership" ], "summary": "Returns the devices for which a controller is master", "description": "", "parameters": [ { "name": "nodeId", "in": "path", "type": "string", "description": "controller identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/mastership/{deviceId}/relinquish": { "get": { "tags": [ "mastership" ], "summary": "Abandons mastership of the specified device on the local node thus\nforcing selection of a new master", "description": "If the local node is not a master\nfor this device, no master selection will occur.", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/mastership/{deviceId}/local": { "get": { "tags": [ "mastership" ], "summary": "Returns the role of the local node for the specified device", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/meters": { "get": { "tags": [ "meters" ], "summary": "Returns all meters of all devices", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/meters/{deviceId}/{meterId}": { "get": { "tags": [ "meters" ], "summary": "Returns a meter by the meter id", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "meterId", "in": "path", "type": "string", "description": "meter identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "meters" ], "summary": "Removes the meter by device id and meter id", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "meterId", "in": "path", "type": "string", "description": "meter identifier", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/meters/{deviceId}": { "get": { "tags": [ "meters" ], "summary": "Returns a collection of meters by the device id", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "meters" ], "summary": "Creates new meter rule", "description": "Creates and installs a new meter rule for the\nspecified device.", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/MeterPost" }, "description": "meter rule JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/meters/{deviceId}/{scope}/{index}": { "get": { "tags": [ "meters" ], "summary": "Returns a meter by the meter cell id", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "scope", "in": "path", "type": "string", "description": "scope identifier", "required": true }, { "name": "index", "in": "path", "type": "string", "description": "index", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "meters" ], "summary": "Removes the meter by the device id and meter cell id", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "scope", "in": "path", "type": "string", "description": "scope identifier", "required": true }, { "name": "index", "in": "path", "type": "string", "description": "index", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/meters/scope/{deviceId}/{scope}": { "get": { "tags": [ "meters" ], "summary": "Returns a collection of meters by the device id and meter scope", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "scope", "in": "path", "type": "string", "description": "scope identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/metrics/{metricName}": { "get": { "tags": [ "metrics" ], "summary": "Gets stats information of a metric", "description": "Returns array of all information for the\nspecified metric.", "parameters": [ { "name": "metricName", "in": "path", "type": "string", "description": "metric name", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/metrics": { "get": { "tags": [ "metrics" ], "summary": "Gets stats information of all metrics", "description": "Returns array of all information for\nall metrics.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/modulation/set-modulation/{id}": { "put": { "tags": [ "modulation" ], "summary": "Sets the modulation for specified device and port", "description": "Returns the details of the specified modulation config device ports.\n\u003Cp\u003E\nModulationConfigDeviceGetPorts", "parameters": [ { "name": "id", "in": "path", "type": "string", "description": "device identifier", "required": true }, { "name": "port_id", "in": "query", "type": "string", "description": "port channel", "required": true }, { "name": "direction", "in": "query", "type": "string", "description": "port direction(transmitter or receiver port)", "required": true }, { "name": "bitrate", "in": "query", "type": "number", "description": "port bitrate", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/modulation/{id}/port": { "get": { "tags": [ "modulation" ], "summary": "Returns the supported modulation scheme for specified ports of device", "description": "\u003Cp\u003E\nModulationConfigDeviceGetPorts", "parameters": [ { "name": "id", "in": "path", "type": "string", "description": "line port identifier", "required": true }, { "name": "port_id", "in": "query", "type": "string", "description": "line port identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/modulation/{id}": { "get": { "tags": [ "modulation" ], "summary": "Gets the details of a modulation config device", "description": "Returns the details of the specified modulation config device.", "parameters": [ { "name": "id", "in": "path", "type": "string", "description": "device identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/modulation": { "get": { "tags": [ "modulation" ], "summary": "Gets all modulation config devices", "description": "Returns array of all discovered modulation config devices.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "put": { "tags": [ "modulation" ], "summary": "Applies the target modulation for the specified device", "description": "", "parameters": [ { "name": "stream", "in": "body", "description": "JSON representation of device, port, component and target\n bitrate info", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/mcast": { "get": { "tags": [ "mcast" ], "summary": "Get all multicast routes", "description": "Returns array of all known multicast routes.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "mcast" ], "summary": "Create new multicast route", "description": "Creates a new route in the multicast RIB.", "parameters": [ { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/McastRoutePost" }, "description": "multicast route JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "mcast" ], "summary": "Remove a multicast route", "description": "Removes a route from the multicast RIB.", "parameters": [ { "name": "stream", "in": "body", "description": "multicast route JSON", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/mcast/sinks/{group}/{source}": { "post": { "tags": [ "mcast" ], "summary": "Create a sink for a multicast route", "description": "Creates a new sink for an existing multicast route.", "parameters": [ { "name": "group", "in": "path", "type": "string", "description": "group IP address", "required": true }, { "name": "source", "in": "path", "type": "string", "description": "source IP address", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/McastSinkPost" }, "description": "sink JSON", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/network/configuration": { "get": { "tags": [ "network/configuration" ], "summary": "Gets entire network configuration base", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "network/configuration" ], "summary": "Uploads bulk network configuration", "description": "", "parameters": [ { "name": "request", "in": "body", "description": "network configuration JSON rooted at the top node", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "network/configuration" ], "summary": "Clear entire network configuration base", "description": "", "parameters": [], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/network/configuration/{subjectClassKey}": { "get": { "tags": [ "network/configuration" ], "summary": "Gets all network configuration for a subject class", "description": "", "parameters": [ { "name": "subjectClassKey", "in": "path", "type": "string", "description": "subject class key", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "network/configuration" ], "summary": "Upload multiple network configurations for a subject class", "description": "", "parameters": [ { "name": "subjectClassKey", "in": "path", "type": "string", "description": "subject class key", "required": true }, { "name": "request", "in": "body", "description": "network configuration JSON rooted at the top node", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "network/configuration" ], "summary": "Clear all network configurations for a subject class", "description": "", "parameters": [ { "name": "subjectClassKey", "in": "path", "type": "string", "description": "subject class key", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/network/configuration/{subjectClassKey}/{subjectKey}/{configKey}": { "get": { "tags": [ "network/configuration" ], "summary": "Gets specific network configuration for a subjectKey", "description": "", "parameters": [ { "name": "subjectClassKey", "in": "path", "type": "string", "description": "subjectKey class key", "required": true }, { "name": "subjectKey", "in": "path", "type": "string", "description": "subjectKey key", "required": true }, { "name": "configKey", "in": "path", "type": "string", "description": "configuration class key", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "network/configuration" ], "summary": "Upload specific network configuration for a subjectKey", "description": "", "parameters": [ { "name": "subjectClassKey", "in": "path", "type": "string", "description": "subjectKey class key", "required": true }, { "name": "subjectKey", "in": "path", "type": "string", "description": "subjectKey key", "required": true }, { "name": "configKey", "in": "path", "type": "string", "description": "configuration class key", "required": true }, { "name": "request", "in": "body", "description": "network configuration JSON rooted at the top node", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "network/configuration" ], "summary": "Clear specific network configuration for a subjectKey", "description": "", "parameters": [ { "name": "subjectClassKey", "in": "path", "type": "string", "description": "subjectKey class key", "required": true }, { "name": "subjectKey", "in": "path", "type": "string", "description": "subjectKey key", "required": true }, { "name": "configKey", "in": "path", "type": "string", "description": "configuration class key", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/network/configuration/{subjectClassKey}/{subjectKey}": { "get": { "tags": [ "network/configuration" ], "summary": "Gets all network configuration for a subjectKey", "description": "", "parameters": [ { "name": "subjectClassKey", "in": "path", "type": "string", "description": "subjectKey class key", "required": true }, { "name": "subjectKey", "in": "path", "type": "string", "description": "subjectKey key", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "network/configuration" ], "summary": "Upload mutliple network configurations for a subjectKey", "description": "", "parameters": [ { "name": "subjectClassKey", "in": "path", "type": "string", "description": "subjectKey class key", "required": true }, { "name": "subjectKey", "in": "path", "type": "string", "description": "subjectKey key", "required": true }, { "name": "request", "in": "body", "description": "network configuration JSON rooted at the top node", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "network/configuration" ], "summary": "Clear all network configurations for a subjectKey", "description": "", "parameters": [ { "name": "subjectClassKey", "in": "path", "type": "string", "description": "subjectKey class key", "required": true }, { "name": "subjectKey", "in": "path", "type": "string", "description": "subjectKey key", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/packet/processors": { "get": { "tags": [ "packet/processors" ], "summary": "Gets packet processors", "description": "Returns array of all packet processors.", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/paths/{src}/{dst}/disjoint": { "get": { "tags": [ "paths" ], "summary": "Gets all shortest disjoint path pairs between any two hosts or devices", "description": "Returns array of all shortest disjoint path pairs between any two elements.", "parameters": [ { "name": "src", "in": "path", "type": "string", "description": "source identifier", "required": true }, { "name": "dst", "in": "path", "type": "string", "description": "destination identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/paths/{src}/{dst}": { "get": { "tags": [ "paths" ], "summary": "Gets all shortest paths between any two hosts or devices", "description": "Returns array of all shortest paths between any two elements.", "parameters": [ { "name": "src", "in": "path", "type": "string", "description": "source identifier", "required": true }, { "name": "dst", "in": "path", "type": "string", "description": "destination identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/regions": { "get": { "tags": [ "regions" ], "summary": "Returns set of all regions", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "regions" ], "summary": "Creates a new region using the supplied JSON input stream", "description": "", "parameters": [ { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/RegionPost" }, "description": "region JSON stream", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/regions/{regionId}": { "get": { "tags": [ "regions" ], "summary": "Returns the region with the specified identifier", "description": "", "parameters": [ { "name": "regionId", "in": "path", "type": "string", "description": "region identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "put": { "tags": [ "regions" ], "summary": "Updates the specified region using the supplied JSON input stream", "description": "", "parameters": [ { "name": "regionId", "in": "path", "type": "string", "description": "region identifier", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/RegionPost" }, "description": "region JSON stream", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "regions" ], "summary": "Removes the specified region using the given region identifier", "description": "", "parameters": [ { "name": "regionId", "in": "path", "type": "string", "description": "region identifier", "required": true } ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/regions/{regionId}/devices": { "get": { "tags": [ "regions" ], "summary": "Returns the set of devices that belong to the specified region", "description": "", "parameters": [ { "name": "regionId", "in": "path", "type": "string", "description": "region identifier", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "post": { "tags": [ "regions" ], "summary": "Adds the specified collection of devices to the region", "description": "", "parameters": [ { "name": "regionId", "in": "path", "type": "string", "description": "region identifier", "required": true }, { "name": "stream", "in": "body", "schema": { "$ref": "#/definitions/RegionDeviceIds" }, "description": "deviceIds JSON stream", "required": true } ], "consumes": [ "application/json" ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "regions" ], "summary": "Removes the specified collection of devices from the region", "description": "", "parameters": [ { "name": "regionId", "in": "path", "type": "string", "description": "region identifier", "required": true }, { "name": "stream", "in": "body", "description": "deviceIds JSON stream", "required": true } ], "consumes": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/statistics/ports/{deviceId}": { "get": { "tags": [ "statistics" ], "summary": "Gets port statistics of a specified devices", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device ID", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/statistics/flows/activeentries": { "get": { "tags": [ "statistics" ], "summary": "Gets sum of active entries in all tables for all devices", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/statistics/delta/ports/{deviceId}/{port}": { "get": { "tags": [ "statistics" ], "summary": "Gets port delta statistics of a specified device and port", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device ID", "required": true }, { "name": "port", "in": "path", "type": "string", "description": "port", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/statistics/ports": { "get": { "tags": [ "statistics" ], "summary": "Gets port statistics of all devices", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/statistics/delta/ports/{deviceId}": { "get": { "tags": [ "statistics" ], "summary": "Gets port delta statistics of a specified devices", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device ID", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/statistics/ports/{deviceId}/{port}": { "get": { "tags": [ "statistics" ], "summary": "Gets port statistics of a specified device and port", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device ID", "required": true }, { "name": "port", "in": "path", "type": "string", "description": "port", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/statistics/flows/tables/{deviceId}": { "get": { "tags": [ "statistics" ], "summary": "Gets table statistics for all tables of a specified device", "description": "", "parameters": [ { "name": "deviceId", "in": "path", "type": "string", "description": "device ID", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/statistics/delta/ports": { "get": { "tags": [ "statistics" ], "summary": "Gets port delta statistics of all devices", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/statistics/flows/link": { "get": { "tags": [ "statistics" ], "summary": "Gets load statistics for all links or for a specific link", "description": "", "parameters": [ { "name": "device", "in": "query", "type": "string", "description": "(optional) device ID for a specific link", "required": false }, { "name": "port", "in": "query", "type": "string", "description": "(optional) port number for a specified link", "required": false } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/statistics/flows/tables": { "get": { "tags": [ "statistics" ], "summary": "Gets table statistics for all tables of all devices", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/system": { "get": { "tags": [ "system" ], "summary": "Get high-level system information, version, basic sumaries, memory usage, etc", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/topology/clusters": { "get": { "tags": [ "topology" ], "summary": "Gets overview of topology SCCs", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/topology/clusters/{id}/devices": { "get": { "tags": [ "topology" ], "summary": "Gets devices in a specific SCC", "description": "", "parameters": [ { "name": "id", "in": "path", "type": "integer", "description": "id of the cluster to query", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/topology": { "get": { "tags": [ "topology" ], "summary": "Gets overview of current topology", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/topology/clusters/{id}/links": { "get": { "tags": [ "topology" ], "summary": "Gets links in specific SCC", "description": "", "parameters": [ { "name": "id", "in": "path", "type": "integer", "description": "id of the cluster to query", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/topology/infrastructure/{connectPoint}": { "get": { "tags": [ "topology" ], "summary": "Tests if a connect point is infrastructure or edge", "description": "", "parameters": [ { "name": "connectPoint", "in": "path", "type": "string", "description": "deviceid:portnumber", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/topology/broadcast/{connectPoint}": { "get": { "tags": [ "topology" ], "summary": "Tests if a connect point is in broadcast set", "description": "", "parameters": [ { "name": "connectPoint", "in": "path", "type": "string", "description": "deviceid:portnumber", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/topology/clusters/{id}": { "get": { "tags": [ "topology" ], "summary": "Gets details of a specific SCC", "description": "", "parameters": [ { "name": "id", "in": "path", "type": "integer", "description": "id of the cluster to query", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/ui/preferences": { "get": { "tags": [ "ui/preferences" ], "summary": "Gets all user preferences", "description": "", "parameters": [], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/ui/preferences/{user}": { "get": { "tags": [ "ui/preferences" ], "summary": "Gets user preferences for the given user", "description": "", "parameters": [ { "name": "user", "in": "path", "type": "string", "description": "user name", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } }, "/ui/preferences/{user}/{pref}": { "get": { "tags": [ "ui/preferences" ], "summary": "Gets the specified user preferences for the given user", "description": "", "parameters": [ { "name": "user", "in": "path", "type": "string", "description": "user name", "required": true }, { "name": "pref", "in": "path", "type": "string", "description": "preferences name", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "put": { "tags": [ "ui/preferences" ], "summary": "Gets the specified user preferences for the given user", "description": "", "parameters": [ { "name": "user", "in": "path", "type": "string", "description": "user name", "required": true }, { "name": "pref", "in": "path", "type": "string", "description": "preferences JSON", "required": true }, { "name": "request", "in": "body", "description": "preferences JSON", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } }, "delete": { "tags": [ "ui/preferences" ], "summary": "Removes the specified user preferences for the given user", "description": "", "parameters": [ { "name": "user", "in": "path", "type": "string", "description": "user name", "required": true }, { "name": "pref", "in": "path", "type": "string", "description": "preferences name", "required": true } ], "produces": [ "application/json" ], "responses": { "200": { "description": "successful operation" }, "default": { "description": "Unexpected error" } } } } }, "definitions": { "Applications": { "type": "object", "title": "applications", "required": [ "applications" ], "properties": { "applications": { "type": "array", "xml": { "name": "applications", "wrapped": true }, "items": { "type": "object", "title": "application", "required": [ "name", "id", "version", "category", "description", "readme", "origin", "url", "permissions", "featuresRepo", "features", "requiredApps", "state" ], "properties": { "name": { "type": "string", "example": "org.onosproject.distributedprimitives" }, "id": { "type": "integer", "format": "int64", "example": 1 }, "version": { "type": "string", "example": "1.2.3" }, "category": { "type": "string", "example": "default" }, "description": { "type": "string", "example": "ONOS app to test distributed primitives" }, "readme": { "type": "string", "example": "ONOS app to test distributed primitives." }, "origin": { "type": "string", "example": "Open Networking Foundation" }, "url": { "type": "string", "example": "http://onosproject.org" }, "permissions": { "type": "array", "xml": { "name": "permissions", "wrapped": true }, "items": { "type": "string", "example": "" } }, "featuresRepo": { "type": "string", "example": "mvn:org.onosproject/onos-app-cip/1.2.3/xml/features" }, "features": { "type": "array", "xml": { "name": "features", "wrapped": true }, "items": { "type": "string", "example": "onos-app-distributed-primitives" } }, "requiredApps": { "type": "array", "xml": { "name": "requiredApps", "wrapped": true }, "items": { "type": "string", "example": "" } }, "state": { "type": "string", "example": "ACTIVE" } } } } } }, "Application": { "type": "object", "title": "application", "required": [ "name", "id", "version", "category", "description", "readme", "origin", "url", "permissions", "featuresRepo", "features", "requiredApps", "state" ], "properties": { "name": { "type": "string", "example": "org.onosproject.distributedprimitives" }, "id": { "type": "integer", "format": "int64", "example": 1 }, "version": { "type": "string", "example": "1.2.3" }, "category": { "type": "string", "example": "default" }, "description": { "type": "string", "example": "ONOS app to test distributed primitives" }, "readme": { "type": "string", "example": "ONOS app to test distributed primitives." }, "origin": { "type": "string", "example": "Open Networking Foundation" }, "url": { "type": "string", "example": "http://onosproject.org" }, "permissions": { "type": "array", "xml": { "name": "permissions", "wrapped": true }, "items": { "type": "string", "example": "" } }, "featuresRepo": { "type": "string", "example": "mvn:org.onosproject/onos-app-cip/1.2.3/xml/features" }, "features": { "type": "array", "xml": { "name": "features", "wrapped": true }, "items": { "type": "string", "example": "onos-app-distributed-primitives" } }, "requiredApps": { "type": "array", "xml": { "name": "requiredApps", "wrapped": true }, "items": { "type": "string", "example": "" } }, "state": { "type": "string", "example": "ACTIVE" } } }, "ApplicationId": { "type": "object", "title": "applicationId", "required": [ "name", "id" ], "properties": { "name": { "type": "string", "example": "org.onosproject.distributedprimitives" }, "id": { "type": "integer", "format": "int64", "example": 1 } } }, "ApplicationIds": { "type": "object", "title": "applicationIds", "required": [ "applicationIds" ], "properties": { "applicationIds": { "type": "array", "xml": { "name": "applicationIds", "wrapped": true }, "items": { "type": "object", "title": "applicationId", "required": [ "name", "id" ], "properties": { "name": { "type": "string", "example": "org.onosproject.distributedprimitives" }, "id": { "type": "integer", "format": "int64", "example": 1 } } } } } }, "Cluster": { "type": "object", "title": "cluster", "required": [ "nodes" ], "properties": { "nodes": { "type": "array", "xml": { "name": "nodes", "wrapped": true }, "items": { "type": "object", "title": "nodes", "required": [ "id", "ip", "tcpPort", "status" ], "properties": { "id": { "type": "string", "example": "127.0.0.1" }, "ip": { "type": "string", "example": "127.0.0.1" }, "tcpPort": { "type": "integer", "format": "int64", "example": 9876 }, "status": { "type": "string", "example": "ACTIVE" } } } } } }, "ClusterNode": { "type": "object", "required": [ "id", "ip", "tcpPort", "status" ], "properties": { "id": { "type": "string", "example": "127.0.0.1" }, "ip": { "type": "string", "example": "127.0.0.1" }, "tcpPort": { "type": "integer", "format": "int64", "example": 9876 }, "status": { "type": "string", "example": "ACTIVE" } } }, "Devicekeys": { "type": "object", "title": "Devicekeys", "required": [ "keys" ], "properties": { "keys": { "type": "array", "xml": { "name": "keys", "wrapped": true }, "items": { "type": "object", "title": "key", "required": [ "id", "type", "label" ], "properties": { "id": { "type": "String", "example": "Device key unique identifier" }, "type": { "type": "String", "example": "COMMUNITY_NAME, OR USERNAME_PASSWORD" }, "label": { "type": "String", "example": "Device key user label" }, "community_name": { "type": "String", "example": "Device key community name" }, "username": { "type": "String", "example": "Device key username" }, "password": { "type": "String", "example": "Device key password" } } } } } }, "Devicekey": { "type": "object", "title": "Devicekey", "required": [ "id", "type", "label" ], "properties": { "id": { "type": "String", "example": "Device key unique identifier" }, "type": { "type": "String", "example": "COMMUNITY_NAME, OR USERNAME_PASSWORD" }, "label": { "type": "String", "example": "Device key user label" }, "community_name": { "type": "String", "example": "Device key community name" }, "username": { "type": "String", "example": "Device key username" }, "password": { "type": "String", "example": "Device key password" } } }, "DevicesGet": { "type": "object", "title": "nodes", "required": [ "devices" ], "properties": { "devices": { "type": "array", "xml": { "name": "device", "wrapped": true }, "items": { "type": "object", "title": "device", "required": [ "id", "type", "available", "role", "mfr", "hw", "sw", "serial", "driver", "chassisId", "annotations" ], "properties": { "id": { "type": "string", "example": "of:0000000000000001" }, "type": { "type": "string", "example": "SWITCH" }, "available": { "type": "boolean", "example": true }, "role": { "type": "string", "example": "of:0000000000000001" }, "mfr": { "type": "string", "example": "Nicira, Inc." }, "hw": { "type": "string", "example": "Open vSwitch" }, "sw": { "type": "string", "example": "2.3.1" }, "serial": { "type": "string", "example": "123" }, "driver": { "type": "string", "example": "ovs" }, "chassisId": { "type": "string", "example": "1" }, "annotations": { "type": "object", "title": "annotations", "required": [ "managementAddress", "protocol", "channelId" ], "properties": { "managementAddress": { "type": "string", "example": "123" }, "protocol": { "type": "string", "example": "OF_13" }, "channelId": { "type": "string", "example": "10.128.12.4:34689" } } } } } } } }, "DeviceGet": { "type": "object", "title": "device", "required": [ "id", "type", "available", "role", "mfr", "hw", "sw", "serial", "driver", "chassisId", "annotations" ], "properties": { "id": { "type": "string", "example": "of:0000000000000001" }, "type": { "type": "string", "example": "SWITCH" }, "available": { "type": "boolean", "example": true }, "role": { "type": "string", "example": "of:0000000000000001" }, "mfr": { "type": "string", "example": "Nicira, Inc." }, "hw": { "type": "string", "example": "Open vSwitch" }, "sw": { "type": "string", "example": "2.3.1" }, "serial": { "type": "string", "example": "123" }, "driver": { "type": "string", "example": "ovs" }, "chassisId": { "type": "string", "example": "1" }, "annotations": { "type": "object", "title": "annotations", "required": [ "managementAddress", "protocol", "channelId" ], "properties": { "managementAddress": { "type": "string", "example": "123" }, "protocol": { "type": "string", "example": "OF_13" }, "driver": { "type": "string", "example": "ovs" }, "channelId": { "type": "string", "example": "10.128.12.4:34689" } } } } }, "DevicesGetPorts": { "type": "object", "title": "device", "required": [ "ports" ], "properties": { "ports": { "type": "array", "xml": { "name": "ports", "wrapped": true }, "items": { "type": "object", "title": "port", "required": [ "element", "port", "isEnabled", "type", "portSpeed", "annotations" ], "properties": { "element": { "type": "string", "example": "of:0000000000000001" }, "port": { "type": "string", "example": "2" }, "isEnabled": { "type": "boolean", "example": true }, "type": { "type": "string", "example": "copper" }, "portSpeed": { "type": "integer", "format": "int64", "example": 0 }, "annotations": { "type": "object", "title": "annotations", "required": [ "portName" ], "properties": { "portName": { "type": "string", "example": "s1" } } } } } } } }, "DeviceGetPorts": { "type": "object", "title": "device", "required": [ "id", "type", "available", "role", "mfr", "hw", "sw", "serial", "driver", "chassisId", "annotations" ], "properties": { "id": { "type": "string", "example": "of:0000000000000001" }, "type": { "type": "string", "example": "SWITCH" }, "available": { "type": "boolean", "example": true }, "role": { "type": "string", "example": "of:0000000000000001" }, "mfr": { "type": "string", "example": "Nicira, Inc." }, "hw": { "type": "string", "example": "Open vSwitch" }, "sw": { "type": "string", "example": "2.3.1" }, "serial": { "type": "string", "example": "123" }, "driver": { "type": "string", "example": "ovs" }, "chassisId": { "type": "string", "example": "1" }, "annotations": { "type": "object", "title": "annotations", "required": [ "managementAddress", "protocol", "channelId" ], "properties": { "managementAddress": { "type": "string", "example": "123" }, "protocol": { "type": "string", "example": "OF_13" }, "channelId": { "type": "string", "example": "10.128.12.4:34689" } } }, "ports": { "type": "array", "xml": { "name": "port", "wrapped": true }, "items": { "type": "object", "title": "port", "required": [ "element", "port", "isEnabled", "type", "portSpeed", "annotations" ], "properties": { "element": { "type": "string", "example": "of:0000000000000001" }, "port": { "type": "string", "example": "2" }, "isEnabled": { "type": "boolean", "example": true }, "type": { "type": "string", "example": "copper" }, "portSpeed": { "type": "integer", "format": "int64", "example": 0 }, "annotations": { "type": "object", "title": "annotations", "required": [ "portName" ], "properties": { "portName": { "type": "string", "example": "s1" } } } } } } } }, "PortAdministrativeState": { "type": "object", "required": [ "enabled" ], "properties": { "enabled": { "type": "boolean", "example": true } } }, "NextObjectives": { "type": "object", "title": "obj-next-ids", "required": [ "obj-next-ids" ], "properties": { "devices": { "type": "array", "items": { "type": "object", "title": "nextId", "required": [ "groupChain" ], "properties": { "groupChain": { "type": "array", "example": "[0x1234 --\u003E 0x1246 --\u003E port :1, 0x1234 --\u003E 0x12786 --\u003E port :2] " } } } } } }, "FilteringObjective": { "type": "object", "title": "filteringObjective", "required": [ "type", "priority", "timeout", "isPermanent", "deviceId", "operation", "key", "conditions", "meta" ], "properties": { "type": { "type": "string", "example": "PERMIT" }, "priority": { "type": "integer", "format": "int64", "example": 400000 }, "timeout": { "type": "integer", "format": "int64", "example": 0 }, "isPermanent": { "type": "boolean", "example": true }, "deviceId": { "type": "string", "example": "of:0000000000000001" }, "operation": { "type": "string", "example": "ADD" }, "key": { "type": "object", "title": "key", "properties": { "type": { "type": "string", "description": "Ethernet field name", "example": "ETH_TYPE" }, "ethType": { "type": "int64", "format": "int64", "example": "0x88cc", "description": "Ethernet frame type" }, "mac": { "type": "string", "example": "00:00:11:00:00:01" }, "port": { "type": "int64", "format": "int64", "example": 1, "description": "Match port" }, "metadata": { "type": "Hex16", "format": "Hex16", "example": "0xabcdL", "description": "Metadata passed between tables" }, "vlanId": { "type": "uint16", "format": "uint16", "example": "0x1000" }, "priority": { "type": "int64", "format": "int64", "example": 1, "description": "VLAN priority." }, "ipDscp": { "type": "byte", "format": "byte", "description": "IP DSCP (6 bits in ToS field)" }, "ipEcn": { "type": "byte", "format": "byte", "description": "IP ECN (2 bits in ToS field)." }, "protocol": { "type": "uint16", "format": "uint16", "example": 1, "description": "IP protocol" }, "ip": { "type": "string", "example": "10.1.1.0/24", "description": "IP source address" }, "tcpPort": { "type": "integer", "format": "uint16", "example": 1, "description": "TCP source address" }, "udpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "UDP source address" }, "sctpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "SCTP source address" }, "icmpType": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "icmpCode": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "flowLabel": { "type": "Hex16", "format": "Hex16", "example": "0xffffe", "description": "IPv6 Flow Label (RFC 6437)" }, "icmpv6Type": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 type (RFC2463)" }, "icmpv6Code": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 code (RFC2463)" }, "targetAddress": { "type": "String", "example": "10.1.1.0/24", "description": "IPv6 Neighbor discovery target address" }, "label": { "type": "int32", "format": "int32", "example": 1, "description": "MPLS label" }, "exthdrFlags": { "type": "int64", "format": "int64", "example": 1, "description": "IPv6 extension header pseudo-field" }, "lambda": { "type": "int64", "format": "int64", "example": 1, "description": "wavelength abstraction" }, "gridType": { "type": "String", "example": "DWDM", "description": "Type of wavelength grid" }, "channelSpacing": { "type": "int64", "format": "int64", "example": 100, "description": "Optical channel spacing" }, "spacingMultiplier": { "type": "integer", "format": "int64", "example": 4, "description": "Optical channel spacing multiplier" }, "slotGranularity": { "type": "int64", "format": "int64", "example": 8 }, "ochSignalId": { "type": "integer", "format": "int64", "example": 1, "description": "Optical channel signal ID" }, "tunnelId": { "type": "int64", "format": "int64", "example": 5, "description": "Tunnel ID" }, "ochSignalType": { "type": "int64", "format": "int64", "example": 1, "description": "Optical channel signal type" }, "oduSignalId": { "type": "int64", "format": "int64", "example": 1, "description": "ODU (Optical channel Data Unit) signal ID." }, "tributaryPortNumber": { "type": "int64", "format": "int64", "example": 11, "description": "OPU (Optical channel Payload Unit) port number." }, "tributarySlotLen": { "type": "int64", "format": "int64", "example": 80, "description": "OPU (Optical channel Payload Unit) slot length." }, "tributarySlotBitmap": { "type": "array", "title": "tributarySlotBitmap", "description": "OPU (Optical channel Payload Unit) slot bitmap.", "required": [ "byte", "port" ], "items": { "type": "byte", "title": "byte", "example": 1 } }, "oduSignalType": { "type": "int64", "format": "int64", "example": 4, "description": "ODU (Optical channel Data Unit) signal type." } } }, "conditions": { "type": "array", "xml": { "name": "conditions", "wrapped": true }, "items": { "type": "object", "title": "conditions", "properties": { "type": { "type": "string", "description": "Ethernet field name", "example": "ETH_TYPE" }, "ethType": { "type": "int64", "format": "int64", "example": "0x88cc", "description": "Ethernet frame type" }, "mac": { "type": "string", "example": "00:00:11:00:00:01" }, "port": { "type": "int64", "format": "int64", "example": 1, "description": "Match port" }, "metadata": { "type": "Hex16", "format": "Hex16", "example": "0xabcdL", "description": "Metadata passed between tables" }, "vlanId": { "type": "uint16", "format": "uint16", "example": "0x1000" }, "priority": { "type": "int64", "format": "int64", "example": 1, "description": "VLAN priority." }, "ipDscp": { "type": "byte", "format": "byte", "description": "IP DSCP (6 bits in ToS field)" }, "ipEcn": { "type": "byte", "format": "byte", "description": "IP ECN (2 bits in ToS field)." }, "protocol": { "type": "uint16", "format": "uint16", "example": 1, "description": "IP protocol" }, "ip": { "type": "string", "example": "10.1.1.0/24", "description": "IP source address" }, "tcpPort": { "type": "integer", "format": "uint16", "example": 1, "description": "TCP source address" }, "udpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "UDP source address" }, "sctpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "SCTP source address" }, "icmpType": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "icmpCode": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "flowLabel": { "type": "Hex16", "format": "Hex16", "example": "0xffffe", "description": "IPv6 Flow Label (RFC 6437)" }, "icmpv6Type": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 type (RFC2463)" }, "icmpv6Code": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 code (RFC2463)" }, "targetAddress": { "type": "String", "example": "10.1.1.0/24", "description": "IPv6 Neighbor discovery target address" }, "label": { "type": "int32", "format": "int32", "example": 1, "description": "MPLS label" }, "exthdrFlags": { "type": "int64", "format": "int64", "example": 1, "description": "IPv6 extension header pseudo-field" }, "lambda": { "type": "int64", "format": "int64", "example": 1, "description": "wavelength abstraction" }, "gridType": { "type": "String", "example": "DWDM", "description": "Type of wavelength grid" }, "channelSpacing": { "type": "int64", "format": "int64", "example": 100, "description": "Optical channel spacing" }, "spacingMultiplier": { "type": "integer", "format": "int64", "example": 4, "description": "Optical channel spacing multiplier" }, "slotGranularity": { "type": "int64", "format": "int64", "example": 8 }, "ochSignalId": { "type": "integer", "format": "int64", "example": 1, "description": "Optical channel signal ID" }, "tunnelId": { "type": "int64", "format": "int64", "example": 5, "description": "Tunnel ID" }, "ochSignalType": { "type": "int64", "format": "int64", "example": 1, "description": "Optical channel signal type" }, "oduSignalId": { "type": "int64", "format": "int64", "example": 1, "description": "ODU (Optical channel Data Unit) signal ID." }, "tributaryPortNumber": { "type": "int64", "format": "int64", "example": 11, "description": "OPU (Optical channel Payload Unit) port number." }, "tributarySlotLen": { "type": "int64", "format": "int64", "example": 80, "description": "OPU (Optical channel Payload Unit) slot length." }, "tributarySlotBitmap": { "type": "array", "title": "tributarySlotBitmap", "description": "OPU (Optical channel Payload Unit) slot bitmap.", "required": [ "byte", "port" ], "items": { "type": "byte", "title": "byte", "example": 1 } }, "oduSignalType": { "type": "int64", "format": "int64", "example": 4, "description": "ODU (Optical channel Data Unit) signal type." } } } }, "treatment": { "type": "object", "title": "treatment", "required": [ "instructions" ], "properties": { "instructions": { "type": "array", "title": "treatment", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instructions", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "example": "OUTPUT" }, "port": { "type": "string", "example": "CONTROLLER" } } } } } } } }, "ForwardingObjective": { "type": "object", "title": "forwardingObjective", "required": [ "flag", "priority", "timeout", "isPermanent", "deviceId", "operation", "selector", "treatment" ], "properties": { "flag": { "type": "string", "example": "SPECIFIC" }, "priority": { "type": "integer", "format": "int32", "example": 40000 }, "timeout": { "type": "integer", "format": "int32", "example": 0 }, "isPermanent": { "type": "boolean", "example": true }, "deviceId": { "type": "string", "example": "of:0000000000000001" }, "operation": { "type": "string", "example": "ADD" }, "selector": { "type": "object", "title": "selector", "required": [ "criteria" ], "properties": { "criteria": { "type": "array", "xml": { "name": "criteria", "wrapped": true }, "items": { "type": "object", "title": "criteria", "properties": { "type": { "type": "string", "description": "Ethernet field name", "example": "ETH_TYPE" }, "ethType": { "type": "int64", "format": "int64", "example": "0x88cc", "description": "Ethernet frame type" }, "mac": { "type": "string", "example": "00:00:11:00:00:01" }, "port": { "type": "int64", "format": "int64", "example": 1, "description": "Match port" }, "metadata": { "type": "Hex16", "format": "Hex16", "example": "0xabcdL", "description": "Metadata passed between tables" }, "vlanId": { "type": "uint16", "format": "uint16", "example": "0x1000" }, "priority": { "type": "int64", "format": "int64", "example": 1, "description": "VLAN priority." }, "ipDscp": { "type": "byte", "format": "byte", "description": "IP DSCP (6 bits in ToS field)" }, "ipEcn": { "type": "byte", "format": "byte", "description": "IP ECN (2 bits in ToS field)." }, "protocol": { "type": "uint16", "format": "uint16", "example": 1, "description": "IP protocol" }, "ip": { "type": "string", "example": "10.1.1.0/24", "description": "IP source address" }, "tcpPort": { "type": "integer", "format": "uint16", "example": 1, "description": "TCP source address" }, "udpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "UDP source address" }, "sctpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "SCTP source address" }, "icmpType": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "icmpCode": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "flowLabel": { "type": "Hex16", "format": "Hex16", "example": "0xffffe", "description": "IPv6 Flow Label (RFC 6437)" }, "icmpv6Type": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 type (RFC2463)" }, "icmpv6Code": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 code (RFC2463)" }, "targetAddress": { "type": "String", "example": "10.1.1.0/24", "description": "IPv6 Neighbor discovery target address" }, "label": { "type": "int32", "format": "int32", "example": 1, "description": "MPLS label" }, "exthdrFlags": { "type": "int64", "format": "int64", "example": 1, "description": "IPv6 extension header pseudo-field" }, "lambda": { "type": "int64", "format": "int64", "example": 1, "description": "wavelength abstraction" }, "gridType": { "type": "String", "example": "DWDM", "description": "Type of wavelength grid" }, "channelSpacing": { "type": "int64", "format": "int64", "example": 100, "description": "Optical channel spacing" }, "spacingMultiplier": { "type": "integer", "format": "int64", "example": 4, "description": "Optical channel spacing multiplier" }, "slotGranularity": { "type": "int64", "format": "int64", "example": 8 }, "ochSignalId": { "type": "integer", "format": "int64", "example": 1, "description": "Optical channel signal ID" }, "tunnelId": { "type": "int64", "format": "int64", "example": 5, "description": "Tunnel ID" }, "ochSignalType": { "type": "int64", "format": "int64", "example": 1, "description": "Optical channel signal type" }, "oduSignalId": { "type": "int64", "format": "int64", "example": 1, "description": "ODU (Optical channel Data Unit) signal ID." }, "tributaryPortNumber": { "type": "int64", "format": "int64", "example": 11, "description": "OPU (Optical channel Payload Unit) port number." }, "tributarySlotLen": { "type": "int64", "format": "int64", "example": 80, "description": "OPU (Optical channel Payload Unit) slot length." }, "tributarySlotBitmap": { "type": "array", "title": "tributarySlotBitmap", "description": "OPU (Optical channel Payload Unit) slot bitmap.", "required": [ "byte", "port" ], "items": { "type": "byte", "title": "byte", "example": 1 } }, "oduSignalType": { "type": "int64", "format": "int64", "example": 4, "description": "ODU (Optical channel Data Unit) signal type." } } } } } }, "treatment": { "type": "object", "title": "treatment", "required": [ "instructions" ], "properties": { "instructions": { "type": "array", "title": "treatment", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instructions", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "example": "OUTPUT" }, "port": { "type": "string", "example": "CONTROLLER" } } } } } } } }, "NextObjective": { "type": "object", "title": "nextObjective", "required": [ "type", "id", "priority", "timeout", "isPermanent", "deviceId", "operation", "meta", "treatments" ], "properties": { "type": { "type": "string", "example": "HASHED" }, "id": { "type": "integer", "format": "int64", "example": 1 }, "priority": { "type": "integer", "format": "int64", "example": 400000 }, "timeout": { "type": "integer", "format": "int64", "example": 0 }, "isPermanent": { "type": "boolean", "example": true }, "deviceId": { "type": "string", "example": "of:0000000000000001" }, "operation": { "type": "string", "example": "ADD" }, "meta": { "type": "object", "title": "meta", "required": [ "criteria" ], "properties": { "criteria": { "type": "array", "xml": { "name": "criteria", "wrapped": true }, "items": { "type": "object", "title": "criteria", "properties": { "type": { "type": "string", "description": "Ethernet field name", "example": "ETH_TYPE" }, "ethType": { "type": "int64", "format": "int64", "example": "0x88cc", "description": "Ethernet frame type" }, "mac": { "type": "string", "example": "00:00:11:00:00:01" }, "port": { "type": "int64", "format": "int64", "example": 1, "description": "Match port" }, "metadata": { "type": "Hex16", "format": "Hex16", "example": "0xabcdL", "description": "Metadata passed between tables" }, "vlanId": { "type": "uint16", "format": "uint16", "example": "0x1000" }, "priority": { "type": "int64", "format": "int64", "example": 1, "description": "VLAN priority." }, "ipDscp": { "type": "byte", "format": "byte", "description": "IP DSCP (6 bits in ToS field)" }, "ipEcn": { "type": "byte", "format": "byte", "description": "IP ECN (2 bits in ToS field)." }, "protocol": { "type": "uint16", "format": "uint16", "example": 1, "description": "IP protocol" }, "ip": { "type": "string", "example": "10.1.1.0/24", "description": "IP source address" }, "tcpPort": { "type": "integer", "format": "uint16", "example": 1, "description": "TCP source address" }, "udpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "UDP source address" }, "sctpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "SCTP source address" }, "icmpType": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "icmpCode": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "flowLabel": { "type": "Hex16", "format": "Hex16", "example": "0xffffe", "description": "IPv6 Flow Label (RFC 6437)" }, "icmpv6Type": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 type (RFC2463)" }, "icmpv6Code": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 code (RFC2463)" }, "targetAddress": { "type": "String", "example": "10.1.1.0/24", "description": "IPv6 Neighbor discovery target address" }, "label": { "type": "int32", "format": "int32", "example": 1, "description": "MPLS label" }, "exthdrFlags": { "type": "int64", "format": "int64", "example": 1, "description": "IPv6 extension header pseudo-field" }, "lambda": { "type": "int64", "format": "int64", "example": 1, "description": "wavelength abstraction" }, "gridType": { "type": "String", "example": "DWDM", "description": "Type of wavelength grid" }, "channelSpacing": { "type": "int64", "format": "int64", "example": 100, "description": "Optical channel spacing" }, "spacingMultiplier": { "type": "integer", "format": "int64", "example": 4, "description": "Optical channel spacing multiplier" }, "slotGranularity": { "type": "int64", "format": "int64", "example": 8 }, "ochSignalId": { "type": "integer", "format": "int64", "example": 1, "description": "Optical channel signal ID" }, "tunnelId": { "type": "int64", "format": "int64", "example": 5, "description": "Tunnel ID" }, "ochSignalType": { "type": "int64", "format": "int64", "example": 1, "description": "Optical channel signal type" }, "oduSignalId": { "type": "int64", "format": "int64", "example": 1, "description": "ODU (Optical channel Data Unit) signal ID." }, "tributaryPortNumber": { "type": "int64", "format": "int64", "example": 11, "description": "OPU (Optical channel Payload Unit) port number." }, "tributarySlotLen": { "type": "int64", "format": "int64", "example": 80, "description": "OPU (Optical channel Payload Unit) slot length." }, "tributarySlotBitmap": { "type": "array", "title": "tributarySlotBitmap", "description": "OPU (Optical channel Payload Unit) slot bitmap.", "required": [ "byte", "port" ], "items": { "type": "byte", "title": "byte", "example": 1 } }, "oduSignalType": { "type": "int64", "format": "int64", "example": 4, "description": "ODU (Optical channel Data Unit) signal type." } } } } } }, "treatments": { "type": "array", "xml": { "name": "treatments", "wrapped": true }, "items": { "type": "object", "title": "treatments", "properties": { "instructions": { "type": "array", "title": "instructions", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instructions", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "example": "OUTPUT" }, "port": { "type": "string", "example": "CONTROLLER" } } } } } } } } }, "NextId": { "type": "object", "title": "nextId", "required": [ "id" ], "properties": { "nextId": { "type": "integer", "format": "int64", "example": 3 } } }, "ObjectivePolicy": { "type": "object", "title": "objectivePolicy", "required": [ "policy" ], "properties": { "policy": { "type": "string", "example": "policy expression" } } }, "FlowEntries": { "type": "object", "title": "flows", "required": [ "flows" ], "properties": { "flows": { "type": "array", "xml": { "name": "flows", "wrapped": true }, "items": { "type": "object", "title": "flow", "required": [ "id", "tableId", "appId", "groupId", "priority", "timeout", "isPermanent", "deviceId", "state", "life", "packets", "bytes", "liveType", "lastSeen" ], "properties": { "id": { "type": "string", "example": "12103425214920339" }, "tableId": { "type": "integer", "format": "int32", "example": 3 }, "appId": { "type": "string", "example": "org.onosproject.core" }, "groupId": { "type": "integer", "format": "int64", "example": 0 }, "priority": { "type": "integer", "format": "int32", "example": 40000 }, "timeout": { "type": "integer", "format": "int32", "example": 0 }, "isPermanent": { "type": "boolean", "example": true }, "deviceId": { "type": "string", "example": "of:0000000000000003" }, "state": { "type": "string", "example": "ADDED" }, "life": { "type": "integer", "format": "int64", "example": 69889 }, "packets": { "type": "integer", "format": "int64", "example": 22546 }, "bytes": { "type": "integer", "format": "int64", "example": 1826226 }, "liveType": { "type": "string", "example": "UNKNOWN" }, "lastSeen": { "type": "integer", "format": "int64", "example": 1447892365670 }, "treatment": { "type": "object", "title": "treatment", "required": [ "instructions", "deferred" ], "properties": { "instructions": { "type": "array", "title": "treatment", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instruction", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "example": "OUTPUT" }, "port": { "type": "string", "example": "CONTROLLER" } } } }, "deferred": { "type": "array", "xml": { "name": "deferred", "wrapped": true }, "items": { "type": "string" } } } }, "selector": { "type": "object", "title": "selector", "required": [ "criteria" ], "properties": { "criteria": { "type": "array", "xml": { "name": "criteria", "wrapped": true }, "items": { "type": "object", "title": "criteria", "properties": { "type": { "type": "string", "description": "Ethernet field name", "example": "ETH_TYPE" }, "ethType": { "type": "int64", "format": "int64", "example": "0x88cc", "description": "Ethernet frame type" }, "mac": { "type": "string", "example": "00:00:11:00:00:01" }, "port": { "type": "int64", "format": "int64", "example": 1, "description": "Match port" }, "metadata": { "type": "Hex16", "format": "Hex16", "example": "0xabcdL", "description": "Metadata passed between tables" }, "vlanId": { "type": "uint16", "format": "uint16", "example": "0x1000" }, "priority": { "type": "int64", "format": "int64", "example": 1, "description": "VLAN priority." }, "ipDscp": { "type": "byte", "format": "byte", "description": "IP DSCP (6 bits in ToS field)" }, "ipEcn": { "type": "byte", "format": "byte", "description": "IP ECN (2 bits in ToS field)." }, "protocol": { "type": "uint16", "format": "uint16", "example": 1, "description": "IP protocol" }, "ip": { "type": "string", "example": "10.1.1.0/24", "description": "IP source address" }, "tcpPort": { "type": "integer", "format": "uint16", "example": 1, "description": "TCP source address" }, "udpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "UDP source address" }, "sctpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "SCTP source address" }, "icmpType": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "icmpCode": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "flowLabel": { "type": "Hex16", "format": "Hex16", "example": "0xffffe", "description": "IPv6 Flow Label (RFC 6437)" }, "icmpv6Type": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 type (RFC2463)" }, "icmpv6Code": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 code (RFC2463)" }, "targetAddress": { "type": "String", "example": "10.1.1.0/24", "description": "IPv6 Neighbor discovery target address" }, "label": { "type": "int32", "format": "int32", "example": 1, "description": "MPLS label" }, "exthdrFlags": { "type": "int64", "format": "int64", "example": 1, "description": "IPv6 extension header pseudo-field" }, "lambda": { "type": "int64", "format": "int64", "example": 1, "description": "wavelength abstraction" }, "gridType": { "type": "String", "example": "DWDM", "description": "Type of wavelength grid" }, "channelSpacing": { "type": "int64", "format": "int64", "example": 100, "description": "Optical channel spacing" }, "spacingMultiplier": { "type": "integer", "format": "int64", "example": 4, "description": "Optical channel spacing multiplier" }, "slotGranularity": { "type": "int64", "format": "int64", "example": 8 }, "ochSignalId": { "type": "integer", "format": "int64", "example": 1, "description": "Optical channel signal ID" }, "tunnelId": { "type": "int64", "format": "int64", "example": 5, "description": "Tunnel ID" }, "ochSignalType": { "type": "int64", "format": "int64", "example": 1, "description": "Optical channel signal type" }, "oduSignalId": { "type": "int64", "format": "int64", "example": 1, "description": "ODU (Optical channel Data Unit) signal ID." }, "tributaryPortNumber": { "type": "int64", "format": "int64", "example": 11, "description": "OPU (Optical channel Payload Unit) port number." }, "tributarySlotLen": { "type": "int64", "format": "int64", "example": 80, "description": "OPU (Optical channel Payload Unit) slot length." }, "tributarySlotBitmap": { "type": "array", "title": "tributarySlotBitmap", "description": "OPU (Optical channel Payload Unit) slot bitmap.", "required": [ "byte", "port" ], "items": { "type": "byte", "title": "byte", "example": 1 } }, "oduSignalType": { "type": "int64", "format": "int64", "example": 4, "description": "ODU (Optical channel Data Unit) signal type." } } } } } } } } } } }, "FlowsBatchPost": { "type": "object", "title": "flows", "required": [ "flows" ], "properties": { "flows": { "type": "array", "xml": { "name": "flows", "wrapped": true }, "items": { "type": "object", "title": "flow", "required": [ "priority", "timeout", "isPermanent", "deviceId" ], "properties": { "priority": { "type": "integer", "format": "int32", "example": 40000 }, "timeout": { "type": "integer", "format": "int32", "example": 0 }, "isPermanent": { "type": "boolean", "example": true }, "deviceId": { "type": "string", "example": "of:0000000000000001" }, "treatment": { "type": "object", "title": "treatment", "required": [ "instructions", "deferred" ], "properties": { "instructions": { "type": "array", "title": "treatment", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instructions", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "example": "OUTPUT" }, "port": { "type": "string", "example": "CONTROLLER" } } } } } }, "selector": { "type": "object", "title": "selector", "required": [ "criteria" ], "properties": { "criteria": { "type": "array", "xml": { "name": "criteria", "wrapped": true }, "items": { "type": "object", "title": "criteria", "properties": { "type": { "type": "string", "description": "Ethernet field name", "example": "ETH_TYPE" }, "ethType": { "type": "int64", "format": "int64", "example": "0x88cc", "description": "Ethernet frame type" } } } } } } } } } } }, "FlowRules": { "type": "object", "title": "flows", "required": [ "flows" ], "properties": { "flows": { "type": "array", "xml": { "name": "flows", "wrapped": true }, "items": { "type": "object", "title": "flow", "required": [ "id", "tableId", "appId", "groupId", "priority", "timeout", "isPermanent", "deviceId", "liveType" ], "properties": { "id": { "type": "string", "example": "12103425214920339" }, "tableId": { "type": "integer", "format": "int32", "example": 3 }, "appId": { "type": "string", "example": "org.onosproject.core" }, "groupId": { "type": "integer", "format": "int64", "example": 0 }, "priority": { "type": "integer", "format": "int32", "example": 40000 }, "timeout": { "type": "integer", "format": "int32", "example": 0 }, "isPermanent": { "type": "boolean", "example": true }, "deviceId": { "type": "string", "example": "of:0000000000000003" }, "liveType": { "type": "string", "example": "UNKNOWN" }, "treatment": { "type": "object", "title": "treatment", "required": [ "instructions", "deferred" ], "properties": { "instructions": { "type": "array", "title": "treatment", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instruction", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "example": "OUTPUT" }, "port": { "type": "string", "example": "CONTROLLER" } } } }, "deferred": { "type": "array", "xml": { "name": "deferred", "wrapped": true }, "items": { "type": "string" } } } }, "selector": { "type": "object", "title": "selector", "required": [ "criteria" ], "properties": { "criteria": { "type": "array", "xml": { "name": "criteria", "wrapped": true }, "items": { "type": "object", "title": "criteria", "properties": { "type": { "type": "string", "description": "Ethernet field name", "example": "ETH_TYPE" }, "ethType": { "type": "int64", "format": "int64", "example": "0x88cc", "description": "Ethernet frame type" }, "mac": { "type": "string", "example": "00:00:11:00:00:01" }, "port": { "type": "int64", "format": "int64", "example": 1, "description": "Match port" }, "metadata": { "type": "Hex16", "format": "Hex16", "example": "0xabcdL", "description": "Metadata passed between tables" }, "vlanId": { "type": "uint16", "format": "uint16", "example": "0x1000" }, "priority": { "type": "int64", "format": "int64", "example": 1, "description": "VLAN priority." }, "ipDscp": { "type": "byte", "format": "byte", "description": "IP DSCP (6 bits in ToS field)" }, "ipEcn": { "type": "byte", "format": "byte", "description": "IP ECN (2 bits in ToS field)." }, "protocol": { "type": "uint16", "format": "uint16", "example": 1, "description": "IP protocol" }, "ip": { "type": "string", "example": "10.1.1.0/24", "description": "IP source address" }, "tcpPort": { "type": "integer", "format": "uint16", "example": 1, "description": "TCP source address" }, "udpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "UDP source address" }, "sctpPort": { "type": "uint16", "format": "uint16", "example": 1, "description": "SCTP source address" }, "icmpType": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "icmpCode": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV4 code (RFC0792)" }, "flowLabel": { "type": "Hex16", "format": "Hex16", "example": "0xffffe", "description": "IPv6 Flow Label (RFC 6437)" }, "icmpv6Type": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 type (RFC2463)" }, "icmpv6Code": { "type": "uint16", "format": "uint16", "example": 1, "description": "Internet Control Message Protocol for IPV6 code (RFC2463)" }, "targetAddress": { "type": "String", "example": "10.1.1.0/24", "description": "IPv6 Neighbor discovery target address" }, "label": { "type": "int32", "format": "int32", "example": 1, "description": "MPLS label" }, "exthdrFlags": { "type": "int64", "format": "int64", "example": 1, "description": "IPv6 extension header pseudo-field" }, "lambda": { "type": "int64", "format": "int64", "example": 1, "description": "wavelength abstraction" }, "gridType": { "type": "String", "example": "DWDM", "description": "Type of wavelength grid" }, "channelSpacing": { "type": "int64", "format": "int64", "example": 100, "description": "Optical channel spacing" }, "spacingMultiplier": { "type": "integer", "format": "int64", "example": 4, "description": "Optical channel spacing multiplier" }, "slotGranularity": { "type": "int64", "format": "int64", "example": 8 }, "ochSignalId": { "type": "integer", "format": "int64", "example": 1, "description": "Optical channel signal ID" }, "tunnelId": { "type": "int64", "format": "int64", "example": 5, "description": "Tunnel ID" }, "ochSignalType": { "type": "int64", "format": "int64", "example": 1, "description": "Optical channel signal type" }, "oduSignalId": { "type": "int64", "format": "int64", "example": 1, "description": "ODU (Optical channel Data Unit) signal ID." }, "tributaryPortNumber": { "type": "int64", "format": "int64", "example": 11, "description": "OPU (Optical channel Payload Unit) port number." }, "tributarySlotLen": { "type": "int64", "format": "int64", "example": 80, "description": "OPU (Optical channel Payload Unit) slot length." }, "tributarySlotBitmap": { "type": "array", "title": "tributarySlotBitmap", "description": "OPU (Optical channel Payload Unit) slot bitmap.", "required": [ "byte", "port" ], "items": { "type": "byte", "title": "byte", "example": 1 } }, "oduSignalType": { "type": "int64", "format": "int64", "example": 4, "description": "ODU (Optical channel Data Unit) signal type." } } } } } } } } } } }, "FlowsPost": { "type": "object", "title": "flow", "required": [ "priority", "timeout", "isPermanent", "deviceId" ], "properties": { "priority": { "type": "integer", "format": "int32", "example": 40000 }, "timeout": { "type": "integer", "format": "int32", "example": 0 }, "isPermanent": { "type": "boolean", "example": true }, "deviceId": { "type": "string", "example": "of:0000000000000001" }, "treatment": { "type": "object", "title": "treatment", "required": [ "instructions", "deferred" ], "properties": { "instructions": { "type": "array", "title": "treatment", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instructions", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "example": "OUTPUT" }, "port": { "type": "string", "example": "CONTROLLER" } } } } } }, "selector": { "type": "object", "title": "selector", "required": [ "criteria" ], "properties": { "criteria": { "type": "array", "xml": { "name": "criteria", "wrapped": true }, "items": { "type": "object", "title": "criteria", "properties": { "type": { "type": "string", "description": "Ethernet field name", "example": "ETH_TYPE" }, "ethType": { "type": "int64", "format": "int64", "example": "0x88cc", "description": "Ethernet frame type" } } } } } } } }, "Groups": { "type": "object", "title": "groups", "required": [ "groups" ], "properties": { "groups": { "type": "array", "xml": { "name": "groups", "wrapped": true }, "items": { "type": "object", "title": "group", "required": [ "id", "state", "life", "packets", "bytes", "referenceCount", "type", "deviceId", "appId", "appCookie", "buckets" ], "properties": { "id": { "type": "string", "description": "group id", "example": "1" }, "state": { "type": "string", "description": "state of the group object", "example": "PENDING_ADD" }, "life": { "type": "integer", "format": "int64", "description": "number of milliseconds this group has been alive", "example": 69889 }, "packets": { "type": "integer", "format": "int64", "description": "number of packets processed by this group", "example": 22546 }, "bytes": { "type": "integer", "format": "int64", "description": "number of bytes processed by this group", "example": 1826226 }, "referenceCount": { "type": "integer", "format": "int64", "description": "number of flow rules or other groups reference this group", "example": 1826226 }, "type": { "type": "string", "description": "types of the group", "example": "ALL" }, "deviceId": { "type": "string", "description": "device identifier", "example": "of:0000000000000003" }, "appId": { "type": "string", "description": "application identifier", "example": "org.onosproject.rest" }, "appCookie": { "type": "string", "description": "application cookie", "example": "0x1234abcd" }, "buckets": { "type": "array", "xml": { "name": "buckets", "wrapped": true }, "items": { "type": "object", "title": "buckets", "required": [ "treatment", "weight", "watchPort", "watchGroup" ], "properties": { "treatment": { "type": "object", "title": "treatment", "required": [ "instructions", "deferred" ], "properties": { "instructions": { "type": "array", "title": "treatment", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instructions", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "description": "instruction type", "example": "OUTPUT" }, "port": { "type": "string", "description": "port number", "example": "2" } } } } } }, "weight": { "type": "integer", "format": "int16", "description": "weight of select group bucket", "example": "1.0" }, "watchPort": { "type": "string", "description": "port number used for liveness detection for a failover bucket", "example": "2" }, "watchGroup": { "type": "string", "description": "group identifier used for liveness detection for a failover bucket", "example": "1" } } } } } } } } }, "Group": { "type": "object", "title": "group", "required": [ "id", "state", "life", "packets", "bytes", "referenceCount", "type", "deviceId", "appId", "appCookie", "buckets" ], "properties": { "id": { "type": "string", "description": "group id", "example": "1" }, "state": { "type": "string", "description": "state of the group object", "example": "PENDING_ADD" }, "life": { "type": "integer", "format": "int64", "description": "number of milliseconds this group has been alive", "example": 69889 }, "packets": { "type": "integer", "format": "int64", "description": "number of packets processed by this group", "example": 22546 }, "bytes": { "type": "integer", "format": "int64", "description": "number of bytes processed by this group", "example": 1826226 }, "referenceCount": { "type": "integer", "format": "int64", "description": "number of flow rules or other groups reference this group", "example": 1826226 }, "type": { "type": "string", "description": "types of the group", "example": "ALL" }, "deviceId": { "type": "string", "description": "device identifier", "example": "of:0000000000000003" }, "appId": { "type": "string", "description": "application identifier", "example": "org.onosproject.rest" }, "appCookie": { "type": "string", "description": "application cookie", "example": "0x1234abcd" }, "buckets": { "type": "array", "xml": { "name": "buckets", "wrapped": true }, "items": { "type": "object", "title": "buckets", "required": [ "treatment", "weight", "watchPort", "watchGroup" ], "properties": { "treatment": { "type": "object", "title": "treatment", "required": [ "instructions", "deferred" ], "properties": { "instructions": { "type": "array", "title": "treatment", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instructions", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "description": "instruction type", "example": "OUTPUT" }, "port": { "type": "string", "description": "port number", "example": "2" } } } } } }, "weight": { "type": "integer", "format": "int16", "description": "weight of select group bucket", "example": "1.0" }, "watchPort": { "type": "string", "description": "port number used for liveness detection for a failover bucket", "example": "2" }, "watchGroup": { "type": "string", "description": "group identifier used for liveness detection for a failover bucket", "example": "1" } } } } } }, "GroupsPost": { "type": "object", "title": "group", "required": [ "type", "appCookie", "groupId", "buckets" ], "properties": { "type": { "type": "string", "example": "ALL" }, "appCookie": { "type": "string", "description": "application cookie. Arbitrary length byte array represented in hex string", "example": "0x1234abcd" }, "groupId": { "type": "string", "example": "1" }, "buckets": { "type": "array", "xml": { "name": "buckets", "wrapped": true }, "items": { "type": "object", "title": "buckets", "required": [ "treatment", "weight", "watchPort", "watchGroup" ], "properties": { "treatment": { "type": "object", "title": "treatment", "required": [ "instructions", "deferred" ], "properties": { "instructions": { "type": "array", "title": "treatment", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instructions", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "example": "OUTPUT" }, "port": { "type": "string", "example": "2" } } } } } } } } } } }, "GroupsBucketsPost": { "type": "object", "title": "buckets", "required": [ "buckets" ], "properties": { "buckets": { "type": "array", "xml": { "name": "buckets", "wrapped": true }, "items": { "type": "object", "title": "buckets", "required": [ "treatment", "weight", "watchPort", "watchGroup" ], "properties": { "treatment": { "type": "object", "title": "treatment", "required": [ "instructions", "deferred" ], "properties": { "instructions": { "type": "array", "title": "treatment", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instructions", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "example": "OUTPUT" }, "port": { "type": "string", "example": "2" } } } } } } } } } } }, "Hosts": { "type": "object", "title": "hosts", "required": [ "hosts" ], "properties": { "hosts": { "type": "array", "xml": { "name": "hosts", "wrapped": true }, "items": { "type": "object", "title": "host", "required": [ "id", "mac", "vlan", "ipAddresses", "location" ], "properties": { "id": { "type": "string", "example": "46:E4:3C:A4:17:C8/-1" }, "mac": { "type": "string", "example": "46:E4:3C:A4:17:C8" }, "vlan": { "type": "string", "example": "-1" }, "ipAddresses": { "type": "array", "xml": { "name": "hosts", "wrapped": true }, "items": { "type": "string", "example": "127.0.0.1" } }, "locations": { "type": "array", "items": { "type": "object", "title": "location", "required": [ "elementId", "port" ], "properties": { "elementId": { "type": "string", "example": "of:0000000000000002" }, "port": { "type": "string", "example": "3" } } } }, "auxLocations": { "required": false, "type": "array", "items": { "type": "object", "title": "location", "required": [ "elementId", "port" ], "properties": { "elementId": { "type": "string", "example": "of:0000000000000003" }, "port": { "type": "string", "example": "4" } } } }, "innerVlan": { "type": "string", "example": "-1" }, "outerTpid": { "type": "string", "example": "unknown" } } } } } }, "Host": { "type": "object", "title": "host", "required": [ "id", "mac", "vlan", "ipAddresses", "location" ], "properties": { "id": { "type": "string", "example": "46:E4:3C:A4:17:C8/-1" }, "mac": { "type": "string", "example": "46:E4:3C:A4:17:C8" }, "vlan": { "type": "string", "example": "-1" }, "ipAddresses": { "type": "array", "xml": { "name": "hosts", "wrapped": true }, "items": { "type": "string", "example": "127.0.0.1" } }, "locations": { "type": "array", "items": { "type": "object", "title": "location", "required": [ "elementId", "port" ], "properties": { "elementId": { "type": "string", "example": "of:0000000000000002" }, "port": { "type": "string", "example": "3" } } } }, "auxLocations": { "required": false, "type": "array", "items": { "type": "object", "title": "location", "required": [ "elementId", "port" ], "properties": { "elementId": { "type": "string", "example": "of:0000000000000003" }, "port": { "type": "string", "example": "4" } } } }, "innerVlan": { "type": "string", "example": "-1" }, "outerTpid": { "type": "string", "example": "unknown" } } }, "HostPut": { "type": "object", "title": "host", "required": [ "mac", "vlan", "ipAddresses", "location" ], "properties": { "mac": { "type": "string", "example": "46:E4:3C:A4:17:C8" }, "vlan": { "type": "string", "example": "-1" }, "ipAddresses": { "type": "array", "xml": { "name": "hosts", "wrapped": true }, "items": { "type": "string", "example": "127.0.0.1" } }, "locations": { "type": "array", "items": { "type": "object", "title": "location", "required": [ "elementId", "port" ], "properties": { "elementId": { "type": "string", "example": "of:0000000000000002" }, "port": { "type": "string", "example": "3" } } } }, "auxLocations": { "required": false, "type": "array", "items": { "type": "object", "title": "location", "required": [ "elementId", "port" ], "properties": { "elementId": { "type": "string", "example": "of:0000000000000003" }, "port": { "type": "string", "example": "4" } } } }, "innerVlan": { "required": false, "type": "string", "example": "10" }, "outerTpid": { "required": false, "type": "string", "example": "0x88a8" } } }, "Intents": { "type": "object", "title": "intents", "required": [ "intents" ], "properties": { "intents": { "type": "array", "xml": { "name": "intents", "wrapped": true }, "items": { "type": "object", "title": "host", "required": [ "type", "id", "appId", "state" ], "properties": { "type": { "type": "string", "example": "HostToHostIntent" }, "id": { "type": "string", "example": "0x6" }, "appId": { "type": "string", "example": "org.onosproject.ovsdb" }, "priority": { "type": "integer", "format": "int64", "example": 55 }, "resources": { "type": "array", "xml": { "name": "resources", "wrapped": true }, "items": { "type": "string", "example": "46:E4:3C:A4:17:C8/-1" }, "state": { "type": "string", "example": "INSTALLED" } } } } } } }, "Minisummary": { "type": "object", "title": "All", "required": [ "All" ], "properties": { "All": { "required": [ "total", "installed", "failed", "installReq", "installing", "compiling", "recompiling", "withdrawReq", "withdrawing", "withdrawn", "unknownState" ], "properties": { "total": { "type": "integer", "example": 1 }, "installed": { "type": "integer", "example": 0 }, "failed": { "type": "integer", "example": 0 }, "installReq": { "type": "integer", "example": 0 }, "installing": { "type": "integer", "example": 0 }, "compiling": { "type": "integer", "example": 0 }, "recompiling": { "type": "integer", "example": 0 }, "withdrawReq": { "type": "integer", "example": 0 }, "withdrawing": { "type": "integer", "example": 0 }, "withdrawn": { "type": "integer", "example": 0 }, "unknownState": { "type": "integer", "example": 0 } } } } }, "Relatedflows": { "type": "object", "title": "relatedflows", "required": [ "id", "appId", "type", "paths" ], "properties": { "id": { "type": "string", "example": "0x5" }, "appId": { "type": "string", "example": "org.onosproject.ovsdb" }, "type": { "type": "string", "example": "HostToHostIntent" }, "paths": { "type": "array", "xml": { "name": "paths", "wrapped": true }, "items": { "type": "array", "xml": { "name": "flows", "wrapped": true }, "items": { "type": "object", "title": "flow", "required": [ "id", "tableId", "appId", "groupId", "priority", "timeout", "isPermanent", "deviceId", "state", "life", "packets", "bytes", "lastSeen" ], "properties": { "id": { "type": "string", "example": "12103425214920339" }, "tableId": { "type": "integer", "format": "int32", "example": 3 }, "appId": { "type": "string", "example": "org.onosproject.core" }, "groupId": { "type": "integer", "format": "int64", "example": 0 }, "priority": { "type": "integer", "format": "int32", "example": 40000 }, "timeout": { "type": "integer", "format": "int32", "example": 0 }, "isPermanent": { "type": "boolean", "example": true }, "deviceId": { "type": "string", "example": "of:0000000000000003" }, "state": { "type": "string", "example": "ADDED" }, "life": { "type": "integer", "format": "int64", "example": 69889 }, "packets": { "type": "integer", "format": "int64", "example": 22546 }, "bytes": { "type": "integer", "format": "int64", "example": 1826226 }, "lastSeen": { "type": "integer", "format": "int64", "example": 1447892365670 }, "treatment": { "type": "object", "title": "treatment", "required": [ "instructions", "deferred" ], "properties": { "instructions": { "type": "array", "title": "treatment", "required": [ "properties", "port" ], "items": { "type": "object", "title": "instruction", "required": [ "type", "port" ], "properties": { "type": { "type": "string", "example": "OUTPUT" }, "port": { "type": "string", "example": "CONTROLLER" } } } }, "deferred": { "type": "array", "xml": { "name": "deferred", "wrapped": true }, "items": { "type": "string" } } } }, "selector": { "type": "object", "title": "selector", "required": [ "criteria" ], "properties": { "criteria": { "type": "array", "xml": { "name": "criteria", "wrapped": true }, "items": { "type": "object", "title": "criteria", "properties": { "type": { "type": "string", "description": "Ethernet field name", "example": "ETH_TYPE" }, "ethType": { "type": "int64", "format": "int64", "example": "0x88cc", "description": "Ethernet frame type" }, "mac": { "type": "string", "example": "00:00:11:00:00:01" }, "port": { "type": "int64", "format": "int64", "example": 1, "description": "Match port" } } } } } } } } } } } }, "IntentHost": { "type": "object", "title": "host", "required": [ "type", "appId", "priority", "one", "two" ], "properties": { "type": { "type": "string", "example": "HostToHostIntent" }, "appId": { "type": "string", "example": "org.onosproject.ovsdb" }, "priority": { "type": "integer", "format": "int64", "example": 55 }, "one": { "type": "string", "example": "46:E4:3C:A4:17:C8/-1" }, "two": { "type": "string", "example": "08:00:27:56:8a:15/-1" } } }, "LinksGet": { "type": "object", "title": "links", "required": [ "links" ], "properties": { "links": { "type": "array", "xml": { "name": "links", "wrapped": true }, "items": { "type": "object", "title": "link", "required": [ "src", "dst", "type", "state" ], "properties": { "src": { "type": "object", "title": "src", "required": [ "port", "device" ], "properties": { "port": { "type": "string", "example": "3" }, "device": { "type": "string", "example": "of:0000000000000002" } } }, "dst": { "type": "object", "title": "dst", "required": [ "port", "device" ], "properties": { "port": { "type": "string", "example": "2" }, "device": { "type": "string", "example": "of:0000000000000003" } } }, "type": { "type": "string", "example": "DIRECT" }, "state": { "type": "string", "example": "ACTIVE" } } } } } }, "VanishedLink": { "type": "object", "required": [ "active" ], "properties": { "active": { "type": "boolean", "example": true } } }, "MastershipRole": { "type": "object", "title": "role", "required": [ "role" ], "properties": { "role": { "type": "string", "example": "MASTER" } } }, "NodeId": { "type": "object", "title": "nodeId", "required": [ "nodeId" ], "properties": { "nodeId": { "type": "string", "example": "1" } } }, "RoleInfo": { "type": "object", "title": "roleInfo", "required": [ "master", "backups" ], "properties": { "master": { "type": "string", "example": "1" }, "backups": { "type": "array", "xml": { "name": "backups", "wrapped": true }, "items": { "type": "string", "example": "1" } } } }, "DeviceIds": { "type": "object", "title": "deviceIds", "required": [ "deviceIds" ], "properties": { "deviceIds": { "type": "array", "xml": { "name": "deviceId", "wrapped": true }, "items": { "type": "string", "example": "of:0000000000000001" } } } }, "MastershipPut": { "type": "object", "title": "mastership", "required": [ "deviceId", "nodeId", "role" ], "properties": { "deviceId": { "type": "string", "example": "of:0000000000000001" }, "nodeId": { "type": "string", "example": "1" }, "role": { "type": "string", "example": "MASTER" } } }, "Meters": { "type": "object", "title": "meters", "required": [ "meters" ], "properties": { "meters": { "type": "array", "xml": { "name": "meters", "wrapped": true }, "items": { "type": "object", "title": "meter", "required": [ "id", "appId", "deviceId", "unit", "burst", "state", "life", "refCount", "packets", "bytes", "bands" ], "properties": { "id": { "type": "string", "example": "1" }, "appId": { "type": "string", "example": "org.onosproject.rest" }, "deviceId": { "type": "string", "example": "of:0000000000000001" }, "unit": { "type": "string", "example": "KB_PER_SEC" }, "burst": { "type": "boolean", "example": true }, "state": { "type": "string", "example": "ADDED" }, "life": { "type": "integer", "format": "int64", "example": 0 }, "refCount": { "type": "integer", "format": "int64", "example": 0 }, "packets": { "type": "integer", "format": "int64", "example": 0 }, "bytes": { "type": "integer", "format": "int64", "example": 0 }, "bands": { "type": "array", "xml": { "name": "bands", "wrapped": true }, "items": { "type": "object", "title": "bands", "required": [ "type", "rate", "burstSize", "prec", "packets", "bytes" ], "properties": { "type": { "type": "string", "example": "REMARK" }, "rate": { "type": "integer", "format": "int64", "example": 0 }, "burstSize": { "type": "integer", "format": "int64", "example": 0 }, "prec": { "type": "integer", "format": "int16", "example": 0 }, "packets": { "type": "integer", "format": "int64", "example": 0 }, "bytes": { "type": "integer", "format": "int64", "example": 0 } } } } } } } } }, "Meter": { "type": "object", "title": "meter", "required": [ "id", "appId", "deviceId", "unit", "burst", "state", "life", "refCount", "packets", "bytes", "bands" ], "properties": { "id": { "type": "string", "example": "1" }, "appId": { "type": "string", "example": "org.onosproject.rest" }, "deviceId": { "type": "string", "example": "of:0000000000000001" }, "unit": { "type": "string", "example": "KB_PER_SEC" }, "burst": { "type": "boolean", "example": true }, "state": { "type": "string", "example": "ADDED" }, "life": { "type": "integer", "format": "int64", "example": 0 }, "refCount": { "type": "integer", "format": "int64", "example": 0 }, "packets": { "type": "integer", "format": "int64", "example": 0 }, "bytes": { "type": "integer", "format": "int64", "example": 0 }, "bands": { "type": "array", "xml": { "name": "bands", "wrapped": true }, "items": { "type": "object", "title": "bands", "required": [ "type", "rate", "burstSize", "prec", "packets", "bytes" ], "properties": { "type": { "type": "string", "example": "REMARK" }, "rate": { "type": "integer", "format": "int64", "example": 0 }, "burstSize": { "type": "integer", "format": "int64", "example": 0 }, "prec": { "type": "integer", "format": "int16", "example": 0 }, "packets": { "type": "integer", "format": "int64", "example": 0 }, "bytes": { "type": "integer", "format": "int64", "example": 0 } } } } } }, "MeterPost": { "type": "object", "title": "meter", "required": [ "deviceId", "unit", "burst", "bands" ], "properties": { "deviceId": { "type": "string", "example": "of:0000000000000001" }, "unit": { "type": "string", "example": "KB_PER_SEC" }, "burst": { "type": "boolean", "example": true }, "bands": { "type": "array", "xml": { "name": "bands", "wrapped": true }, "items": { "type": "object", "title": "bands", "required": [ "type", "rate", "burstSize", "prec" ], "properties": { "type": { "type": "string", "example": "REMARK" }, "rate": { "type": "integer", "format": "int64", "example": "0" }, "burstSize": { "type": "integer", "format": "int64", "example": "0" }, "prec": { "type": "integer", "format": "int16", "example": "0" } } } } } }, "Metrics": { "type": "object", "title": "metrics", "required": [ "metrics" ], "properties": { "metrics": { "type": "array", "xml": { "name": "metric", "wrapped": true }, "items": { "type": "object", "title": "metric", "required": [ "metric" ], "properties": { "metric": { "type": "object", "title": "property", "optional": [ "type" ], "properties": { "timer": { "type": "object", "title": "timer", "required": [ "counter", "mean_rate", "1_min_rate", "5_min_rate", "15_min_rate", "mean", "min", "max", "stddev" ], "properties": { "counter": { "type": "integer", "example": "1" }, "mean_rate": { "type": "double", "example": "1.0" }, "1_min_rate": { "type": "double", "example": "1.0" }, "5_min_rate": { "type": "double", "example": "1.0" }, "15_min_rate": { "type": "double", "example": "1.0" }, "mean": { "type": "double", "example": "1.0" }, "min": { "type": "double", "example": "1.0" }, "max": { "type": "double", "example": "1.0" }, "stddev": { "type": "double", "example": "1.0" } } } } } } } } } }, "Metric": { "type": "object", "title": "metric", "required": [ "metric" ], "properties": { "metric": { "type": "object", "title": "property", "optional": [ "type" ], "properties": { "timer": { "type": "object", "title": "timer", "required": [ "counter", "mean_rate", "1_min_rate", "5_min_rate", "15_min_rate", "mean", "min", "max", "stddev" ], "properties": { "counter": { "type": "integer", "example": "1" }, "mean_rate": { "type": "double", "example": "1.0" }, "1_min_rate": { "type": "double", "example": "1.0" }, "5_min_rate": { "type": "double", "example": "1.0" }, "15_min_rate": { "type": "double", "example": "1.0" }, "mean": { "type": "double", "example": "1.0" }, "min": { "type": "double", "example": "1.0" }, "max": { "type": "double", "example": "1.0" }, "stddev": { "type": "double", "example": "1.0" } } } } } } }, "McastRoutesGet": { "type": "object", "title": "routes", "required": [ "routes" ], "properties": { "routes": { "type": "array", "xml": { "name": "routes", "wrapped": true }, "items": { "type": "object", "title": "route", "required": [ "source", "group", "type" ], "properties": { "source": { "type": "string", "example": "10.1.1.0", "description": "Multicast source IP address" }, "group": { "type": "string", "example": "10.1.1.0", "description": "Multicast group IP address" }, "type": { "type": "string", "example": "STATIC", "description": "Type of the multicast route" } } } } } }, "McastRoutePost": { "type": "object", "title": "route", "required": [ "source", "group" ], "optional": [ "ingress" ], "properties": { "source": { "type": "string", "example": "10.1.1.0", "description": "Multicast source IP address" }, "group": { "type": "string", "example": "10.1.1.0", "description": "Multicast group IP address" }, "ingress": { "type": "string", "example": "of:0000000000000001/1", "description": "Multicast ingress Connection Point device and port" } } }, "McastSinkPost": { "type": "object", "title": "sinks", "required": [ "sinks" ], "properties": { "sinks": { "type": "array", "xml": { "name": "sinks", "wrapped": true }, "items": { "type": "string", "title": "sink", "example": "of:0000000000000001/1" } } } }, "PacketProcessorsGet": { "type": "object", "title": "packet-processors", "required": [ "packet-processors" ], "properties": { "packet-processors": { "type": "array", "xml": { "name": "packet-processors", "wrapped": true }, "items": { "type": "object", "title": "packet-processors", "required": [ "priority", "class", "packets", "avgNanos" ], "properties": { "priority": { "type": "string", "example": "advisor(0)" }, "class": { "type": "string", "example": "org.onosproject.provider.host.impl.HostLocationProvider$InternalHostProvider" }, "packets": { "type": "integer", "example": 568376 }, "avgNanos": { "type": "integer", "example": 5683 } } } } } }, "Paths": { "type": "object", "title": "paths", "required": [ "paths" ], "properties": { "paths": { "type": "array", "xml": { "name": "hosts", "wrapped": true }, "items": { "type": "object", "title": "host", "required": [ "cost", "links" ], "properties": { "cost": { "type": "integer", "format": "int64", "example": 2 }, "links": { "type": "array", "xml": { "name": "links", "wrapped": true }, "items": { "type": "object", "title": "link", "required": [ "src", "dst", "type", "state" ], "properties": { "src": { "type": "object", "title": "src", "required": [ "port", "device" ], "properties": { "port": { "type": "string", "example": "3" }, "device": { "type": "string", "example": "of:0000000000000002" } } }, "dst": { "type": "object", "title": "dst", "required": [ "port", "device" ], "properties": { "port": { "type": "string", "example": "2" }, "device": { "type": "string", "example": "of:0000000000000003" } } }, "type": { "type": "string", "example": "DIRECT" }, "state": { "type": "string", "example": "ACTIVE" } } } } } } } } }, "Regions": { "type": "object", "title": "regions", "required": [ "regions" ], "properties": { "regions": { "type": "array", "xml": { "name": "regions", "wrapped": true }, "items": { "type": "object", "title": "region", "required": [ "id", "name", "type", "masters" ], "properties": { "id": { "type": "string", "example": "1" }, "name": { "type": "string", "example": "region" }, "type": { "type": "string", "example": "ROOM" }, "masters": { "type": "array", "xml": { "name": "masters", "wrapped": true }, "items": { "type": "array", "xml": { "name": "masters", "wrapped": true }, "items": { "type": "string", "example": "1" } } } } } } } }, "Region": { "type": "object", "title": "region", "required": [ "id", "name", "type", "masters" ], "properties": { "id": { "type": "string", "example": "1" }, "name": { "type": "string", "example": "region" }, "type": { "type": "string", "example": "ROOM" }, "masters": { "type": "array", "xml": { "name": "masters", "wrapped": true }, "items": { "type": "array", "xml": { "name": "masters", "wrapped": true }, "items": { "type": "string", "example": "1" } } } } }, "RegionDeviceIds": { "type": "object", "title": "deviceIds", "required": [ "deviceIds" ], "properties": { "deviceIds": { "type": "array", "xml": { "name": "deviceIds", "wrapped": true }, "items": { "type": "string", "example": "of:0000000000000001" } } } }, "RegionPost": { "type": "object", "title": "region", "required": [ "id", "name", "type", "masters" ], "properties": { "id": { "type": "string", "example": "1" }, "name": { "type": "string", "example": "region" }, "type": { "type": "string", "example": "ROOM" }, "masters": { "type": "array", "xml": { "name": "masters", "wrapped": true }, "items": { "type": "array", "xml": { "name": "masters", "wrapped": true }, "items": { "type": "string", "example": "1" } } } } }, "StatisticsFlowsLink": { "type": "object", "title": "loads", "required": [ "loads" ], "properties": { "loads": { "type": "array", "required": [ "loads" ], "xml": { "name": "loads", "wrapped": true }, "items": { "type": "object", "title": "loads", "required": [ "rate", "latest", "valid", "time", "link" ], "properties": { "rate": { "type": "integer", "format": "int64", "example": 0 }, "latest": { "type": "string", "example": "of:0000000000000001" }, "valid": { "type": "boolean", "example": false }, "time": { "type": "integer", "format": "int64", "example": 1447980119542 }, "link": { "type": "string", "example": "http://10.128.12.1:8181/onos/v1/links?device=of:0000000000000002&port=3" } } } } } }, "StatisticsFlowsTables": { "type": "object", "title": "statistics", "required": [ "statistics" ], "properties": { "statistics": { "type": "array", "required": [ "statistics" ], "xml": { "name": "statistics", "wrapped": true }, "items": { "type": "object", "title": "statistics", "required": [ "table" ], "properties": { "deviceId": { "type": "string", "example": "of:0000000000000001" }, "table": { "type": "array", "xml": { "name": "table", "wrapped": true }, "items": { "type": "object", "title": "tables", "required": [ "tableId", "deviceId", "activeEntries", "packetsLookedUp", "packetsMathced" ], "properties": { "tableId": { "type": "integer", "format": "int64", "example": 0 }, "deviceId": { "type": "string", "example": "of:0000000000000001" }, "activeEntries": { "type": "integer", "format": "int64", "example": 3 }, "packetsLookedUp": { "type": "integer", "format": "int64", "example": 458530 }, "packetsMathced": { "type": "integer", "format": "int64", "example": 458501 } } } } } } } } }, "StatisticsPorts": { "type": "object", "title": "all-port-statistics", "required": [ "statistics" ], "properties": { "statistics": { "type": "array", "required": [ "statistics" ], "xml": { "name": "statistics", "wrapped": true }, "items": { "type": "object", "title": "statistics", "required": [ "ports" ], "properties": { "deviceId": { "type": "string", "example": "of:0000000000000001" }, "ports": { "type": "array", "xml": { "name": "ports", "wrapped": true }, "items": { "type": "object", "title": "ports", "required": [ "port", "packetsReceived", "packetsSent", "bytesReceived", "bytesSent", "packetsRxDropped", "packetsTxDropped", "packetsRxErrors", "packetsTxErrors", "durationSec" ], "properties": { "port": { "type": "integer", "format": "int64", "example": 1 }, "packetsReceived": { "type": "integer", "format": "int64", "example": 98 }, "packetsSent": { "type": "integer", "format": "int64", "example": 98 }, "bytesReceived": { "type": "integer", "format": "int64", "example": 9162 }, "bytesSent": { "type": "integer", "format": "int64", "example": 9162 }, "packetsRxDropped": { "type": "integer", "format": "int64", "example": 0 }, "packetsTxDropped": { "type": "integer", "format": "int64", "example": 0 }, "packetsRxErrors": { "type": "integer", "format": "int64", "example": 0 }, "packetsTxErrors": { "type": "integer", "format": "int64", "example": 0 }, "durationSec": { "type": "integer", "format": "int64", "example": 90 } } } } } } } } }, "StatisticsFlowsActiveEntries": { "type": "object", "title": "statistics", "required": [ "statistics" ], "properties": { "statistics": { "type": "array", "required": [ "statistics" ], "xml": { "name": "statistics", "wrapped": true }, "items": { "type": "object", "title": "statistics", "required": [ "device", "activeEntries" ], "properties": { "device": { "type": "string", "example": "of:0000000000000001" }, "activeEntries": { "type": "integer", "format": "int64", "example": 0 } } } } } }, "Topology": { "type": "object", "title": "topology", "required": [ "time", "devices", "links", "clusters" ], "properties": { "time": { "type": "integer", "format": "int64", "example": 183004405835967 }, "devices": { "type": "integer", "format": "int64", "example": 3 }, "links": { "type": "integer", "format": "int64", "example": 4 }, "clusters": { "type": "integer", "format": "int64", "example": 1 } } }, "TopologyClusters": { "type": "object", "title": "clusters", "required": [ "clusters" ], "properties": { "clusters": { "type": "array", "xml": { "name": "cluster", "wrapped": true }, "items": { "type": "object", "title": "cluster", "required": [ "id", "deviceCount", "linkCount", "root" ], "properties": { "id": { "type": "integer", "format": "int64", "example": 1 }, "deviceCount": { "type": "integer", "format": "int64", "example": 3 }, "linkCount": { "type": "integer", "format": "int64", "example": 4 }, "root": { "type": "string", "example": "of:0000000000000001" } } } } } }, "TopologyCluster": { "type": "object", "title": "device", "required": [ "id", "deviceCount", "linkCount", "root" ], "properties": { "id": { "type": "integer", "format": "int64", "example": 1 }, "deviceCount": { "type": "integer", "format": "int64", "example": 3 }, "linkCount": { "type": "integer", "format": "int64", "example": 4 }, "root": { "type": "string", "example": "of:0000000000000001" } } }, "TopologyClustersDevices": { "type": "object", "title": "devices", "required": [ "devices" ], "properties": { "devices": { "type": "array", "xml": { "name": "cluster", "wrapped": true }, "items": { "type": "string", "title": "device", "example": "of:0000000000000001" } } } }, "TopologyBroadcast": { "type": "object", "title": "response", "required": [ "broadcast" ], "properties": { "broadcast": { "type": "boolean", "example": true } } }, "TopologyInfrastructure": { "type": "object", "title": "response", "required": [ "infrastructure" ], "properties": { "infrastructure": { "type": "boolean", "example": true } } } } }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/davidlin2k/onos-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server