FlowsBatchPost.json 2.87 KB
{
  "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"
                    }
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}