swagger.json•276 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
}
}
}
}
}