{
  "$id": "schema.json",
  "type": "object",
  "schema": "http://json-schema.org/draft-07/schema#",
  "translate": true,
  "dynamicfields": true,
  "properties": {
    "ph_request_type": {
      "type": "string",
      "description": "type of request (internal to adapter)",
      "default": "showPortDetails",
      "enum": [
        "showPortDetails",
        "updatePort",
        "deletePort",
        "listPorts",
        "createPort"
      ],
      "external_name": "ph_request_type"
    },
    "portId": {
      "type": "string",
      "description": "The ID of the port.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "port_id"
    },
    "adminStateUp": {
      "type": "boolean",
      "description": "Filter the list result by the administrative state of the resource,\nwhich is up (true) or down (false).",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "admin_state_up"
    },
    "bindingHostId": {
      "type": "string",
      "description": "Filter the port list result by the ID of the host where the port resides.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "binding:host_id"
    },
    "deviceId": {
      "type": "string",
      "description": "Filter the port list result by the ID of the device that uses this port.\nFor example, a server instance or a logical router.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "device_id"
    },
    "deviceOwner": {
      "type": "string",
      "description": "Filter the port result list by the entity type that uses this port.\nFor example, compute:nova (server instance), network:dhcp\n(DHCP agent) or network:router_interface (ro...(description truncated)",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "device_owner"
    },
    "fixedIps": {
      "type": "string",
      "description": "Filter the port list result by the IP addresses for the port.\nThis field has one or multiple entries.\nEach entry consists of IP address (ip_address), IP address substring...(description truncated)",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "fixed_ips"
    },
    "ipAllocation": {
      "type": "string",
      "description": "Filter the port list result based on if the ports use deferred,\nimmediate or no IP allocation (none).",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "ip_allocation"
    },
    "macAddress": {
      "type": "string",
      "description": "Filter the port list result by the MAC address of the port.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "mac_address"
    },
    "networkId": {
      "type": "string",
      "description": "Filter the list result by the ID of the attached network.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "network_id"
    },
    "projectId": {
      "type": "string",
      "description": "Filter the list result by the ID of the project that owns the resource.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "project_id"
    },
    "revisionNumber": {
      "type": "number",
      "description": "Filter the list result by the revision number of the resource.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "revision_number"
    },
    "sortDir": {
      "type": "string",
      "description": "Sort direction. A valid value is asc (ascending) or desc\n(descending). You can specify multiple pairs of sort key and\nsort direction query parameters.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "sort_dir"
    },
    "sortKey": {
      "type": "string",
      "description": "Sorts by a port attribute. You can specify multiple pairs of sort key\nand sort direction query parameters. The sort keys are limited to:",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "sort_key"
    },
    "tenantId": {
      "type": "string",
      "description": "Filter the list result by the ID of the project that owns the resource.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "tenant_id"
    },
    "tagsAny": {
      "type": "string",
      "description": "A list of tags to filter the list result by.\nResources that match any tag in this list will be returned.\nTags in query must be separated by comma.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "tags-any"
    },
    "notTags": {
      "type": "string",
      "description": "A list of tags to filter the list result by.\nResources that match all tags in this list will be excluded.\nTags in query must be separated by comma.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "not-tags"
    },
    "notTagsAny": {
      "type": "string",
      "description": "A list of tags to filter the list result by.\nResources that match any tag in this list will be excluded.\nTags in query must be separated by comma.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "not-tags-any"
    },
    "macLearningEnabled": {
      "type": "boolean",
      "description": "Filter the list result by the mac_learning_enabled state of the resource,\nwhich is enabled (true) or disabled (false).",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "mac_learning_enabled"
    }
  },
  "definitions": {}
}