---
components:
  parameters:
    Async:
      description: Asyncronous request.
      name: async
      required: true
      schema:
        $ref: '#/components/schemas/Async'
    X-PacketFence-Server:
      description: Proxy CRUD to IPv4 address of a specific server in a cluster instead
        of LB.
      in: header
      name: X-PacketFence-Server
      required: true
      schema:
        pattern: \b((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(\.|$)){4}\b
        type: string
    cursor:
      description: The cursor pointer to fetch paginated results (from `prevCursor`
        and `nextCursor`).
      name: cursor
      schema:
        example: 0
        type: string
    fields:
      description: Comma delimited fields that should be added to the resource by
        performing joins. For example, in order to get the IP address of a node when
        calling the nodes endpoints, setting 'ip4log.ip' into this field will provide
        the latest IP address of the device in the 'ip4log.ip' field of every node
        that is returned.
      name: fields
      required: true
      schema:
        example:
        - mac
        - pid
        - ip4log.ip
        items:
          type: string
        type: array
    interface:
      description: The network interface.
      example: eth0
      in: path
      name: interface
      required: true
      schema:
        type: string
    ip:
      description: The IP address of the device.
      example: 1.2.3.4
      in: path
      name: ip
      required: true
      schema:
        type: string
    ipset_name:
      description: The name of the ipset to manipulate
      in: path
      name: ipset_name
      required: true
      schema:
        type: string
    limit:
      description: The maximum amount of entries to get.
      name: limit
      schema:
        enum:
        - 1
        - 5
        - 10
        - 25
        - 50
        - 100
        - 250
        - 500
        - 1000
        example: 1
        maximum: 1000
        minimum: 1
        type: integer
    local:
      description: The local is used to determine if the request should be forwarded
        to the rest of the cluster. A value of '0' forwards the request and either
        a missing or alternate value does not forward the request to the rest of the
        cluster.
      name: local
      required: true
      schema:
        default: 0
        type: integer
    locationlog_id:
      description: The locationlogs `PRIMARY_KEY`
      in: path
      name: locationlog_id
      required: true
      schema:
        type: string
    mac:
      description: The MAC address of the device.
      example: d3:4d:b4:c0:ff:ee
      in: path
      name: mac
      required: true
      schema:
        type: string
    network:
      example: 192.168.1.0
      in: path
      name: network
      required: true
      schema:
        type: string
    node_id:
      allowReserved: true
      description: The nodes `PRIMARY_KEY` (MAC Address)
      explode: false
      in: path
      name: node_id
      required: true
      schema:
        type: string
    search_query:
      description: The JSON encoded search query following the Search schema defined
        in this spec.
      in: path
      name: query
      required: true
      schema:
        $ref: '#/components/schemas/Search'
    service:
      description: Service unique identifier.
      in: path
      name: service
      required: true
      schema:
        enum:
        - api-frontend
        - fingerbank-collector
        - galera-autofix
        - haproxy-admin
        - haproxy-db
        - haproxy-portal
        - httpd.aaa
        - httpd.admin_dispatcher
        - httpd.dispatcher
        - httpd.portal
        - httpd.webservices
        - ip6tables
        - iptables
        - kafka
        - keepalived
        - mysql-probe
        - netdata
        - ntlm-auth-api
        - pfacct
        - pfconnector-client
        - pfconnector-server
        - pfcron
        - pfdetect
        - pfdhcp
        - pfdhcplistener
        - pfdns
        - pffilter
        - pfipset
        - pfldapexplorer
        - pfperl-api
        - pfpki
        - pfqueue-backend
        - pfqueue-go
        - pfqueue-perl
        - pfsetacls
        - pfsso
        - pfstats
        - proxysql
        - radiusd-auth
        - radiusd-load_balancer
        - radiusd-acct
        - radiusd-eduroam
        - radiusd-cli
        - radsniff
        - redis_ntlm_cache
        - redis_queue
        - snmptrapd
        - tracking-config
        type: string
    sort:
      description: The sort and order of the paginated entries.
      name: sort
      required: true
      schema:
        type: string
    user_id:
      description: The users `PRIMARY_KEY`
      in: path
      name: user_id
      required: true
      schema:
        type: string
  requestBodies:
    BulkImport:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BulkImport'
    ConfigConditionFlatten:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigConditionFlatten'
    ConfigConditionParse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigConditionParse'
    ConfigConnectionProfileFile:
      content:
        application/x-www-form-urlencoded:
          schema:
            description: base64 encoded
            format: byte
            type: string
      required: true
    ConfigDomainJoin:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigDomainJoin'
    ConfigSystemDnsServers:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigSystemDnsServers'
    ConfigSystemGateway:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigSystemGateway'
    ConfigSystemHostname:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigSystemHostname'
    EmailMailer:
      content:
        application/json:
          schema:
            example:
              message: Please send bitcoins!
              subject: Lonely Nigerian Prince
            properties:
              message:
                description: Email message body.
                type: string
              subject:
                description: Email subject.
                type: string
            required:
            - message
            - subject
            type: object
      required: true
    EmailPreview:
      content:
        application/json:
          schema:
            example:
              args:
                password: OneAkamai
                pid: admin
              template: guest_local_account_creation
            properties:
              args:
                description: Key-value map of template values.
                type: object
              template:
                description: Email template from *html/captive-portal/templates/emails/emails-[template].html*.
                type: string
            required:
            - template
            type: object
      required: true
    EmailSend:
      content:
        application/json:
          schema:
            example:
              args:
                password: OneAkamai
                pid: admin
              subject: Lonely Nigerian Prince
              template: guest_local_account_creation
              to: noone@example.com
            properties:
              args:
                description: Key-value map of template values.
                type: object
              subject:
                description: Email subject.
                type: string
              template:
                description: Email template from *html/captive-portal/templates/emails/emails-[template].html*.
                type: string
              to:
                description: Email address recipient.
                type: string
            required:
            - template
            - to
            - subject
            type: object
      required: true
    FingerbankCombination:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankCombinationForm'
      required: true
    FingerbankCombinationsSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                $ref: '#/components/schemas/FingerbankPaginatedCursor'
              limit:
                $ref: '#/components/schemas/FingerbankPaginatedLimit'
              query:
                $ref: '#/components/schemas/FingerbankCombinationsQuery'
              sort:
                $ref: '#/components/schemas/FingerbankCombinationsSort'
            type: object
      required: true
    FingerbankDevice:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDeviceForm'
      required: true
    FingerbankDevicesSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                $ref: '#/components/schemas/FingerbankPaginatedCursor'
              limit:
                $ref: '#/components/schemas/FingerbankPaginatedLimit'
              query:
                $ref: '#/components/schemas/FingerbankDevicesQuery'
              sort:
                $ref: '#/components/schemas/FingerbankDevicesSort'
            type: object
      required: true
    FingerbankDhcp6Enterprise:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcp6EnterpriseForm'
      required: true
    FingerbankDhcp6EnterprisesSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                $ref: '#/components/schemas/FingerbankPaginatedCursor'
              limit:
                $ref: '#/components/schemas/FingerbankPaginatedLimit'
              query:
                $ref: '#/components/schemas/FingerbankDhcp6EnterprisesQuery'
              sort:
                $ref: '#/components/schemas/FingerbankDhcp6EnterprisesSort'
            type: object
      required: true
    FingerbankDhcp6Fingerprint:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcp6FingerprintForm'
      required: true
    FingerbankDhcp6FingerprintsSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                $ref: '#/components/schemas/FingerbankPaginatedCursor'
              limit:
                $ref: '#/components/schemas/FingerbankPaginatedLimit'
              query:
                $ref: '#/components/schemas/FingerbankDhcp6FingerprintsQuery'
              sort:
                $ref: '#/components/schemas/FingerbankDhcp6FingerprintsSort'
            type: object
      required: true
    FingerbankDhcpFingerprint:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcpFingerprintForm'
      required: true
    FingerbankDhcpFingerprintsSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                $ref: '#/components/schemas/FingerbankPaginatedCursor'
              limit:
                $ref: '#/components/schemas/FingerbankPaginatedLimit'
              query:
                $ref: '#/components/schemas/FingerbankDhcpFingerprintsQuery'
              sort:
                $ref: '#/components/schemas/FingerbankDhcpFingerprintsSort'
            type: object
      required: true
    FingerbankDhcpVendor:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcpVendorForm'
      required: true
    FingerbankDhcpVendorsSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                $ref: '#/components/schemas/FingerbankPaginatedCursor'
              limit:
                $ref: '#/components/schemas/FingerbankPaginatedLimit'
              query:
                $ref: '#/components/schemas/FingerbankDhcpVendorsQuery'
              sort:
                $ref: '#/components/schemas/FingerbankDhcpVendorsSort'
            type: object
      required: true
    FingerbankMacVendor:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankMacVendorForm'
      required: true
    FingerbankMacVendorsSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                $ref: '#/components/schemas/FingerbankPaginatedCursor'
              limit:
                $ref: '#/components/schemas/FingerbankPaginatedLimit'
              query:
                $ref: '#/components/schemas/FingerbankMacVendorsQuery'
              sort:
                $ref: '#/components/schemas/FingerbankMacVendorsSort'
            type: object
      required: true
    FingerbankUserAgent:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankUserAgentForm'
      required: true
    FingerbankUserAgentsSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                $ref: '#/components/schemas/FingerbankPaginatedCursor'
              limit:
                $ref: '#/components/schemas/FingerbankPaginatedLimit'
              query:
                $ref: '#/components/schemas/FingerbankUserAgentsQuery'
              sort:
                $ref: '#/components/schemas/FingerbankUserAgentsSort'
            type: object
      required: true
    LogsCreate:
      content:
        application/json:
          schema:
            properties:
              files:
                description: Log files to tail.
                items:
                  description: /usr/local/pf/logs/logfile.log
                  type: string
                type: array
              filter:
                description: Filter events by string.
                type: string
              filter_is_regexp:
                description: Filter is a regular expression.
                type: boolean
            required:
            - files
            type: object
      required: true
    NodeSecurityEvent:
      content:
        application/json:
          schema:
            properties:
              security_event_id:
                description: The security events `PRIMARY_KEY`.
                type: string
            type: object
      required: true
    NodesBulk:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  description: The nodes `PRIMARY_KEY` (MAC Address).
                  type: string
                type: array
            type: object
      required: true
    NodesBulkBypassRole:
      content:
        application/json:
          schema:
            properties:
              bypass_role_id:
                description: The roles `PRIMARY_KEY`.
                type: string
              items:
                items:
                  description: The nodes `PRIMARY_KEY` (MAC Address).
                  type: string
                type: array
            type: object
      required: true
    NodesBulkBypassVlan:
      content:
        application/json:
          schema:
            properties:
              bypass_vlan:
                description: The VLAN.
                type: string
              items:
                items:
                  description: The nodes `PRIMARY_KEY` (MAC Address).
                  type: string
                type: array
            type: object
      required: true
    NodesBulkImport:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  $ref: '#/components/schemas/Node'
                type: array
            type: object
      required: true
    NodesBulkRole:
      content:
        application/json:
          schema:
            properties:
              category_id:
                description: The roles `PRIMARY_KEY`.
                type: string
              items:
                items:
                  description: The nodes `PRIMARY_KEY` (MAC Address).
                  type: string
                type: array
            type: object
      required: true
    NodesBulkSecurityEvent:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  description: The nodes `PRIMARY_KEY` (MAC Address).
                  type: string
                type: array
              security_event_id:
                description: The security events `PRIMARY_KEY`.
                type: string
            type: object
      required: true
    NodesNetworkCommunications:
      content:
        application/json:
          schema:
            properties:
              nodes:
                items:
                  description: The nodes `PRIMARY_KEY` (MAC Address).
                  type: string
                type: array
            type: object
      required: true
    PkiCa:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiCaForm'
      required: true
    PkiCaCertOnly:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiCaFormCertOnly'
      required: true
    PkiCasSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                type: integer
              limit:
                example: 1
                maximum: 1000
                minimum: 1
                type: integer
              query:
                $ref: '#/components/schemas/PkiCasQuery'
              sort:
                $ref: '#/components/schemas/PkiCasSort'
            type: object
      required: true
    PkiCert:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiCertForm'
      required: true
    PkiCertsSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                type: integer
              limit:
                example: 1
                maximum: 1000
                minimum: 1
                type: integer
              query:
                $ref: '#/components/schemas/PkiCertsQuery'
              sort:
                $ref: '#/components/schemas/PkiCertsSort'
            type: object
      required: true
    PkiProfile:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiProfileForm'
      required: true
    PkiProfileSignCsr:
      content:
        application/json:
          schema:
            properties:
              csr:
                type: string
            required:
            - csr
            type: object
      required: true
    PkiProfilesSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                type: integer
              limit:
                example: 1
                maximum: 1000
                minimum: 1
                type: integer
              query:
                $ref: '#/components/schemas/PkiProfilesQuery'
              sort:
                $ref: '#/components/schemas/PkiProfilesSort'
            type: object
      required: true
    PkiRevokedCertsSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                type: integer
              limit:
                example: 1
                maximum: 1000
                minimum: 1
                type: integer
              query:
                $ref: '#/components/schemas/PkiRevokedCertsQuery'
              sort:
                $ref: '#/components/schemas/PkiRevokedCertsSort'
            type: object
      required: true
    PkiScepServer:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiScepServerForm'
      required: true
    PkiScepServersSearch:
      content:
        application/json:
          schema:
            properties:
              cursor:
                type: integer
              limit:
                example: 1
                maximum: 1000
                minimum: 1
                type: integer
              query:
                $ref: '#/components/schemas/PkiScepServersQuery'
              sort:
                $ref: '#/components/schemas/PkiScepServersSort'
            type: object
      required: true
    RadiusAttributes:
      content:
        application/json:
          example:
            query:
              op: and
              values:
              - field: name
                op: contains
                value: X-
          schema:
            properties:
              query:
                $ref: '#/components/schemas/Query'
            type: object
      required: true
    SecurityEventsSearch:
      content:
        application/json:
          example:
            fields:
            - id
            - status
            - mac
            - security_event_id
            - start_date
            - release_date
            - ticket_ref
            - notes
            - node.device_class
            limit: 1
            query:
              op: and
              values:
              - op: or
                values:
                - field: node.device_class
                  op: equals
                  value: Linux OS
            sort:
            - id ASC
          schema:
            properties:
              fields:
                items:
                  enum:
                  - id
                  - status
                  - mac
                  - security_event_id
                  - start_date
                  - release_date
                  - ticket_ref
                  - notes
                  - node.device_class
                  type: string
                type: array
              limit:
                enum:
                - 1
                - 5
                - 10
                - 25
                - 50
                - 100
                - 250
                - 500
                - 1000
                type: integer
              query:
                $ref: '#/components/schemas/Query'
              sort:
                items:
                  enum:
                  - id ASC
                  - id DESC
                  - status ASC
                  - status DESC
                  - mac ASC
                  - mac DESC
                  - security_event_id ASC
                  - security_event_id DESC
                  - start_date ASC
                  - start_date DESC
                  - release_date ASC
                  - release_date DESC
                  - ticket_ref ASC
                  - ticket_ref DESC
                  - notes ASC
                  - notes DESC
                  - node.device_class ASC
                  - node.device_class DESC
                  type: string
                type: array
            type: object
      required: true
    UsersBulk:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  description: The users `PRIMARY_KEY` (pid).
                  type: string
                type: array
            type: object
      required: true
    UsersBulkBypassRole:
      content:
        application/json:
          schema:
            properties:
              bypass_role_id:
                description: Role Identifier `PRIMARY_KEY`
                type: string
              items:
                items:
                  description: The users `PRIMARY_KEY` (pid).
                  type: string
                type: array
            type: object
      required: true
    UsersBulkImport:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  $ref: '#/components/schemas/User'
                type: array
            type: object
      required: true
    UsersBulkRole:
      content:
        application/json:
          schema:
            properties:
              category_id:
                description: Role Identifier `PRIMARY_KEY`
                type: string
              items:
                items:
                  description: The users `PRIMARY_KEY` (pid).
                  type: string
                type: array
            type: object
      required: true
    UsersBulkSecurityEvent:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  description: The users `PRIMARY_KEY` (pid).
                  type: string
                type: array
              security_event_id:
                description: Security Event Identifier `PRIMARY_KEY`
                type: string
            type: object
      required: true
  responses:
    Async:
      content:
        application/json:
          schema:
            properties:
              status:
                description: Response code.
                type: integer
              task_id:
                description: A unique identifier for the asyncronous task.
                type: string
            type: object
      description: Request successful. A new asyncrounous task was created.
    BadRequest:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorsWithMessage'
      description: Bad Request. One of the submitted parameters has an invalid format.
    BulkImport:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/BulkImportResponse'
      description: Request successful. Bulk resources have been imported.
    ConfigConditionFlatten:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigConditionFlattenResponse'
      description: Request successful. Response contains flattened condition.
    ConfigConditionParse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigConditionParseResponse'
      description: Request successful. Response contains parsed condition.
    ConfigConnectionProfileFilesRoot:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigConnectionProfileFilesRoot'
      description: Request successful. Response contains files for connection profile.
    ConfigSystemDnsServers:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigSystemDnsServersResponse'
      description: Request successful. Response contains system DNS servers.
    ConfigSystemGateway:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigSystemGatewayResponse'
      description: Request successful. Response contains system Gateway.
    ConfigSystemHostname:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ConfigSystemHostnameResponse'
      description: Request successful. Response contains system Hostname.
    Count:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CountResponse'
      description: Request successful. Response contains resource count.
    Created:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Message'
      description: Request successful. A new resource was created.
      headers:
        Location:
          description: The location of the created resource.
          schema:
            type: string
    CurrentUserAllowedAccessDurations:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CurrentUserAllowedAccessDurationsList'
      description: Request successful.
    CurrentUserAllowedAccessLevels:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CurrentUserAllowedAccessLevelsList'
      description: Request successful.
    CurrentUserAllowedActions:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CurrentUserAllowedActionsList'
      description: Request successful.
    CurrentUserAllowedNodeRoles:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CurrentUserAllowedNodeRolesList'
      description: Request successful.
    CurrentUserAllowedUnregDate:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CurrentUserAllowedUnregDateList'
      description: Request successful.
    CurrentUserAllowedUserRoles:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CurrentUserAllowedUserRolesList'
      description: Request successful.
    Deleted:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Message'
      description: Request successful. An exisiting resource was deleted.
    DhcpInterfaceInit:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DhcpInterfaceStats'
      description: A response that contains interface statistics after initialization
    DhcpInterfaceStats:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DhcpInterfaceStats'
      description: A response that contains interface statistics
    DhcpMacIp:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DhcpMacIp'
      description: A response that contains the relational MAC address and IPv4 address
    DhcpMacResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DhcpMacResponse'
      description: A response that contains a status on success or failure with the
        MAC address
    DhcpNetworkResponse:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DhcpNetworkResponse'
      description: A response that contains a status on success or failure with the
        Network IPv4 address
    Duplicate:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorsWithMessage'
      description: An attempt to add a duplicate entry was stopped. Entry already
        exists and should be modified instead of created.
    DynamicReportMeta:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/DynamicReportMeta'
      description: A response that contains the report meta
    EmailMailer:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EmailMailer'
      description: Request successful. Response contains status response code.
    EmailPreview:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/EmailPreview'
      description: Request successful. Response contains email preview.
    ErrorMessage:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Message'
      description: Request failed. Response contains a simple message.
    ErrorsWithMessage:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorsWithMessage'
      description: A response that contains a message along with explanatory error
        messages tied to fields.
    FingerbankAccountInfo:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankAccountInfo'
      description: Request successful. The response contains the account information.
    FingerbankCombination:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankCombinationItem'
      description: Request successful. The response contains the combination.
    FingerbankCombinations:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankCombinations'
      description: Request successful. The response contains the combinations.
    FingerbankCombinationsSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankCombinationsSearch'
      description: Request successful. The response contains the combinations search
        results.
    FingerbankDevice:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDeviceItem'
      description: Request successful. The response contains the device.
    FingerbankDeviceClasses:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDeviceClasses'
      description: Request successful. The response contains the device classes.
    FingerbankDevices:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDevices'
      description: Request successful. The response contains the devices.
    FingerbankDevicesSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDevicesSearch'
      description: Request successful. The response contains the devices search results.
    FingerbankDhcp6Enterprise:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcp6EnterpriseItem'
      description: Request successful. The response contains the DHCPv6 enterprises.
    FingerbankDhcp6Enterprises:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcp6Enterprises'
      description: Request successful. The response contains the DHCPv6 enterprises.
    FingerbankDhcp6EnterprisesSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcp6EnterprisesSearch'
      description: Request successful. The response contains the DHCPv6 enterprises
        search results.
    FingerbankDhcp6Fingerprint:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcp6FingerprintItem'
      description: Request successful. The response contains the DHCPv6 fingerprints.
    FingerbankDhcp6Fingerprints:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcp6Fingerprints'
      description: Request successful. The response contains the DHCPv6 fingerprints.
    FingerbankDhcp6FingerprintsSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcp6FingerprintsSearch'
      description: Request successful. The response contains the DHCPv6 fingerprints
        search results.
    FingerbankDhcpFingerprint:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcpFingerprintItem'
      description: Request successful. The response contains the DHCP fingerprint.
    FingerbankDhcpFingerprints:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcpFingerprints'
      description: Request successful. The response contains the DHCP fingerprints.
    FingerbankDhcpFingerprintsSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcpFingerprintsSearch'
      description: Request successful. The response contains the DHCP fingerprints
        search results.
    FingerbankDhcpVendor:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcpVendorItem'
      description: Request successful. The response contains the DHCP fingerprint.
    FingerbankDhcpVendors:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcpVendors'
      description: Request successful. The response contains the DHCP fingerprints.
    FingerbankDhcpVendorsSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankDhcpVendorsSearch'
      description: Request successful. The response contains the DHCP fingerprints
        search results.
    FingerbankMacVendor:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankMacVendorItem'
      description: Request successful. The response contains the MAC vendor.
    FingerbankMacVendors:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankMacVendors'
      description: Request successful. The response contains the MAC vendors.
    FingerbankMacVendorsSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankMacVendorsSearch'
      description: Request successful. The response contains the MAC vendors search
        results.
    FingerbankNba:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankNba'
      description: Request successful. The response contains the result.
    FingerbankUpdateUpstreamDb:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Message'
      description: Request successful. The upstream database is being updated.
    FingerbankUserAgent:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankUserAgentItem'
      description: Request successful. The response contains the user agent.
    FingerbankUserAgents:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankUserAgents'
      description: Request successful. The response contains the user agents.
    FingerbankUserAgentsSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/FingerbankUserAgentsSearch'
      description: Request successful. The response contains the user agents search
        results.
    Forbidden:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Message'
      description: Forbidden access to the resource because of insufficient access
        rights.
    Ip4logsHistory:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  $ref: '#/components/schemas/Ip4log'
                type: array
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains the IP4 log history.
    Ip4logsOpen:
      content:
        application/json:
          schema:
            properties:
              item:
                $ref: '#/components/schemas/Ip4log'
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains the open IP4 log.
    Ip6logsHistory:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  $ref: '#/components/schemas/Ip6log'
                type: array
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains the IP6 log history.
    Ip6logsOpen:
      content:
        application/json:
          schema:
            properties:
              item:
                $ref: '#/components/schemas/Ip6log'
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains the open IP6 log.
    IpsetIp:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/IpsetIp'
      description: A response that contains a status along with the IPv4 address
    IpsetMac:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/IpsetMac'
      description: A response that contains a status along with the MAC address
    Locale:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Locale'
      description: Request successful. Response contains translation.
    Locales:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Locales'
      description: Request successful. Response contains all translations.
    LocationLogsSsids:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  properties:
                    ssid:
                      type: string
                  type: object
                type: array
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains a list of SSID's.
    LogsCreate:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LogsCreate'
      description: Request successful. A session has been created and the response
        contains the session identifier.
    LogsDelete:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Message'
      description: Request successful. The log-tail session has been destroyed.
    LogsMeta:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LogsMeta'
      description: Request successful. Response contains meta to create a session.
    LogsTail:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/LogsTail'
      description: Request successful. The response contains a tail of the log(s)
        and the read pointer has been updated.
    LogsTouch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Message'
      description: Request successful. The session has been touched.
    Message:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Message'
      description: Request successful. Response contains a simple message.
    NodeApplySecurityEvent:
      content:
        application/json:
          schema:
            properties:
              id:
                description: The security events `PRIMARY_KEY`.
                type: string
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. The Security Event has been applied to this
        node.
    NodeFingerbankInfo:
      content:
        application/json:
          schema:
            properties:
              item:
                properties:
                  device_hierarchy_ids:
                    items:
                      type: string
                    type: array
                  device_hierarchy_names:
                    items:
                      type: string
                    type: array
                  device_name:
                    type: string
                  score:
                    maximum: 100
                    minimum: 0
                    type: integer
                  version:
                    type: string
                type: object
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains the node fingerbank info.
    NodeRapid7:
      content:
        application/json:
          schema:
            type: object
      description: Request successful. Response contains the node rapid7 info.
    NodesBulk:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  properties:
                    mac:
                      description: The nodes `PRIMARY_KEY` (MAC Address).
                      type: string
                    status:
                      type: string
                  type: object
                type: array
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains the bulk nodes.
    NodesBulkImport:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  properties:
                    item:
                      $ref: '#/components/schemas/Node'
                  type: object
                type: array
            type: object
      description: Request successful. Response contains the bulk nodes.
    NodesNetworkCommunications:
      content:
        application/json:
          example:
            items:
              d34db4c0ffee:
                all_hosts_cache:
                  www.akamai.com:
                    tcp:53: 123
                    upd:53: 456
                  www.inverse.ca:
                    tcp:443: 456
                    tcp:80: 123
          schema:
            properties:
              items:
                additionalProperties:
                  properties:
                    all_hosts_cache:
                      additionalProperties:
                        additionalProperties:
                          description: The total number of packets.
                          type: integer
                        description: Key contains the protocol:port.
                        type: object
                      description: Key contains the hostname.
                      type: object
                  type: object
                description: Key contains the nodes `PRIMARY_KEY` (MAC Address).
                type: object
            type: object
      description: Request successful. Response contains the network communication
        for bulk nodes.
    NodesNetworkGraph:
      content:
        application/json:
          schema:
            allOf:
            - $ref: '#/components/schemas/Iterable'
            - properties:
                network_graph:
                  properties:
                    label:
                      type: string
                    links:
                      items:
                        $ref: '#/components/schemas/NetworkGraphLink'
                      type: array
                    metric:
                      nullable: true
                      type: string
                    nodes:
                      items:
                        $ref: '#/components/schemas/NetworkGraphNode'
                      type: array
                    protocol:
                      type: string
                    type:
                      type: string
                    version:
                      type: string
                  type: object
                status:
                  $ref: '#/components/schemas/Status'
              type: object
      description: Request successful. Response contains the network graph for bulk
        nodes.
    NodesPerDeviceClass:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  properties:
                    count:
                      type: integer
                    device_class:
                      type: string
                  type: object
                type: array
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains the count of nodes per device
        class.
    NotFound:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorsWithMessage'
      description: Request cannot be processed because the resource could not be found.
    PfQueue:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PfQueue'
      description: Request successful. Response contains progress of the task.
    PkiCa:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiCasList'
      description: Request successful. The response contains the PKI Certificate Authority.
    PkiCaCreate:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiCasList'
      description: Request successful. The PKI Certificate Authority has been created.
    PkiCasList:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiCasList'
      description: Request successful. The response contains PKI Certificate Authorities.
    PkiCasSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiCasSearch'
      description: Request successful. The response contains the search results.
    PkiCert:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiCertsList'
      description: Request successful. The response contains the PKI Certificate.
    PkiCertCreate:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiCertsList'
      description: Request successful. The PKI Certificate has been created.
    PkiCertDownload:
      content:
        application/json:
          schema:
            format: binary
            type: string
      description: Request successful. The response contains the PKI PKCS-12 Certificate.
      headers:
        Content-Disposition:
          schema:
            description: Binary PKCS-12 Certficate.
            example: attachment; filename="certificate.p12"
            type: string
    PkiCertEmail:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiNull'
      description: Request successful. The PKI Certificate has been emailed.
    PkiCertRevoke:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiNull'
      description: Request successful. The PKI Certificate has been revoked.
    PkiCertsList:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiCertsList'
      description: Request successful. The response contains the PKI Certificates.
    PkiCertsSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiCertsSearch'
      description: Request successful. The response contains the search results.
    PkiNull:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiNull'
      description: Request successful.
    PkiProfile:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiProfilesList'
      description: Request successful. The response contains the PKI Profile.
    PkiProfileCreate:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiProfilesList'
      description: Request successful. The PKI Profile has been created.
    PkiProfileDelete:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiProfilesList'
      description: Request successful. The PKI Profile has been deleted.
    PkiProfileSignCsr:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiProfilesList'
      description: Request successful. The PKI Profile CSR has been signed.
    PkiProfileUpdate:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiProfilesList'
      description: Request successful. The PKI Profile has been updated.
    PkiProfilesList:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiProfilesList'
      description: Request successful. The response contains the PKI Profiles.
    PkiProfilesSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiProfilesSearch'
      description: Request successful. The response contains the search results.
    PkiRevokedCert:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiRevokedCertsList'
      description: Request successful. The response contains the PKI Revoked Certificate.
    PkiRevokedCertsList:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiRevokedCertsList'
      description: Request successful. The response contains the PKI Revoked Certificates.
    PkiRevokedCertsSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiRevokedCertsSearch'
      description: Request successful. The response contains the search results.
    PkiScepServer:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiScepServersList'
      description: Request successful. The response contains the PKI SCEP Server.
    PkiScepServerCreate:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiScepServersList'
      description: Request successful. The PKI SCEP Server has been created.
    PkiScepServersList:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiScepServersList'
      description: Request successful. The response contains PKI SCEP Servers.
    PkiScepServersSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/PkiScepServersSearch'
      description: Request successful. The response contains the search results.
    Preference:
      content:
        application/json:
          schema:
            description: Item
            properties:
              item:
                $ref: '#/components/schemas/Preference'
            type: object
      description: Request successful. Response contains user preference.
    Preferences:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Preferences'
      description: Request successful. Response contains user preferences.
    QueueStats:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/QueueStats'
      description: A response that contains the pfqueue stats
    RadiusAttributesSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/RadiusAttributesSearch'
      description: Request successful. The response contains the RADIUS Attributes.
    SecurityEventsPerDeviceClass:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SecurityEventsPerDeviceClass'
      description: Request successful. The response contains the total count per device
        class.
    SecurityEventsPerId:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SecurityEventsPerId'
      description: Request successful. The response contains the total count per security
        event.
    SecurityEventsSearch:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SecurityEventsSearch'
      description: Request successful. The response contains the search results.
    SecurityEventsTotal:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SecurityEventsTotal'
      description: Request successful. The response contains the total count.
    ServiceAsync:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ServiceAsync'
      description: Request successful. An asyncronous task has been created.
    ServiceDisable:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ServiceDisable'
      description: Request successful. Service disabled.
    ServiceEnable:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ServiceEnable'
      description: Request successful. Service enabled.
    ServiceRestart:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ServiceRestart'
      description: Request successful. Service restarted.
    ServiceStart:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ServiceStart'
      description: Request successful. Service started.
    ServiceStop:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ServiceStop'
      description: Request successful. Service stopped.
    ServicesClusterServer:
      content:
        application/json:
          schema:
            properties:
              item:
                properties:
                  host:
                    type: string
                  services:
                    items:
                      $ref: '#/components/schemas/ServiceStatus'
                    type: array
                type: object
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: List of services on cluster server.
    SsoStatus:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SsoStatus'
      description: Request successful. Response contains SSO status.
    Status:
      content:
        application/json:
          schema:
            properties:
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains a status response code.
    StatusOnly:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Status'
      description: Request successful. Response contains a status response code.
    SystemSummary:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/SystemSummary'
      description: Request successful. Response contains system summary.
    TokenInfo:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/TokenInfo'
      description: Request successful. Response contains the token info.
    Unauthorized:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Message'
      description: Unauthorized access to the resource because of invalid credentials.
    UnprocessableEntity:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorsWithMessage'
      description: Request cannot be processed because the resource has failed validation
        after the modification.
    Updated:
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Message'
      description: Request successful. Resource was updated.
    UserNodes:
      content:
        application/json:
          schema:
            allOf:
            - $ref: '#/components/schemas/Iterable'
            - properties:
                items:
                  items:
                    $ref: '#/components/schemas/Node'
                  type: array
              type: object
      description: Request successful. Response contains the Nodes for the User.
    UserSecurityEvents:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  $ref: '#/components/schemas/SecurityEvent'
                type: array
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains the Security Events for the
        User.
    UsersBulkImport:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  properties:
                    item:
                      $ref: '#/components/schemas/User'
                  type: object
                type: array
            type: object
      description: Request successful. Response contains the bulk items.
    UsersBulkNodes:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  properties:
                    nodes:
                      items:
                        type: string
                      type: array
                    pid:
                      description: User Identifier
                      type: string
                  type: object
                type: array
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains the bulk items.
    UsersBulkSecurityEvents:
      content:
        application/json:
          schema:
            properties:
              items:
                items:
                  properties:
                    pid:
                      description: User Identifier
                      type: string
                    security_events:
                      items:
                        type: string
                      type: array
                  type: object
                type: array
              status:
                $ref: '#/components/schemas/Status'
            type: object
      description: Request successful. Response contains the bulk items.
  schemas:
    AdminApiAuditLog:
      properties:
        action:
          nullable: true
          type: string
        created_at:
          type: string
        id:
          description: '`PRIMARY KEY`'
          type: integer
        method:
          nullable: true
          type: string
        object_id:
          nullable: true
          type: string
        request:
          nullable: true
          type: string
        status:
          type: string
        url:
          nullable: true
          type: string
        user_name:
          nullable: true
          type: string
      type: object
    AdminApiAuditLogsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/AdminApiAuditLog'
            type: array
        type: object
    Async:
      properties:
        async:
          description: Run the task asyncronously.
          enum:
          - true
          - false
          type: boolean
      type: object
    AuthLog:
      properties:
        attempted_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        completed_at:
          example: 1970-01-01 00:00:00
          format: date-time
          nullable: true
          type: string
        id:
          description: '`PRIMARY KEY`'
          type: integer
        mac:
          type: string
        pid:
          type: string
        process_name:
          type: string
        profile:
          nullable: true
          type: string
        source:
          type: string
        status:
          type: string
      type: object
    AuthLogsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/AuthLog'
            type: array
        type: object
    BulkImport:
      properties:
        ignoreInsertIfNotExists:
          default: false
          description: Only modify existing items, do not create new items.
          type: boolean
        ignoreUpdateIfExists:
          default: true
          description: Only create new items, do not modify existing items.
          type: boolean
        stopOnFirstError:
          default: true
          description: Return on the first error and do not process remaining items.
          type: boolean
      type: object
    BulkImportResponse:
      properties:
        items:
          items:
            properties:
              isNew:
                type: boolean
              item:
                type: object
              message:
                description: A descriptive message for the user.
                type: string
              status:
                $ref: '#/components/schemas/Status'
            type: object
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    Class:
      properties:
        auto_enable:
          type: string
        button_text:
          nullable: true
          type: string
        delay_by:
          type: integer
        description:
          type: string
        enabled:
          type: string
        external_command:
          nullable: true
          type: string
        grace_period:
          type: integer
        max_enable_url:
          nullable: true
          type: string
        max_enables:
          type: integer
        priority:
          type: integer
        redirect_url:
          nullable: true
          type: string
        security_event_id:
          description: '`PRIMARY KEY`'
          type: integer
        target_category:
          nullable: true
          type: string
        template:
          nullable: true
          type: string
        vclose:
          nullable: true
          type: integer
        vlan:
          nullable: true
          type: string
        window:
          type: string
      type: object
    ClassesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/Class'
            type: array
        type: object
    ClusterConfig:
      properties:
        item:
          properties:
            CLUSTER:
              $ref: '#/components/schemas/ClusterServer'
            additionalProperties:
              $ref: '#/components/schemas/ClusterServer'
          type: object
        status:
          $ref: '#/components/schemas/Status'
      type: object
    ClusterServer:
      properties:
        additionalProperties:
          description: |
            Key is dynamic (example: `interface eth0`)
          properties:
            ip:
              type: string
          type: object
        host:
          type: string
        management_ip:
          type: string
      type: object
    ClusterServers:
      properties:
        items:
          items:
            $ref: '#/components/schemas/ClusterServer'
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    Config:
      discriminator:
        mapping: {}
        propertyName: type
      oneOf: []
    ConfigAdminRole:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            type: string
          type: array
        allowed_access_durations:
          description: A comma seperated list of access durations available to the
            admin user. If none are provided then the default access durations are
            used
          type: string
        allowed_access_levels:
          description: List of access levels available to the admin user. If none
            are provided then all access levels are available
          items:
            description: List of access levels available to the admin user. If none
              are provided then all access levels are available
            type: string
          type: array
        allowed_actions:
          description: List of actions available to the admin user. If none are provided
            then all actions are available
          items:
            description: List of actions available to the admin user. If none are
              provided then all actions are available
            type: string
          type: array
        allowed_node_roles:
          description: List of roles available to the admin user to assign to a node.
            If none are provided then all roles are available
          items:
            description: List of roles available to the admin user to assign to a
              node. If none are provided then all roles are available
            type: string
          type: array
        allowed_roles:
          description: List of roles available to the admin user to assign to a user.
            If none are provided then all roles are available
          items:
            description: List of roles available to the admin user to assign to a
              user. If none are provided then all roles are available
            type: string
          type: array
        allowed_unreg_date:
          description: The maximal unregistration date that can be set.
          type: string
        description:
          description: Description
          type: string
        id:
          description: Role Name
          type: string
      required:
      - id
      - description
      type: object
    ConfigAdminRoleMeta:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            allowed_access_durations:
              $ref: '#/components/schemas/Meta'
            allowed_access_levels:
              $ref: '#/components/schemas/Meta'
            allowed_actions:
              $ref: '#/components/schemas/Meta'
            allowed_node_roles:
              $ref: '#/components/schemas/Meta'
            allowed_roles:
              $ref: '#/components/schemas/Meta'
            allowed_unreg_date:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigAdminRoleWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigAdminRole'
        status:
          type: integer
      type: object
    ConfigAdminRolesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigAdminRole'
            type: array
        type: object
    ConfigBase:
      discriminator:
        mapping: {}
        propertyName: type
      oneOf: []
    ConfigBaseMeta:
      properties:
        meta:
          properties:
            emailaddr:
              $ref: '#/components/schemas/Meta'
            fromaddr:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            smtp_encryption:
              $ref: '#/components/schemas/Meta'
            smtp_password:
              $ref: '#/components/schemas/Meta'
            smtp_port:
              $ref: '#/components/schemas/Meta'
            smtp_timeout:
              $ref: '#/components/schemas/Meta'
            smtp_username:
              $ref: '#/components/schemas/Meta'
            smtp_verifyssl:
              $ref: '#/components/schemas/Meta'
            smtpserver:
              $ref: '#/components/schemas/Meta'
            subjectprefix:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigBaseWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigBase'
        status:
          type: integer
      type: object
    ConfigBasesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigBase'
            type: array
        type: object
    ConfigBillingTier:
      properties:
        access_duration:
          description: The access duration of the devices that use this tier.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        description:
          description: A description of the billing tier
          type: string
        id:
          description: Billing Tier
          type: string
        name:
          description: The short name of the billing tier
          type: string
        price:
          description: The price that will be charged to the customer
          type: string
        role:
          description: The target role of the devices that use this tier.
          type: string
        use_time_balance:
          description: Check this box to have the access duration be a real time usage.<br/>This
            requires a working accounting configuration.
          type: string
      required:
      - id
      - name
      - description
      - price
      - role
      - access_duration
      type: object
    ConfigBillingTierMeta:
      properties:
        meta:
          properties:
            access_duration:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            name:
              $ref: '#/components/schemas/Meta'
            price:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            use_time_balance:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigBillingTierWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigBillingTier'
        status:
          type: integer
      type: object
    ConfigBillingTiersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigBillingTier'
            type: array
        type: object
    ConfigCertificate:
      properties:
        ca:
          description: The CA certficate for the resource (if applicable)
          type: string
        certificate:
          description: The server certficate for the resource in x509 PEM encoded
            format
          type: string
        intermediate_cas:
          description: The list of certificate authorities for the server certificate
          items:
            type: string
          type: array
        lets_encrypt:
          description: Whether or not Let's Encrypt is enabled for the certificate
            resource
          enum:
          - false
          - true
          type: boolean
        private_key:
          description: The RSA server key for the resource in PEM encoded format
          type: string
      type: object
    ConfigCertificateCSR:
      properties:
        common_name:
          description: The common name for the certificate
          type: string
        country:
          description: The country for the certificate
          type: string
        locality:
          description: The locality for the certificate
          type: string
        organization_name:
          description: The organization name for the certificate
          type: string
        state:
          description: The state for the certificate
          type: string
      type: object
    ConfigCertificateDetails:
      properties:
        common_name:
          description: The common name of the certificate
          type: string
        issuer:
          description: The issuer of the certificate
          type: string
        not_after:
          description: The date until which the certificate can be used
          type: string
        not_before:
          description: The start date at which the certificate can be used
          type: string
        serial:
          description: The serial of the certificate
          type: string
        subject:
          description: The subject of the certificate
          type: string
    ConfigCertificateInfo:
      properties:
        ca:
          $ref: '#/components/schemas/ConfigCertificateDetails'
          description: The CA certficate for the resource (if applicable)
          type: object
        cert_key_match:
          $ref: '#/components/schemas/ConfigCertificateReturnValue'
          description: Information about whether or not the certificate and private
            key match
          type: object
        certificate:
          $ref: '#/components/schemas/ConfigCertificateDetails'
          description: The server certficate for the resource
          type: object
        chain_is_valid:
          $ref: '#/components/schemas/ConfigCertificateReturnValue'
          description: Information about whether or not the certificate chain is valid
          type: object
        intermediate_cas:
          description: The list of certificate authorities for the server certificate
          items:
            $ref: '#/components/schemas/ConfigCertificateDetails'
          type: array
      type: object
    ConfigCertificateLetsEncrypt:
      properties:
        common_name:
          description: The common name for the certificate
          type: string
      type: object
    ConfigCertificateReturnValue:
      properties:
        result:
          description: The value (usually error or success message)
          type: string
        success:
          description: Whether or not the operation has succeeded
          type: boolean
    ConfigCloud:
      properties:
        client_id:
          description: Client ID
          type: string
        client_secret:
          description: Client Secret
          type: string
        id:
          description: Name
          type: string
        tenant_id:
          description: Tenant ID
          type: string
        type:
          description: Type
          type: string
      required:
      - id
      - tenant_id
      - client_id
      - client_secret
      type: object
    ConfigCloudMeta:
      properties:
        meta:
          properties:
            client_id:
              $ref: '#/components/schemas/Meta'
            client_secret:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            tenant_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigCloudWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigCloud'
        status:
          type: integer
      type: object
    ConfigCloudsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigCloud'
            type: array
        type: object
    ConfigConditionFlatten:
      properties:
        condition:
          $ref: '#/components/schemas/Query'
      type: object
    ConfigConditionFlattenResponse:
      properties:
        item:
          properties:
            condition:
              $ref: '#/components/schemas/Query'
            condition_string:
              type: string
          type: object
        status:
          $ref: '#/components/schemas/Status'
      type: object
    ConfigConditionParse:
      properties:
        condition:
          type: string
      type: object
    ConfigConditionParseResponse:
      properties:
        item:
          properties:
            condition:
              $ref: '#/components/schemas/Query'
            condition_string:
              type: string
          type: object
        status:
          $ref: '#/components/schemas/Status'
      type: object
    ConfigConnectionProfile:
      properties:
        access_registration_when_registered:
          description: This allows already registered users to be able to re-register
            their device by first accessing the status page and then accessing the
            portal. This is useful to allow users to extend their access even though
            they are already registered.
          type: string
        advanced_filter:
          description: Advanced filter
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        always_use_redirecturl:
          description: Under most circumstances we can redirect the user to the URL
            he originally intended to visit. However, you may prefer to force the
            captive portal to redirect the user to the redirection URL.
          type: string
        autoregister:
          description: This activates automatic registation of devices for the profile.
            Devices will not be shown a captive portal and RADIUS authentication credentials
            will be used to register the device. This option only makes sense in the
            context of an 802.1x authentication.
          type: string
        billing_tiers:
          description: Billing tiers
          items:
            description: Billing tier
            type: string
          type: array
        block_interval:
          description: The amount of time a user is blocked after reaching the defined
            limit for login, sms request and sms pin retry.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        default_psk_key:
          description: This is the default PSK key when you enable DPSK on this connection
            profile. The minimum length is eight characters.
          type: string
        description:
          description: Profile Description
          type: string
        dot1x_recompute_role_from_portal:
          description: When enabled, PacketFence will not use the role initialy computed
            on the portal but will use the dot1x username to recompute the role.
          type: string
        dot1x_unset_on_unmatch:
          description: When enabled, PacketFence will unset the role of the device
            if no authentication sources returned one.
          type: string
        dpsk:
          description: This enables the Dynamic PSK feature on this connection profile.
            It means that the RADIUS server will answer requests with specific attributes
            like the PSK key to use to connect on the SSID.
          type: string
        filter:
          description: Filters
          items:
            description: Filter
            properties:
              match:
                description: Match
                type: string
              type:
                description: Type
                type: string
            type: object
          type: array
        filter_match_style:
          description: Filter match style
          type: string
        id:
          description: A profile id can only contain alphanumeric characters, dashes,
            period and or underscores.
          type: string
        locale:
          description: Locales
          items:
            description: Locale
            type: string
          type: array
        login_attempt_limit:
          description: Limit the number of login attempts. A value of 0 disables the
            limit.
          type: integer
        logo:
          description: Logo
          type: string
        mac_auth_recompute_role_from_portal:
          description: When enabled, PacketFence will not use the role initialy computed
            on the portal but will use an authorized source if defined to recompute
            the role.
          type: string
        network_logoff:
          description: This allows users to access the network logoff page (http://packetfence.packetfence.org/networklogoff)
            in order to terminate their network access (switch their device back to
            unregistered)
          type: string
        network_logoff_popup:
          description: When the "Network Logoff" feature is enabled, this will have
            it opened in a popup at the end of the registration process.
          type: string
        preregistration:
          description: This activates preregistration on the connection profile. Meaning,
            instead of applying the access to the currently connected device, it displays
            a local account that is created while registering. Note that activating
            this disables the on-site registration on this connection profile. Also,
            make sure the sources on the connection profile have "Create local account"
            enabled.
          type: string
        provisioners:
          description: Provisioners
          items:
            description: Provisioner
            type: string
          type: array
        redirecturl:
          description: Default URL to redirect to on registration/mitigation release.
            This is only used if a per security event redirect URL is not defined.
          type: string
        reuse_dot1x_credentials:
          description: This option emulates SSO when someone needs to face the captive
            portal after a successful 802.1x connection. 802.1x credentials are reused
            on the portal to match an authentication and get the appropriate actions.
            As a security precaution, this option will only reuse 802.1x credentials
            if there is an authentication source matching the provided realm. This
            means, if users use 802.1x credentials with a domain part (username@domain,
            domain\username), the domain part needs to be configured as a realm under
            the RADIUS section and an authentication source needs to be configured
            for that realm. If users do not use 802.1x credentials with a domain part,
            only the NULL realm will be match IF an authentication source is configured
            for it.
          type: string
        root_module:
          description: The Root Portal Module to use
          type: string
        scans:
          description: Scans
          items:
            description: Scan
            type: string
          type: array
        self_service:
          description: Self service
          type: string
        show_manage_devices_on_max_nodes:
          description: Show manage devices on max nodes
          type: string
        sms_pin_retry_limit:
          description: Maximum number of times a user can retry a SMS PIN before having
            to request another PIN. A value of 0 disables the limit.
          type: integer
        sms_request_limit:
          description: Maximum number of times a user can request a SMS PIN. A value
            of 0 disables the limit.
          type: integer
        sources:
          description: Sources
          items:
            description: Source
            type: string
          type: array
        status:
          description: Enable profile
          type: string
        unbound_dpsk:
          description: Unbound dpsk
          type: string
        unreg_on_acct_stop:
          description: This activates automatic deregistation of devices for the profile
            if PacketFence receives a RADIUS accounting stop.
          type: string
        vlan_pool_technique:
          description: The Vlan Pool Technique to use
          type: string
      required:
      - id
      - root_module
      type: object
    ConfigConnectionProfileFilesDir:
      properties:
        entries:
          items:
            oneOf:
            - $ref: '#/components/schemas/ConfigConnectionProfileFilesDir'
            - $ref: '#/components/schemas/ConfigConnectionProfileFilesFile'
          type: array
        type:
          default: dir
          type: string
      type: object
    ConfigConnectionProfileFilesFile:
      properties:
        mtime:
          description: Unix timestamp of last modified time
          type: integer
        name:
          description: File name or path
          type: string
        not_deletable:
          description: File can not be removed
          type: boolean
        not_revertible:
          description: File can not be reverted
          type: boolean
        size:
          description: File size in bytes
          type: integer
        type:
          default: file
          description: Entry type
          type: string
      type: object
    ConfigConnectionProfileFilesRoot:
      allOf:
      - $ref: '#/components/schemas/ConfigConnectionProfileFilesDir'
      - $ref: '#/components/schemas/ConfigConnectionProfileFilesFile'
    ConfigConnectionProfileMeta:
      properties:
        meta:
          properties:
            access_registration_when_registered:
              $ref: '#/components/schemas/Meta'
            advanced_filter:
              $ref: '#/components/schemas/Meta'
            always_use_redirecturl:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            billing_tiers:
              $ref: '#/components/schemas/Meta'
            block_interval:
              $ref: '#/components/schemas/Meta'
            default_psk_key:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            dot1x_recompute_role_from_portal:
              $ref: '#/components/schemas/Meta'
            dot1x_unset_on_unmatch:
              $ref: '#/components/schemas/Meta'
            dpsk:
              $ref: '#/components/schemas/Meta'
            filter:
              $ref: '#/components/schemas/Meta'
            filter_match_style:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            locale:
              $ref: '#/components/schemas/Meta'
            login_attempt_limit:
              $ref: '#/components/schemas/Meta'
            logo:
              $ref: '#/components/schemas/Meta'
            mac_auth_recompute_role_from_portal:
              $ref: '#/components/schemas/Meta'
            network_logoff:
              $ref: '#/components/schemas/Meta'
            network_logoff_popup:
              $ref: '#/components/schemas/Meta'
            preregistration:
              $ref: '#/components/schemas/Meta'
            provisioners:
              $ref: '#/components/schemas/Meta'
            redirecturl:
              $ref: '#/components/schemas/Meta'
            reuse_dot1x_credentials:
              $ref: '#/components/schemas/Meta'
            root_module:
              $ref: '#/components/schemas/Meta'
            scans:
              $ref: '#/components/schemas/Meta'
            self_service:
              $ref: '#/components/schemas/Meta'
            show_manage_devices_on_max_nodes:
              $ref: '#/components/schemas/Meta'
            sms_pin_retry_limit:
              $ref: '#/components/schemas/Meta'
            sms_request_limit:
              $ref: '#/components/schemas/Meta'
            sources:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            unbound_dpsk:
              $ref: '#/components/schemas/Meta'
            unreg_on_acct_stop:
              $ref: '#/components/schemas/Meta'
            vlan_pool_technique:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigConnectionProfileWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigConnectionProfile'
        status:
          type: integer
      type: object
    ConfigConnectionProfilesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigConnectionProfile'
            type: array
        type: object
    ConfigConnector:
      properties:
        description:
          description: Description
          type: string
        id:
          description: Id
          type: string
        networks:
          description: Networks
          items:
            description: Network
            type: string
          type: array
        secret:
          description: Secret
          type: string
      required:
      - id
      - description
      - secret
      type: object
    ConfigConnectorMeta:
      properties:
        meta:
          properties:
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            secret:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigConnectorWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigConnector'
        status:
          type: integer
      type: object
    ConfigConnectorsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigConnector'
            type: array
        type: object
    ConfigDeviceRegistration:
      properties:
        allowed_devices:
          description: List of OS which will be allowed to be register via the self
            service portal.
          items:
            description: List of OS which will be allowed to be register via the self
              service portal.
            type: string
          type: array
        category:
          description: The role to assign to devices registered from the specific
            portal. If none is specified, the role of the registrant is used.
          type: string
        description:
          description: Description
          type: string
        id:
          description: Profile Name
          type: string
      required:
      - id
      type: object
    ConfigDeviceRegistrationsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: List
            items:
              $ref: '#/components/schemas/ConfigDeviceRegistration'
            type: array
        type: object
      description: List
    ConfigDomain:
      properties:
        ad_account_lockout_duration:
          description: How long will an account keep locked after hitting bad password
            threshold. In minutes
          type: integer
        ad_account_lockout_threshold:
          description: Max bad login attempts before an account is locked out automatically,
            default is 0, never locks.
          type: integer
        ad_fqdn:
          description: The FQDN of the Active Directory server
          type: string
        ad_old_password_allowed_period:
          description: Old Password Allowed Period in NTLM Authentication. In minutes
          type: integer
        ad_reset_account_lockout_counter_after:
          description: After how long will the lockout counter resets. In minutes.
          type: integer
        ad_server:
          description: The IPv4 of the Active Directory server
          type: string
        bind_dn:
          description: The username of a Domain Admin to use to join the server to
            the domain
          type: string
        bind_pass:
          description: The password of a Domain Admin to use to join the server to
            the domain. Will not be stored permanently and is only used while joining
            the domain.
          type: string
        dns_name:
          description: The DNS name (FQDN) of the domain.
          type: string
        dns_servers:
          description: The IP address(es) of the DNS server(s) for this domain. Comma
            delimited if multiple.
          type: string
        id:
          description: Specify a unique identifier for your configuration.<br/>This
            doesn't have to be related to your domain
          type: string
        machine_account_password:
          description: Password of the machine account to be added to Active Directory.
          type: string
        max_allowed_password_attempts_per_device:
          description: Maximum bad login attempt for a single device.
          type: integer
        nt_key_cache_enabled:
          description: Should the NT Key cache be enabled for this domain?
          type: string
        nt_key_cache_expire:
          description: The amount of seconds an entry should be cached.
          type: integer
        ntlm_auth_host:
          description: The IP address of NTLM auth API
          type: string
        ntlm_auth_port:
          description: The listening port of NTLM auth API.
          type: string
        ntlm_cache:
          description: Should the NTLM cache be enabled for this domain?
          type: string
        ntlm_cache_expiry:
          description: The amount of seconds an entry should be cached.
          type: integer
        ntlm_cache_source:
          description: The source to use to connect to your Active Directory server
            for NTLM caching.
          type: string
        ou:
          description: Use a specific OU for the PacketFence account. The OU string
            read from top to bottom without RDNs and delimited by a '/'. E.g. "Computers/Servers/Unix".
          type: string
        password_is_nt_hash:
          description: Password stored in the config file is NT hash.
          type: string
        registration:
          description: If this option is enabled, the device will be able to reach
            the Active Directory from the registration VLAN.
          type: string
        server_name:
          description: 'This server''s name (account name) in your Active Directory.
            ''%h'' is a placeholder for this server hostname. In a cluster, you must
            use %h and ensure your hostnames are less than 14 characters. You can
            mix ''%h'' with a prefix or suffix (ex: ''pf-%h'') '
          type: string
        status:
          description: Enabled
          type: string
        sticky_dc:
          description: This is used to specify a sticky domain controller to connect
            to. If not specified, default '*' will be used to connect to any available
            domain controller
          type: string
        workgroup:
          description: Workgroup
          type: string
      required:
      - id
      - workgroup
      - ad_fqdn
      - ad_server
      - dns_servers
      - server_name
      - sticky_dc
      - dns_name
      - ou
      - machine_account_password
      type: object
    ConfigDomainJoin:
      properties:
        password:
          description: Domain password
          type: string
        username:
          description: Domain username
          type: string
      required:
      - password
      - username
      type: object
    ConfigDomainMeta:
      properties:
        meta:
          properties:
            ad_account_lockout_duration:
              $ref: '#/components/schemas/Meta'
            ad_account_lockout_threshold:
              $ref: '#/components/schemas/Meta'
            ad_fqdn:
              $ref: '#/components/schemas/Meta'
            ad_old_password_allowed_period:
              $ref: '#/components/schemas/Meta'
            ad_reset_account_lockout_counter_after:
              $ref: '#/components/schemas/Meta'
            ad_server:
              $ref: '#/components/schemas/Meta'
            bind_dn:
              $ref: '#/components/schemas/Meta'
            bind_pass:
              $ref: '#/components/schemas/Meta'
            dns_name:
              $ref: '#/components/schemas/Meta'
            dns_servers:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            machine_account_password:
              $ref: '#/components/schemas/Meta'
            max_allowed_password_attempts_per_device:
              $ref: '#/components/schemas/Meta'
            nt_key_cache_enabled:
              $ref: '#/components/schemas/Meta'
            nt_key_cache_expire:
              $ref: '#/components/schemas/Meta'
            ntlm_auth_host:
              $ref: '#/components/schemas/Meta'
            ntlm_auth_port:
              $ref: '#/components/schemas/Meta'
            ntlm_cache:
              $ref: '#/components/schemas/Meta'
            ntlm_cache_expiry:
              $ref: '#/components/schemas/Meta'
            ntlm_cache_source:
              $ref: '#/components/schemas/Meta'
            ou:
              $ref: '#/components/schemas/Meta'
            password_is_nt_hash:
              $ref: '#/components/schemas/Meta'
            registration:
              $ref: '#/components/schemas/Meta'
            server_name:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            sticky_dc:
              $ref: '#/components/schemas/Meta'
            workgroup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigDomainWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigDomain'
        status:
          type: integer
      type: object
    ConfigDomainsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigDomain'
            type: array
        type: object
    ConfigEventHandler:
      discriminator:
        mapping:
          dhcp: '#/components/schemas/ConfigEventHandlerMetaSubTypeDhcp'
          fortianalyser: '#/components/schemas/ConfigEventHandlerMetaSubTypeFortianalyser'
          nexpose: '#/components/schemas/ConfigEventHandlerMetaSubTypeNexpose'
          regex: '#/components/schemas/ConfigEventHandlerMetaSubTypeRegex'
          security_onion: '#/components/schemas/ConfigEventHandlerMetaSubTypeSecurityOnion'
          snort: '#/components/schemas/ConfigEventHandlerMetaSubTypeSnort'
          suricata: '#/components/schemas/ConfigEventHandlerMetaSubTypeSuricata'
          suricata_md5: '#/components/schemas/ConfigEventHandlerMetaSubTypeSuricataMd5'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigEventHandlerMetaSubTypeSuricata'
      - $ref: '#/components/schemas/ConfigEventHandlerMetaSubTypeSecurityOnion'
      - $ref: '#/components/schemas/ConfigEventHandlerMetaSubTypeSnort'
      - $ref: '#/components/schemas/ConfigEventHandlerMetaSubTypeSuricataMd5'
      - $ref: '#/components/schemas/ConfigEventHandlerMetaSubTypeRegex'
      - $ref: '#/components/schemas/ConfigEventHandlerMetaSubTypeNexpose'
      - $ref: '#/components/schemas/ConfigEventHandlerMetaSubTypeDhcp'
      - $ref: '#/components/schemas/ConfigEventHandlerMetaSubTypeFortianalyser'
    ConfigEventHandlerMetaSubTypeDhcp:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigEventHandlerMetaSubTypeFortianalyser:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigEventHandlerMetaSubTypeNexpose:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigEventHandlerMetaSubTypeRegex:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigEventHandlerMetaSubTypeSecurityOnion:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigEventHandlerMetaSubTypeSnort:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigEventHandlerMetaSubTypeSuricata:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigEventHandlerMetaSubTypeSuricataMd5:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigEventHandlerSubTypeDhcp:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: dhcp
          description: Discriminator `dhcp`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigEventHandlerSubTypeFortianalyser:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: fortianalyser
          description: Discriminator `fortianalyser`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigEventHandlerSubTypeNexpose:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: nexpose
          description: Discriminator `nexpose`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigEventHandlerSubTypeRegex:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rules:
          description: Rules
          items:
            description: Rule - New
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    api_method:
                      description: Api method
                      type: string
                    api_parameters:
                      description: Api parameters
                      type: string
                  type: object
                type: array
              ip_mac_translation:
                description: Perform automatic translation of IPs to MACs and the
                  other way around
                type: string
              last_if_match:
                description: Stop processing rules if this rule matches
                type: string
              name:
                description: Name
                type: string
              rate_limit:
                description: Rate limit requests.
                properties:
                  interval:
                    description: Interval
                    type: integer
                  unit:
                    description: Unit
                    type: string
                type: object
              regex:
                description: Regex
                type: string
            type: object
          type: array
        status:
          description: Enabled
          type: string
        type:
          default: regex
          description: Discriminator `regex`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigEventHandlerSubTypeSecurityOnion:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: security_onion
          description: Discriminator `security_onion`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigEventHandlerSubTypeSnort:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: snort
          description: Discriminator `snort`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigEventHandlerSubTypeSuricata:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: suricata
          description: Discriminator `suricata`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigEventHandlerSubTypeSuricataMd5:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: suricata_md5
          description: Discriminator `suricata_md5`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigEventHandlerWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigEventHandler'
        status:
          type: integer
      type: object
    ConfigEventHandlersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigEventHandler'
            type: array
        type: object
    ConfigEventLogger:
      properties:
        description:
          description: Description
          type: string
        facility:
          description: Facility
          type: string
        host:
          description: Host
          type: string
        id:
          description: Id
          type: string
        namespaces:
          description: Namespaces
          items:
            description: Namespaces
            type: string
          type: array
        port:
          description: Port
          type: integer
        priority:
          description: Priority
          type: string
        type:
          description: Type
          type: string
      required:
      - id
      - description
      - type
      - facility
      - priority
      - port
      - host
      type: object
    ConfigEventLoggerMeta:
      properties:
        meta:
          properties:
            description:
              $ref: '#/components/schemas/Meta'
            facility:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            namespaces:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            priority:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigEventLoggerWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigEventLogger'
        status:
          type: integer
      type: object
    ConfigEventLoggersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigEventLogger'
            type: array
        type: object
    ConfigFilterEnginesDHCPFilter:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        answers:
          description: Answers
          items:
            description: Answer
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      type: object
    ConfigFilterEnginesDHCPFilterMeta:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            answers:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesDHCPFilterWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilter'
        status:
          type: integer
      type: object
    ConfigFilterEnginesDHCPFiltersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilter'
            type: array
        type: object
    ConfigFilterEnginesDNSFilter:
      properties:
        answer:
          description: Answer
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      type: object
    ConfigFilterEnginesDNSFilterMeta:
      properties:
        meta:
          properties:
            answer:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesDNSFilterWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigFilterEnginesDNSFilter'
        status:
          type: integer
      type: object
    ConfigFilterEnginesDNSFiltersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigFilterEnginesDNSFilter'
            type: array
        type: object
    ConfigFilterEnginesProvisioningFilter:
      discriminator:
        mapping:
          accept: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeAccept'
          airwatch: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeAirwatch'
          android: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeAndroid'
          deny: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeDeny'
          dpsk: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeDpsk'
          google_workspace_chromebook: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeGoogleWorkspaceChromebook'
          intune: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeIntune'
          jamf: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeJamf'
          kandji: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeKandji'
          lookup: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeLookup'
          mobileconfig: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeMobileconfig'
          mobileiron: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeMobileiron'
          sentinelone: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeSentinelone'
          windows: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeWindows'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeDeny'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeMobileconfig'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeAccept'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeIntune'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeJamf'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeAirwatch'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeWindows'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeLookup'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeGoogleWorkspaceChromebook'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeSentinelone'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeAndroid'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeMobileiron'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeDpsk'
      - $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterMetaSubTypeKandji'
    ConfigFilterEnginesProvisioningFilterMetaSubTypeAccept:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeAirwatch:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeAndroid:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeDeny:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeDpsk:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeGoogleWorkspaceChromebook:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeIntune:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeJamf:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeKandji:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeLookup:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeMobileconfig:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeMobileiron:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeSentinelone:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterMetaSubTypeWindows:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeAccept:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: accept
          description: Discriminator `accept`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeAirwatch:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: airwatch
          description: Discriminator `airwatch`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeAndroid:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: android
          description: Discriminator `android`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeDeny:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: deny
          description: Discriminator `deny`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeDpsk:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: dpsk
          description: Discriminator `dpsk`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeGoogleWorkspaceChromebook:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: google_workspace_chromebook
          description: Discriminator `google_workspace_chromebook`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeIntune:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: intune
          description: Discriminator `intune`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeJamf:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: jamf
          description: Discriminator `jamf`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeKandji:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: kandji
          description: Discriminator `kandji`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeLookup:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: lookup
          description: Discriminator `lookup`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeMobileconfig:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: mobileconfig
          description: Discriminator `mobileconfig`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeMobileiron:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: mobileiron
          description: Discriminator `mobileiron`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeSentinelone:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: sentinelone
          description: Discriminator `sentinelone`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterSubTypeWindows:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        type:
          default: windows
          description: Discriminator `windows`
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      - type
      type: object
    ConfigFilterEnginesProvisioningFilterWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilter'
        status:
          type: integer
      type: object
    ConfigFilterEnginesProvisioningFiltersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilter'
            type: array
        type: object
    ConfigFilterEnginesRADIUSFilter:
      properties:
        answers:
          description: Answers
          items:
            description: Answer
            properties:
              prefix:
                description: Prefix
                type: string
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        merge_answer:
          description: Merge answer
          type: string
        radius_status:
          description: Radius status
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      type: object
    ConfigFilterEnginesRADIUSFilterMeta:
      properties:
        meta:
          properties:
            answers:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            merge_answer:
              $ref: '#/components/schemas/Meta'
            radius_status:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesRADIUSFilterWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilter'
        status:
          type: integer
      type: object
    ConfigFilterEnginesRADIUSFiltersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilter'
            type: array
        type: object
    ConfigFilterEnginesSwitchFilter:
      properties:
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        log:
          description: Log
          type: string
        params:
          description: Params
          items:
            description: Param
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
        switch:
          description: Switch
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      type: object
    ConfigFilterEnginesSwitchFilterMeta:
      properties:
        meta:
          properties:
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            log:
              $ref: '#/components/schemas/Meta'
            params:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            switch:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesSwitchFilterWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilter'
        status:
          type: integer
      type: object
    ConfigFilterEnginesSwitchFiltersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilter'
            type: array
        type: object
    ConfigFilterEnginesVlanFilter:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        actions_synchronous:
          description: Actions synchronous
          type: string
        condition:
          description: Condition
          properties:
            field:
              description: Field
              type: string
            op:
              description: Value
              type: string
            value:
              description: Value
              type: string
            values:
              description: Values
              items:
                description: Value
                type: string
              type: array
          type: object
        description:
          description: Description
          type: string
        id:
          description: Rule Name
          type: string
        role:
          description: Role
          type: string
        run_actions:
          description: Run Actions
          type: string
        scopes:
          description: Scopes
          items:
            description: Scopes
            type: string
          type: array
        status:
          description: Enable Rule
          type: string
      required:
      - id
      - description
      - condition
      - scopes
      type: object
    ConfigFilterEnginesVlanFilterMeta:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            actions_synchronous:
              $ref: '#/components/schemas/Meta'
            condition:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            role:
              $ref: '#/components/schemas/Meta'
            run_actions:
              $ref: '#/components/schemas/Meta'
            scopes:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFilterEnginesVlanFilterWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigFilterEnginesVlanFilter'
        status:
          type: integer
      type: object
    ConfigFilterEnginesVlanFiltersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigFilterEnginesVlanFilter'
            type: array
        type: object
    ConfigFingerbankSetting:
      properties: {}
      type: object
    ConfigFingerbankSettingMeta:
      properties:
        meta:
          properties: {}
          type: object
      type: object
    ConfigFingerbankSettingWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigFingerbankSetting'
        status:
          type: integer
      type: object
    ConfigFingerbankSettingsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigFingerbankSetting'
            type: array
        type: object
    ConfigFirewall:
      discriminator:
        mapping:
          BarracudaNG: '#/components/schemas/ConfigFirewallMetaSubTypeBarracudang'
          Checkpoint: '#/components/schemas/ConfigFirewallMetaSubTypeCheckpoint'
          ContentKeeper: '#/components/schemas/ConfigFirewallMetaSubTypeContentkeeper'
          FamilyZone: '#/components/schemas/ConfigFirewallMetaSubTypeFamilyzone'
          FortiGate: '#/components/schemas/ConfigFirewallMetaSubTypeFortigate'
          Iboss: '#/components/schemas/ConfigFirewallMetaSubTypeIboss'
          JSONRPC: '#/components/schemas/ConfigFirewallMetaSubTypeJsonrpc'
          JuniperSRX: '#/components/schemas/ConfigFirewallMetaSubTypeJunipersrx'
          LightSpeedRocket: '#/components/schemas/ConfigFirewallMetaSubTypeLightspeedrocket'
          PaloAlto: '#/components/schemas/ConfigFirewallMetaSubTypePaloalto'
          SmoothWall: '#/components/schemas/ConfigFirewallMetaSubTypeSmoothwall'
          WatchGuard: '#/components/schemas/ConfigFirewallMetaSubTypeWatchguard'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypeJunipersrx'
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypeContentkeeper'
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypeFortigate'
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypeBarracudang'
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypeSmoothwall'
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypePaloalto'
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypeJsonrpc'
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypeCheckpoint'
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypeFamilyzone'
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypeLightspeedrocket'
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypeWatchguard'
      - $ref: '#/components/schemas/ConfigFirewallMetaSubTypeIboss'
    ConfigFirewallMeta:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypeBarracudang:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypeCheckpoint:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypeContentkeeper:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypeFamilyzone:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            deviceid:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypeFortigate:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypeIboss:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            nac_name:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypeJsonrpc:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypeJunipersrx:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypeLightspeedrocket:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypePaloalto:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            transport:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
            vsys:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypeSmoothwall:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallMetaSubTypeWatchguard:
      properties:
        meta:
          properties:
            cache_timeout:
              $ref: '#/components/schemas/Meta'
            cache_updates:
              $ref: '#/components/schemas/Meta'
            categories:
              $ref: '#/components/schemas/Meta'
            default_realm:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            networks:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uid:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            username_format:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFirewallSubTypeBarracudang:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: Secret or Key
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        type:
          default: BarracudaNG
          description: Discriminator `BarracudaNG`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username:
          description: Username
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
      required:
      - id
      - password
      - username
      type: object
    ConfigFirewallSubTypeCheckpoint:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: Secret
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        type:
          default: Checkpoint
          description: Discriminator `Checkpoint`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
      required:
      - id
      - password
      type: object
    ConfigFirewallSubTypeContentkeeper:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: Secret or Key
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        type:
          default: ContentKeeper
          description: Discriminator `ContentKeeper`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
      required:
      - id
      - password
      type: object
    ConfigFirewallSubTypeFamilyzone:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        deviceid:
          description: Please define the device id.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: Specify the password for the Family Zone API
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        type:
          default: FamilyZone
          description: Discriminator `FamilyZone`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
      required:
      - id
      type: object
    ConfigFirewallSubTypeFortigate:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: Secret or Key
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        type:
          default: FortiGate
          description: Discriminator `FortiGate`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
      required:
      - id
      - password
      type: object
    ConfigFirewallSubTypeIboss:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        nac_name:
          description: Should match the NAC name from the Iboss configuration
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: Change the default key if necessary
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        type:
          default: Iboss
          description: Discriminator `Iboss`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
      required:
      - id
      - password
      type: object
    ConfigFirewallSubTypeJsonrpc:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: Password
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        type:
          default: JSONRPC
          description: Discriminator `JSONRPC`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username:
          description: Username
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
      required:
      - id
      - password
      - username
      type: object
    ConfigFirewallSubTypeJunipersrx:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: Password
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        type:
          default: JuniperSRX
          description: Discriminator `JuniperSRX`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username:
          description: Username
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
      required:
      - id
      - password
      - username
      type: object
    ConfigFirewallSubTypeLightspeedrocket:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: Secret or Key
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        type:
          default: LightSpeedRocket
          description: Discriminator `LightSpeedRocket`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
      required:
      - id
      - password
      type: object
    ConfigFirewallSubTypePaloalto:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: If using the HTTP transport, specify the password for the Palo
            Alto API
          type: string
        port:
          description: If you use an alternative port, please specify. This parameter
            is ignored when the Syslog transport is selected.
          type: integer
        transport:
          description: Transport
          type: string
        type:
          default: PaloAlto
          description: Discriminator `PaloAlto`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
        vsys:
          description: Please define the Virtual System number. This only has an effect
            when used with the HTTP transport.
          type: integer
      required:
      - id
      type: object
    ConfigFirewallSubTypeSmoothwall:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: Secret or Key
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        type:
          default: SmoothWall
          description: Discriminator `SmoothWall`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
      required:
      - id
      - password
      type: object
    ConfigFirewallSubTypeWatchguard:
      properties:
        cache_timeout:
          description: Adjust the "Cache timeout" to half the expiration delay in
            your firewall.<br/>Your DHCP renewal interval should match this value.
          type: integer
        cache_updates:
          description: Enable this to debounce updates to the Firewall.<br/>By default,
            PacketFence will send a SSO on every DHCP request for every device. Enabling
            this enables "sleep" periods during which the update is not sent if the
            informations stay the same.
          type: string
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        default_realm:
          description: The default realm to be used while formatting the username
            when no realm can be extracted from the username.
          type: string
        id:
          description: Hostname or IP Address
          type: string
        networks:
          description: 'Comma delimited list of networks on which the SSO applies.<br/>Format
            : 192.168.0.0/24'
          type: string
        password:
          description: Secret or Key
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        type:
          default: WatchGuard
          description: Discriminator `WatchGuard`
          type: string
        uid:
          description: UID type
          type: string
        use_connector:
          description: Use connector
          type: string
        username_format:
          description: Defines how to format the username that is sent to your firewall.
            $username represents the username and $realm represents the realm of your
            user if applicable. $pf_username represents the unstripped username as
            it is stored in the PacketFence database. If left empty, it will use the
            username as stored in PacketFence (value of $pf_username).
          type: string
      required:
      - id
      - password
      type: object
    ConfigFirewallWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigFirewall'
        status:
          type: integer
      type: object
    ConfigFirewallsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigFirewall'
            type: array
        type: object
    ConfigFloatingDevice:
      properties:
        id:
          description: MAC Address
          type: string
        ip:
          description: IP Address
          type: string
        pvid:
          description: VLAN in which PacketFence should put the port
          type: integer
        taggedVlan:
          description: Comma separated list of VLANs. If the port is a multi-vlan,
            these are the VLANs that have to be tagged on the port.
          type: string
        trunkPort:
          description: The port must be configured as a muti-vlan port
          type: string
      required:
      - id
      - pvid
      type: object
    ConfigFloatingDeviceMeta:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            ip:
              $ref: '#/components/schemas/Meta'
            pvid:
              $ref: '#/components/schemas/Meta'
            taggedVlan:
              $ref: '#/components/schemas/Meta'
            trunkPort:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigFloatingDeviceWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigFloatingDevice'
        status:
          type: integer
      type: object
    ConfigFloatingDevicesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigFloatingDevice'
            type: array
        type: object
    ConfigInterfaceBase:
      properties:
        additional_listening_daemons:
          items:
            type: string
          type: array
        address:
          type: string
        coa:
          nullable: true
          type: string
        dhcpd_enabled:
          description: Whether or not DHCP is enabled for this interface
          enum:
          - enabled
          - disabled
          nullable: true
          type: string
        dns:
          description: The DNS server of the network tied to the interface.
          nullable: true
          type: string
        high_availability:
          description: The RSA server key for the resource in PEM encoded format
          enum:
          - 1
          - 0
          type: string
        ipaddress:
          description: The IP address of the interface
          type: string
        ipv6_address:
          description: The IPv6 address of the interface
          type: string
        ipv6_network:
          description: The network associated to the IPv6 interface
          type: string
        ipv6_prefix:
          type: string
        is_running:
          type: boolean
        master:
          nullable: true
          type: string
        name:
          description: The name of the interface
          type: string
        nat_enabled:
          description: Whether or not NAT is enabled for this interface
          enum:
          - 1
          - 0
          type: string
        netmask:
          description: The netmask of the interface
          type: string
        network:
          description: The network associated to the IPv4 interface
          type: string
        network_iseditable:
          description: Whether or not the network is editable
          type: boolean
        networks:
          items:
            type: string
          type: array
        not_editable:
          type: boolean
        reg_network:
          description: Registration IP Address CIDR format
          nullable: true
          type: string
        split_network:
          description: Whether or not to perform network split by role
          nullable: true
          type: string
        type:
          description: The network type of the interface
          type: string
        vip:
          description: The virtual IP address of the interface (only for active/passive
            clusters)
          type: string
        vlan:
          type: string
      type: object
    ConfigInterfaceCreate:
      allOf:
      - $ref: '#/components/schemas/ConfigInterfaceBase'
      - $ref: '#/components/schemas/ConfigInterfaceVlan'
    ConfigInterfaceGet:
      allOf:
      - $ref: '#/components/schemas/ConfigInterfaceBase'
      - properties:
          hwaddr:
            description: The MAC address of the interface
            type: string
          ifindex:
            description: The ifindex
            type: string
          is_running:
            description: Whether or not the interface is running (up)
            type: boolean
          master:
            description: The physical interface associated to a VLAN interface when
              applicable
            type: string
        type: object
    ConfigInterfaceUpdate:
      $ref: '#/components/schemas/ConfigInterfaceBase'
    ConfigInterfaceVlan:
      properties:
        vlan:
          description: The VLAN for the interface if applicable
          type: string
      type: object
    ConfigInterfacesList:
      properties:
        items:
          items:
            $ref: '#/components/schemas/ConfigInterfaceGet'
          type: array
      type: object
    ConfigL2Network:
      properties:
        algorithm:
          description: DHCP Algorithm
          type: string
        description:
          description: Description
          type: string
        dhcp_default_lease_time:
          description: Default Lease Time
          type: integer
        dhcp_end:
          description: Ending IP Address
          type: string
        dhcp_max_lease_time:
          description: Max Lease Time
          type: integer
        dhcp_reply_ip:
          description: DHCP IP Reply
          type: string
        dhcp_start:
          description: Starting IP Address
          type: string
        dns:
          description: Should match the IP of a registration interface or the production
            DNS server(s) if the network is Inline L2/L3 (space delimited list of
            IP addresses)
          type: string
        ip_assigned:
          description: List like 00:11:22:33:44:55:192.168.0.12,11:22:33:44:55:66:192.168.0.13
          type: string
        ip_reserved:
          description: Range like 192.168.0.1-192.168.0.20 and or IP like 192.168.0.22,192.168.0.24
            will be excluded from the DHCP pool
          type: string
        netflow_accounting_enabled:
          description: Enable Net Flow Accounting
          type: string
        netmask:
          description: Netmask
          type: string
        pool_backend:
          description: DHCP Pool Backend Type
          type: string
        portal_fqdn:
          description: Define the FQDN of the portal for this network. Leaving empty
            will use the FQDN of the PacketFence server
          type: string
        type:
          description: Type
          type: string
      type: object
    ConfigL2NetworkMeta:
      properties:
        meta:
          properties:
            algorithm:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            dhcp_default_lease_time:
              $ref: '#/components/schemas/Meta'
            dhcp_end:
              $ref: '#/components/schemas/Meta'
            dhcp_max_lease_time:
              $ref: '#/components/schemas/Meta'
            dhcp_reply_ip:
              $ref: '#/components/schemas/Meta'
            dhcp_start:
              $ref: '#/components/schemas/Meta'
            dns:
              $ref: '#/components/schemas/Meta'
            ip_assigned:
              $ref: '#/components/schemas/Meta'
            ip_reserved:
              $ref: '#/components/schemas/Meta'
            netflow_accounting_enabled:
              $ref: '#/components/schemas/Meta'
            netmask:
              $ref: '#/components/schemas/Meta'
            pool_backend:
              $ref: '#/components/schemas/Meta'
            portal_fqdn:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigL2NetworkWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigL2Network'
        status:
          type: integer
      type: object
    ConfigL2NetworksList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigL2Network'
            type: array
        type: object
    ConfigList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/Config'
            type: array
        type: object
    ConfigMaintenanceTask:
      discriminator:
        mapping:
          acct_cleanup: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeAcctCleanup'
          acct_maintenance: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeAcctMaintenance'
          admin_api_audit_log_cleanup: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeAdminApiAuditLogCleanup'
          auth_log_cleanup: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeAuthLogCleanup'
          bandwidth_maintenance: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeBandwidthMaintenance'
          certificates_check: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeCertificatesCheck'
          cleanup_chi_database_cache: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeCleanupChiDatabaseCache'
          cluster_check: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeClusterCheck'
          dns_audit_log_cleanup: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeDnsAuditLogCleanup'
          fingerbank_data_update: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeFingerbankDataUpdate'
          flush_dns_audit_log: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeFlushDnsAuditLog'
          flush_radius_audit_log: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeFlushRadiusAuditLog'
          ip4log_cleanup: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeIp4logCleanup'
          ip6log_cleanup: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeIp6logCleanup'
          locationlog_cleanup: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeLocationlogCleanup'
          node_cleanup: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeNodeCleanup'
          node_current_session_cleanup: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeNodeCurrentSessionCleanup'
          nodes_maintenance: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeNodesMaintenance'
          option82_query: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeOption82Query'
          password_of_the_day: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypePasswordOfTheDay'
          person_cleanup: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypePersonCleanup'
          pfflow: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypePfflow'
          pki_certificates_check: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypePkiCertificatesCheck'
          provisioning_compliance_poll: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeProvisioningCompliancePoll'
          purge_binary_logs: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypePurgeBinaryLogs'
          radius_audit_log_cleanup: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeRadiusAuditLogCleanup'
          security_event_maintenance: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeSecurityEventMaintenance'
          switch_cache_lldpLocalPort_description: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeSwitchCacheLldplocalportDescription'
          ubiquiti_ap_mac_to_ip: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeUbiquitiApMacToIp'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeOption82Query'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypePersonCleanup'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeIp6logCleanup'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeDnsAuditLogCleanup'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeSwitchCacheLldplocalportDescription'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeCleanupChiDatabaseCache'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeAuthLogCleanup'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeProvisioningCompliancePoll'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeClusterCheck'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeSecurityEventMaintenance'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypePkiCertificatesCheck'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeAcctMaintenance'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeRadiusAuditLogCleanup'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypePfflow'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeFlushDnsAuditLog'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeBandwidthMaintenance'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeFingerbankDataUpdate'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypePurgeBinaryLogs'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeNodesMaintenance'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeCertificatesCheck'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeAdminApiAuditLogCleanup'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeNodeCurrentSessionCleanup'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeNodeCleanup'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeFlushRadiusAuditLog'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeAcctCleanup'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypePasswordOfTheDay'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeIp4logCleanup'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeUbiquitiApMacToIp'
      - $ref: '#/components/schemas/ConfigMaintenanceTaskMetaSubTypeLocationlogCleanup'
    ConfigMaintenanceTaskMetaSubTypeAcctCleanup:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeAcctMaintenance:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeAdminApiAuditLogCleanup:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeAuthLogCleanup:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeBandwidthMaintenance:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            history_batch:
              $ref: '#/components/schemas/Meta'
            history_timeout:
              $ref: '#/components/schemas/Meta'
            history_window:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            session_batch:
              $ref: '#/components/schemas/Meta'
            session_timeout:
              $ref: '#/components/schemas/Meta'
            session_window:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeCertificatesCheck:
      properties:
        meta:
          properties:
            certificates:
              $ref: '#/components/schemas/Meta'
            delay:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeCleanupChiDatabaseCache:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeClusterCheck:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeDnsAuditLogCleanup:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeFingerbankDataUpdate:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeFlushDnsAuditLog:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeFlushRadiusAuditLog:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeIp4logCleanup:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            rotate:
              $ref: '#/components/schemas/Meta'
            rotate_batch:
              $ref: '#/components/schemas/Meta'
            rotate_timeout:
              $ref: '#/components/schemas/Meta'
            rotate_window:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeIp6logCleanup:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            rotate:
              $ref: '#/components/schemas/Meta'
            rotate_batch:
              $ref: '#/components/schemas/Meta'
            rotate_timeout:
              $ref: '#/components/schemas/Meta'
            rotate_window:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeLocationlogCleanup:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeNodeCleanup:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            delete_window:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            unreg_window:
              $ref: '#/components/schemas/Meta'
            voip:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeNodeCurrentSessionCleanup:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeNodesMaintenance:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeOption82Query:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypePasswordOfTheDay:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypePersonCleanup:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypePfflow:
      properties:
        meta:
          properties:
            group_id:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            kafka_brokers:
              $ref: '#/components/schemas/Meta'
            read_topic:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            send_topic:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            submit_batch:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypePkiCertificatesCheck:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeProvisioningCompliancePoll:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypePurgeBinaryLogs:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeRadiusAuditLogCleanup:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeSecurityEventMaintenance:
      properties:
        meta:
          properties:
            batch:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeSwitchCacheLldplocalportDescription:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            process_switchranges:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskMetaSubTypeUbiquitiApMacToIp:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            schedule:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMaintenanceTaskSubTypeAcctCleanup:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: acct_cleanup
          description: Discriminator `acct_cleanup`
          type: string
        window:
          description: Window
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeAcctMaintenance:
      properties:
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: acct_maintenance
          description: Discriminator `acct_maintenance`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeAdminApiAuditLogCleanup:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: admin_api_audit_log_cleanup
          description: Discriminator `admin_api_audit_log_cleanup`
          type: string
        window:
          description: Window to apply the job to. In the case of a deletion, setting
            this to 7 days would delete affected data older than 7 days.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeAuthLogCleanup:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: auth_log_cleanup
          description: Discriminator `auth_log_cleanup`
          type: string
        window:
          description: Window
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeBandwidthMaintenance:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        history_batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        history_timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        history_window:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        session_batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        session_timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        session_window:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: bandwidth_maintenance
          description: Discriminator `bandwidth_maintenance`
          type: string
        window:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeCertificatesCheck:
      properties:
        certificates:
          description: SSL certificate(s) to monitor. Comma-delimited list
          type: string
        delay:
          description: Minimum gap before certificate expiration date (will the certificate
            expires in ...)
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: certificates_check
          description: Discriminator `certificates_check`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeCleanupChiDatabaseCache:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: cleanup_chi_database_cache
          description: Discriminator `cleanup_chi_database_cache`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeClusterCheck:
      properties:
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: cluster_check
          description: Discriminator `cluster_check`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeDnsAuditLogCleanup:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: dns_audit_log_cleanup
          description: Discriminator `dns_audit_log_cleanup`
          type: string
        window:
          description: Window to apply the job to. In the case of a deletion, setting
            this to 7 days would delete affected data older than 7 days.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeFingerbankDataUpdate:
      properties:
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: fingerbank_data_update
          description: Discriminator `fingerbank_data_update`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeFlushDnsAuditLog:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: flush_dns_audit_log
          description: Discriminator `flush_dns_audit_log`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeFlushRadiusAuditLog:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: flush_radius_audit_log
          description: Discriminator `flush_radius_audit_log`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeIp4logCleanup:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        rotate:
          description: Enable or disable ip4log rotation (moving ip4log_history records
            to ip4log_archive)<br>If disabled, this task will delete from the ip4log_history
            table rather than the ip4log_archive.
          type: string
        rotate_batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        rotate_timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        rotate_window:
          description: How long to keep ip4log history entry before rotating it to
            ip4log archive.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: ip4log_cleanup
          description: Discriminator `ip4log_cleanup`
          type: string
        window:
          description: How long to keep a ip4log archive entry before deleting it
            (or ip4log history if rotation is disabled)
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeIp6logCleanup:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        rotate:
          description: Enable or disable ip6log rotation (moving ip6log_history records
            to ip6log_archive)<br>If disabled, this task will delete from the ip6log_history
            table rather than the ip6log_archive.
          type: string
        rotate_batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        rotate_timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        rotate_window:
          description: How long to keep ip6log history entry before rotating it to
            ip6log archive.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: ip6log_cleanup
          description: Discriminator `ip6log_cleanup`
          type: string
        window:
          description: How long to keep a ip6log archive entry before deleting it
            (or ip6log history if rotation is disabled)
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeLocationlogCleanup:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: locationlog_cleanup
          description: Discriminator `locationlog_cleanup`
          type: string
        window:
          description: Window to apply the job to. In the case of a deletion, setting
            this to 7 days would delete affected data older than 7 days.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeNodeCleanup:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        delete_window:
          description: How long can an unregistered node be inactive on the network
            before being deleted.<br>This shouldn't be used if you are using port-security
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: node_cleanup
          description: Discriminator `node_cleanup`
          type: string
        unreg_window:
          description: How long can a registered node be inactive on the network before
            it becomes unregistered
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        voip:
          description: Enable voip device cleanup
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeNodeCurrentSessionCleanup:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: node_current_session_cleanup
          description: Discriminator `node_current_session_cleanup`
          type: string
        window:
          description: Window
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeNodesMaintenance:
      properties:
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: nodes_maintenance
          description: Discriminator `nodes_maintenance`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeOption82Query:
      properties:
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: option82_query
          description: Discriminator `option82_query`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypePasswordOfTheDay:
      properties:
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: password_of_the_day
          description: Discriminator `password_of_the_day`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypePersonCleanup:
      properties:
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: person_cleanup
          description: Discriminator `person_cleanup`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypePfflow:
      properties:
        group_id:
          description: 'The Kafka Consumer Group ID '
          type: string
        id:
          description: Pfcron Name
          type: string
        kafka_brokers:
          description: Kafka Brokers
          type: string
        read_topic:
          description: The Kafka topic to read pfflows from
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        send_topic:
          description: The Kafka topic to write network events to
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        submit_batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        type:
          default: pfflow
          description: Discriminator `pfflow`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypePkiCertificatesCheck:
      properties:
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: pki_certificates_check
          description: Discriminator `pki_certificates_check`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeProvisioningCompliancePoll:
      properties:
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: provisioning_compliance_poll
          description: Discriminator `provisioning_compliance_poll`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypePurgeBinaryLogs:
      properties:
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: purge_binary_logs
          description: Discriminator `purge_binary_logs`
          type: string
        window:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeRadiusAuditLogCleanup:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: radius_audit_log_cleanup
          description: Discriminator `radius_audit_log_cleanup`
          type: string
        window:
          description: Window to apply the job to. In the case of a deletion, setting
            this to 7 days would delete affected data older than 7 days.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeSecurityEventMaintenance:
      properties:
        batch:
          description: Amount of items that will be processed in each batch of this
            task. Batches are executed until there is no more items to process or
            until the timeout is reached.
          type: integer
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        timeout:
          description: Maximum amount of time this task can run.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        type:
          default: security_event_maintenance
          description: Discriminator `security_event_maintenance`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeSwitchCacheLldplocalportDescription:
      properties:
        id:
          description: Pfcron Name
          type: string
        process_switchranges:
          description: Whether or not a switch range should be expanded to process
            each of its IPs
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: switch_cache_lldpLocalPort_description
          description: Discriminator `switch_cache_lldpLocalPort_description`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskSubTypeUbiquitiApMacToIp:
      properties:
        id:
          description: Pfcron Name
          type: string
        schedule:
          description: The schedule for maintenance task (cron like spec).
          type: string
        status:
          description: Whether or not this task is enabled.<br>Requires a restart
            of pfcron to be effective.
          type: string
        type:
          default: ubiquiti_ap_mac_to_ip
          description: Discriminator `ubiquiti_ap_mac_to_ip`
          type: string
      required:
      - id
      - type
      type: object
    ConfigMaintenanceTaskWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigMaintenanceTask'
        status:
          type: integer
      type: object
    ConfigMaintenanceTasksList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigMaintenanceTask'
            type: array
        type: object
    ConfigMfa:
      discriminator:
        mapping:
          Akamai: '#/components/schemas/ConfigMfaMetaSubTypeAkamai'
          TOTP: '#/components/schemas/ConfigMfaMetaSubTypeTotp'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigMfaMetaSubTypeAkamai'
      - $ref: '#/components/schemas/ConfigMfaMetaSubTypeTotp'
    ConfigMfaMetaSubTypeAkamai:
      properties:
        meta:
          properties:
            app_id:
              $ref: '#/components/schemas/Meta'
            cache_duration:
              $ref: '#/components/schemas/Meta'
            callback_url:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            post_mfa_validation_cache_duration:
              $ref: '#/components/schemas/Meta'
            radius_mfa_method:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            signing_key:
              $ref: '#/components/schemas/Meta'
            split_char:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            verify_key:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMfaMetaSubTypeTotp:
      properties:
        meta:
          properties:
            cache_duration:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            post_mfa_validation_cache_duration:
              $ref: '#/components/schemas/Meta'
            radius_mfa_method:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            split_char:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigMfaSubTypeAkamai:
      properties:
        app_id:
          description: App id
          type: string
        cache_duration:
          description: Cache duration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        callback_url:
          description: Callback url
          type: string
        host:
          description: Host
          type: string
        id:
          description: Id
          type: string
        post_mfa_validation_cache_duration:
          description: Post mfa validation cache duration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        radius_mfa_method:
          description: Radius mfa method
          type: string
        scope:
          description: Scope
          type: string
        signing_key:
          description: Signing key
          type: string
        split_char:
          description: Split char
          type: string
        type:
          default: Akamai
          description: Discriminator `Akamai`
          type: string
        verify_key:
          description: Verify key
          type: string
      required:
      - id
      - split_char
      - app_id
      - signing_key
      - verify_key
      - host
      - callback_url
      - radius_mfa_method
      type: object
    ConfigMfaSubTypeTotp:
      properties:
        cache_duration:
          description: Cache duration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        id:
          description: Id
          type: string
        post_mfa_validation_cache_duration:
          description: Post mfa validation cache duration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        radius_mfa_method:
          description: Radius mfa method
          type: string
        scope:
          description: Scope
          type: string
        split_char:
          description: Split char
          type: string
        type:
          default: TOTP
          description: Discriminator `TOTP`
          type: string
      required:
      - id
      - split_char
      - radius_mfa_method
      type: object
    ConfigMfaWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigMfa'
        status:
          type: integer
      type: object
    ConfigMfasList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigMfa'
            type: array
        type: object
    ConfigNetworkBehaviorPoliciesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigNetworkBehaviorPolicy'
            type: array
        type: object
    ConfigNetworkBehaviorPolicy:
      properties:
        blacklisted_ip_hosts_threshold:
          description: Blacklisted ip hosts threshold
          type: integer
        blacklisted_ip_hosts_window:
          description: Blacklisted ip hosts window
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        blacklisted_ports:
          description: Blacklisted ports
          type: string
        blacklisted_ports_window:
          description: Blacklisted ports window
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        description:
          description: Description
          type: string
        device_attributes_diff_score:
          description: Device attributes diff score
          type: integer
        device_attributes_diff_threshold_overrides:
          description: Device attributes diff threshold overrides
          items:
            description: Device attributes diff threshold override
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        devices_excluded:
          description: Devices excluded
          items:
            description: Devices excluded
            type: string
          type: array
        devices_included:
          description: Devices included
          items:
            description: Devices included
            type: string
          type: array
        id:
          description: Id
          type: string
        status:
          description: Status
          type: string
        watch_blacklisted_ips:
          description: Watch blacklisted ips
          type: string
        watched_device_attributes:
          description: Watched device attributes
          items:
            description: Watched device attributes
            type: string
          type: array
        whitelisted_ips:
          description: Whitelisted ips
          type: string
      required:
      - id
      - status
      - watch_blacklisted_ips
      - blacklisted_ip_hosts_threshold
      - device_attributes_diff_score
      type: object
    ConfigNetworkBehaviorPolicyMeta:
      properties:
        meta:
          properties:
            blacklisted_ip_hosts_threshold:
              $ref: '#/components/schemas/Meta'
            blacklisted_ip_hosts_window:
              $ref: '#/components/schemas/Meta'
            blacklisted_ports:
              $ref: '#/components/schemas/Meta'
            blacklisted_ports_window:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            device_attributes_diff_score:
              $ref: '#/components/schemas/Meta'
            device_attributes_diff_threshold_overrides:
              $ref: '#/components/schemas/Meta'
            devices_excluded:
              $ref: '#/components/schemas/Meta'
            devices_included:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            watch_blacklisted_ips:
              $ref: '#/components/schemas/Meta'
            watched_device_attributes:
              $ref: '#/components/schemas/Meta'
            whitelisted_ips:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigNetworkBehaviorPolicyWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigNetworkBehaviorPolicy'
        status:
          type: integer
      type: object
    ConfigPkiProvider:
      discriminator:
        mapping:
          packetfence_local: '#/components/schemas/ConfigPkiProviderMetaSubTypePacketfenceLocal'
          packetfence_pki: '#/components/schemas/ConfigPkiProviderMetaSubTypePacketfencePki'
          scep: '#/components/schemas/ConfigPkiProviderMetaSubTypeScep'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigPkiProviderMetaSubTypePacketfencePki'
      - $ref: '#/components/schemas/ConfigPkiProviderMetaSubTypePacketfenceLocal'
      - $ref: '#/components/schemas/ConfigPkiProviderMetaSubTypeScep'
    ConfigPkiProviderMetaSubTypePacketfenceLocal:
      properties:
        meta:
          properties:
            ca_cert_path:
              $ref: '#/components/schemas/Meta'
            ca_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            client_cert_path:
              $ref: '#/components/schemas/Meta'
            client_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            client_key_path:
              $ref: '#/components/schemas/Meta'
            client_key_path_upload:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            server_cert_path:
              $ref: '#/components/schemas/Meta'
            server_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPkiProviderMetaSubTypePacketfencePki:
      properties:
        meta:
          properties:
            ca_cert_path:
              $ref: '#/components/schemas/Meta'
            ca_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            cn_attribute:
              $ref: '#/components/schemas/Meta'
            cn_format:
              $ref: '#/components/schemas/Meta'
            country:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            locality:
              $ref: '#/components/schemas/Meta'
            organization:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            postalcode:
              $ref: '#/components/schemas/Meta'
            profile:
              $ref: '#/components/schemas/Meta'
            proto:
              $ref: '#/components/schemas/Meta'
            revoke_on_unregistration:
              $ref: '#/components/schemas/Meta'
            server_cert_path:
              $ref: '#/components/schemas/Meta'
            server_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            state:
              $ref: '#/components/schemas/Meta'
            streetaddress:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPkiProviderMetaSubTypeScep:
      properties:
        meta:
          properties:
            ca_cert_path:
              $ref: '#/components/schemas/Meta'
            ca_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            cn_attribute:
              $ref: '#/components/schemas/Meta'
            cn_format:
              $ref: '#/components/schemas/Meta'
            country:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            locality:
              $ref: '#/components/schemas/Meta'
            organization:
              $ref: '#/components/schemas/Meta'
            organizational_unit:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            server_cert_path:
              $ref: '#/components/schemas/Meta'
            server_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            state:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            url:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPkiProviderSubTypePacketfenceLocal:
      properties:
        ca_cert_path:
          description: Path of the CA certificate used to generate client certificate/key
            combination
          type: string
        ca_cert_path_upload:
          description: Ca cert path upload
          type: file
        client_cert_path:
          description: Path of the client cert that will be used to generate the p12
          type: string
        client_cert_path_upload:
          description: Client cert path upload
          type: file
        client_key_path:
          description: Path of the client key that will be used to generate the p12
          type: string
        client_key_path_upload:
          description: Client key path upload
          type: file
        id:
          description: Id
          type: string
        server_cert_path:
          description: Path of the RADIUS server authentication certificate
          type: string
        server_cert_path_upload:
          description: Server cert path upload
          type: file
        type:
          default: packetfence_local
          description: Discriminator `packetfence_local`
          type: string
      required:
      - id
      - type
      type: object
    ConfigPkiProviderSubTypePacketfencePki:
      properties:
        ca_cert_path:
          description: Path of the CA certificate that will generate your certificates
          type: string
        ca_cert_path_upload:
          description: Ca cert path upload
          type: file
        cn_attribute:
          description: Defines what attribute of the node to use as the common name
            during the certificate generation
          type: string
        cn_format:
          description: Defines how the common name will be formated. %s will expand
            to the defined Common Name Attribute value
          type: string
        country:
          description: Country for the certificate
          type: string
        host:
          description: Host which hosts the PacketFence PKI
          type: string
        id:
          description: Id
          type: string
        locality:
          description: Locality for the certificate
          type: string
        organization:
          description: Organization for the certificate
          type: string
        password:
          description: Password for the username filled in above
          type: string
        port:
          description: Port on which to contact the PacketFence PKI API
          type: integer
        postalcode:
          description: Postal Code for the certificate
          type: string
        profile:
          description: Profile used for the generation of certificate
          type: string
        proto:
          description: Protocol to use to contact the PacketFence PKI API
          type: string
        revoke_on_unregistration:
          description: Check this box to have the certificate revoke when the node
            using it is unregistered.<br/>Do not use if multiple devices share the
            same certificate
          type: string
        server_cert_path:
          description: Path of the RADIUS server authentication certificate
          type: string
        server_cert_path_upload:
          description: Server cert path upload
          type: file
        state:
          description: State for the certificate
          type: string
        streetaddress:
          description: Street Address for the certificate
          type: string
        type:
          default: packetfence_pki
          description: Discriminator `packetfence_pki`
          type: string
        username:
          description: Username to connect to the PKI
          type: string
      required:
      - id
      - type
      type: object
    ConfigPkiProviderSubTypeScep:
      properties:
        ca_cert_path:
          description: Path of the CA that will generate your certificates
          type: string
        ca_cert_path_upload:
          description: Ca cert path upload
          type: file
        cn_attribute:
          description: Defines what attribute of the node to use as the common name
            during the certificate generation.
          type: string
        cn_format:
          description: Defines how the common name will be formated. %s will expand
            to the defined Common Name Attribute value
          type: string
        country:
          description: Country for the certificate
          type: string
        id:
          description: Id
          type: string
        locality:
          description: Locality for the certificate
          type: string
        organization:
          description: Organization for the certificate
          type: string
        organizational_unit:
          description: Organizational unit for the certificate
          type: string
        password:
          description: Password for the username filled in above
          type: string
        server_cert_path:
          description: Path of the RADIUS server authentication certificate
          type: string
        server_cert_path_upload:
          description: Server cert path upload
          type: file
        state:
          description: State for the certificate
          type: string
        type:
          default: scep
          description: Discriminator `scep`
          type: string
        url:
          description: The url used to connect to the SCEP PKI service
          type: string
        username:
          description: Username to connect to the SCEP PKI Service
          type: string
      required:
      - id
      - type
      type: object
    ConfigPkiProviderWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigPkiProvider'
        status:
          type: integer
      type: object
    ConfigPkiProvidersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigPkiProvider'
            type: array
        type: object
    ConfigPortalModule:
      discriminator:
        mapping:
          Authentication: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthentication'
          Authentication::Billing: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationBilling'
          Authentication::Blackhole: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationBlackhole'
          Authentication::Choice: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationChoice'
          Authentication::Email: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationEmail'
          Authentication::Login: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationLogin'
          Authentication::Null: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationNull'
          Authentication::OAuth: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauth'
          Authentication::OAuth::Facebook: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthFacebook'
          Authentication::OAuth::Github: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthGithub'
          Authentication::OAuth::Google: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthGoogle'
          Authentication::OAuth::LinkedIn: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthLinkedin'
          Authentication::OAuth::OpenID: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthOpenid'
          Authentication::OAuth::WindowsLive: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthWindowslive'
          Authentication::Password: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationPassword'
          Authentication::SAML: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationSaml'
          Authentication::SMS: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationSms'
          Authentication::Sponsor: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationSponsor'
          Chained: '#/components/schemas/ConfigPortalModuleMetaSubTypeChained'
          Choice: '#/components/schemas/ConfigPortalModuleMetaSubTypeChoice'
          FixedRole: '#/components/schemas/ConfigPortalModuleMetaSubTypeFixedrole'
          MFA: '#/components/schemas/ConfigPortalModuleMetaSubTypeMfa'
          Message: '#/components/schemas/ConfigPortalModuleMetaSubTypeMessage'
          Provisioning: '#/components/schemas/ConfigPortalModuleMetaSubTypeProvisioning'
          Root: '#/components/schemas/ConfigPortalModuleMetaSubTypeRoot'
          RootSSO: '#/components/schemas/ConfigPortalModuleMetaSubTypeRootsso'
          SSL_Inspection: '#/components/schemas/ConfigPortalModuleMetaSubTypeSslInspection'
          SelectRole: '#/components/schemas/ConfigPortalModuleMetaSubTypeSelectrole'
          ShowLocalAccount: '#/components/schemas/ConfigPortalModuleMetaSubTypeShowlocalaccount'
          Survey: '#/components/schemas/ConfigPortalModuleMetaSubTypeSurvey'
          URL: '#/components/schemas/ConfigPortalModuleMetaSubTypeUrl'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeProvisioning'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeSelectrole'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthFacebook'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationNull'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeSslInspection'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthGithub'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeMessage'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeUrl'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthOpenid'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationChoice'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthLinkedin'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeSurvey'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationPassword'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthGoogle'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeChoice'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeShowlocalaccount'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeFixedrole'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauth'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeRootsso'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationSponsor'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeMfa'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationSaml'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeRoot'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationEmail'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationLogin'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationSms'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationBlackhole'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthentication'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationOauthWindowslive'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeAuthenticationBilling'
      - $ref: '#/components/schemas/ConfigPortalModuleMetaSubTypeChained'
    ConfigPortalModuleMetaSubTypeAuthentication:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationBilling:
      properties:
        meta:
          properties:
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            multi_source_ids:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationBlackhole:
      properties:
        meta:
          properties:
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            template:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationChoice:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            modules:
              $ref: '#/components/schemas/Meta'
            multi_source_auth_classes:
              $ref: '#/components/schemas/Meta'
            multi_source_ids:
              $ref: '#/components/schemas/Meta'
            multi_source_object_classes:
              $ref: '#/components/schemas/Meta'
            multi_source_types:
              $ref: '#/components/schemas/Meta'
            show_first_module_on_default:
              $ref: '#/components/schemas/Meta'
            template:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationEmail:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationLogin:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            multi_source_ids:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationNull:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationOauth:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            landing_template:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationOauthFacebook:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            landing_template:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationOauthGithub:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            landing_template:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationOauthGoogle:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            landing_template:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationOauthLinkedin:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            landing_template:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationOauthOpenid:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            landing_template:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationOauthWindowslive:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            landing_template:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationPassword:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            multi_source_ids:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationSaml:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            landing_template:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationSms:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeAuthenticationSponsor:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            aup_template:
              $ref: '#/components/schemas/Meta'
            custom_fields:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            fields_to_save:
              $ref: '#/components/schemas/Meta'
            forced_sponsor:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            pid_field:
              $ref: '#/components/schemas/Meta'
            signup_template:
              $ref: '#/components/schemas/Meta'
            source_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_aup:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeChained:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            modules:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeChoice:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            modules:
              $ref: '#/components/schemas/Meta'
            show_first_module_on_default:
              $ref: '#/components/schemas/Meta'
            template:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeFixedrole:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            stone_roles:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeMessage:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            message:
              $ref: '#/components/schemas/Meta'
            skipable:
              $ref: '#/components/schemas/Meta'
            template:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            with_layout:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeMfa:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeProvisioning:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            skipable:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeRoot:
      properties:
        meta:
          properties:
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            modules:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeRootsso:
      properties:
        meta:
          properties:
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            modules:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeSelectrole:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            admin_role:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            list_role:
              $ref: '#/components/schemas/Meta'
            template:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeShowlocalaccount:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            skipable:
              $ref: '#/components/schemas/Meta'
            template:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeSslInspection:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            skipable:
              $ref: '#/components/schemas/Meta'
            ssl_mobileconfig_path:
              $ref: '#/components/schemas/Meta'
            ssl_path:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeSurvey:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            survey_id:
              $ref: '#/components/schemas/Meta'
            template:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleMetaSubTypeUrl:
      properties:
        meta:
          properties:
            actions:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            skipable:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            url:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigPortalModuleSubTypeAuthentication:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication
          description: Discriminator `Authentication`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - signup_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationBilling:
      properties:
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        multi_source_ids:
          description: Multi source ids
          items:
            description: Multi source id
            type: string
          type: array
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        type:
          default: Authentication::Billing
          description: Discriminator `Authentication::Billing`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationBlackhole:
      properties:
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        template:
          description: The template to use
          type: string
        type:
          default: Authentication::Blackhole
          description: Discriminator `Authentication::Blackhole`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeAuthenticationChoice:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        modules:
          description: Modules
          items:
            description: Module
            type: string
          type: array
        multi_source_auth_classes:
          description: The sources of these authentication classes and part of the
            connection profile will be added to the available sources
          type: string
        multi_source_ids:
          description: Multi source ids
          items:
            description: Multi source id
            type: string
          type: array
        multi_source_object_classes:
          description: The sources inheriting from these classes and part of the connection
            profile will be added to the available sources
          type: string
        multi_source_types:
          description: The sources of these types and part of the connection profile
            will be added to the available sources
          type: string
        show_first_module_on_default:
          description: Show first module when none is selected
          type: string
        template:
          description: The template to use to display the choices
          type: string
        type:
          default: Authentication::Choice
          description: Discriminator `Authentication::Choice`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeAuthenticationEmail:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::Email
          description: Discriminator `Authentication::Email`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - signup_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationLogin:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        multi_source_ids:
          description: Multi source ids
          items:
            description: Multi source id
            type: string
          type: array
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        type:
          default: Authentication::Login
          description: Discriminator `Authentication::Login`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - signup_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationNull:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::Null
          description: Discriminator `Authentication::Null`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - signup_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationOauth:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        landing_template:
          description: The template to use for the signup
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::OAuth
          description: Discriminator `Authentication::OAuth`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - landing_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationOauthFacebook:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        landing_template:
          description: The template to use for the signup
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::OAuth::Facebook
          description: Discriminator `Authentication::OAuth::Facebook`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - landing_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationOauthGithub:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        landing_template:
          description: The template to use for the signup
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::OAuth::Github
          description: Discriminator `Authentication::OAuth::Github`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - landing_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationOauthGoogle:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        landing_template:
          description: The template to use for the signup
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::OAuth::Google
          description: Discriminator `Authentication::OAuth::Google`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - landing_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationOauthLinkedin:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        landing_template:
          description: The template to use for the signup
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::OAuth::LinkedIn
          description: Discriminator `Authentication::OAuth::LinkedIn`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - landing_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationOauthOpenid:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        landing_template:
          description: The template to use for the signup
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::OAuth::OpenID
          description: Discriminator `Authentication::OAuth::OpenID`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - landing_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationOauthWindowslive:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        landing_template:
          description: The template to use for the signup
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::OAuth::WindowsLive
          description: Discriminator `Authentication::OAuth::WindowsLive`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - landing_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationPassword:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        multi_source_ids:
          description: Multi source ids
          items:
            description: Multi source id
            type: string
          type: array
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        type:
          default: Authentication::Password
          description: Discriminator `Authentication::Password`
          type: string
        username:
          description: Defines the username used for all authentications
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - signup_template
      - username
      type: object
    ConfigPortalModuleSubTypeAuthenticationSaml:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        landing_template:
          description: The template to use prior to the redirection to the SAML provider
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::SAML
          description: Discriminator `Authentication::SAML`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - signup_template
      - landing_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationSms:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        id:
          description: Identifier
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::SMS
          description: Discriminator `Authentication::SMS`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - signup_template
      type: object
    ConfigPortalModuleSubTypeAuthenticationSponsor:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        aup_template:
          description: The template to use for the AUP
          type: string
        custom_fields:
          description: The additionnal fields that should be required for registration
          items:
            description: The additionnal fields that should be required for registration
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        fields_to_save:
          description: These fields will be saved through the registration process
          items:
            description: These fields will be saved through the registration process
            type: string
          type: array
        forced_sponsor:
          description: Defines the sponsor email used. Leave empty so that the user
            has to specify a sponsor.
          type: string
        id:
          description: Identifier
          type: string
        pid_field:
          description: Which field should be used as the PID.
          type: string
        signup_template:
          description: The template to use for the signup
          type: string
        source_id:
          description: The sources to use in the module. If no sources are specified,
            all the sources on the Connection Profile will be used
          type: string
        type:
          default: Authentication::Sponsor
          description: Discriminator `Authentication::Sponsor`
          type: string
        with_aup:
          description: Require the user to accept the AUP
          type: string
      required:
      - id
      - description
      - aup_template
      - signup_template
      type: object
    ConfigPortalModuleSubTypeChained:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        modules:
          description: Modules
          items:
            description: Module
            type: string
          type: array
        type:
          default: Chained
          description: Discriminator `Chained`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeChoice:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        modules:
          description: Modules
          items:
            description: Module
            type: string
          type: array
        show_first_module_on_default:
          description: Show first module when none is selected
          type: string
        template:
          description: The template to use to display the choices
          type: string
        type:
          default: Choice
          description: Discriminator `Choice`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeFixedrole:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        stone_roles:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        type:
          default: FixedRole
          description: Discriminator `FixedRole`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeMessage:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        message:
          description: The message that will be displayed to the user. Use with caution
            as the HTML contained in this field will NOT be escaped.
          type: string
        skipable:
          description: Whether or not, this message can be skipped
          type: string
        template:
          description: The template to use to display the message
          type: string
        type:
          default: Message
          description: Discriminator `Message`
          type: string
        with_layout:
          description: Enable Layout
          type: string
      required:
      - id
      - description
      - message
      type: object
    ConfigPortalModuleSubTypeMfa:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        type:
          default: MFA
          description: Discriminator `MFA`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeProvisioning:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        skipable:
          description: Whether or not, the provisioning can be skipped
          type: string
        type:
          default: Provisioning
          description: Discriminator `Provisioning`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeRoot:
      properties:
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        modules:
          description: Modules
          items:
            description: Module
            type: string
          type: array
        type:
          default: Root
          description: Discriminator `Root`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeRootsso:
      properties:
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        modules:
          description: Modules
          items:
            description: Module
            type: string
          type: array
        type:
          default: RootSSO
          description: Discriminator `RootSSO`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeSelectrole:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        admin_role:
          description: Which roles should have access to this module to select the
            role
          items:
            description: Which roles should have access to this module to select the
              role
            type: string
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        list_role:
          description: Which roles can be select
          items:
            description: Which roles can be select
            type: string
          type: array
        template:
          description: The template to use
          type: string
        type:
          default: SelectRole
          description: Discriminator `SelectRole`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeShowlocalaccount:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        skipable:
          description: Whether or not, this message can be skipped
          type: string
        template:
          description: The template to use to display the message
          type: string
        type:
          default: ShowLocalAccount
          description: Discriminator `ShowLocalAccount`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeSslInspection:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        skipable:
          description: Whether or not, this message can be skipped
          type: string
        ssl_mobileconfig_path:
          description: URL of an iOS mobileconfig profile to install the certificate.
          type: string
        ssl_path:
          description: URL of the SSL certificate in X509 Base64 format.
          type: string
        type:
          default: SSL_Inspection
          description: Discriminator `SSL_Inspection`
          type: string
      required:
      - id
      - description
      - ssl_mobileconfig_path
      - ssl_path
      type: object
    ConfigPortalModuleSubTypeSurvey:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        survey_id:
          description: The survey to use in this portal module. Surveys are defined
            in survey.conf
          type: string
        template:
          description: The template to use to display the message
          type: string
        type:
          default: Survey
          description: Discriminator `Survey`
          type: string
      required:
      - id
      - description
      type: object
    ConfigPortalModuleSubTypeUrl:
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        description:
          description: The description that will be displayed to users
          type: string
        id:
          description: Identifier
          type: string
        skipable:
          description: Whether or not, this redirection can be skipped.
          type: string
        type:
          default: URL
          description: Discriminator `URL`
          type: string
        url:
          description: The URL on which the user should be redirected.
          type: string
      required:
      - id
      - description
      - url
      type: object
    ConfigPortalModuleWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigPortalModule'
        status:
          type: integer
      type: object
    ConfigPortalModulesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigPortalModule'
            type: array
        type: object
    ConfigProvisioning:
      discriminator:
        mapping:
          accept: '#/components/schemas/ConfigProvisioningMetaSubTypeAccept'
          airwatch: '#/components/schemas/ConfigProvisioningMetaSubTypeAirwatch'
          android: '#/components/schemas/ConfigProvisioningMetaSubTypeAndroid'
          deny: '#/components/schemas/ConfigProvisioningMetaSubTypeDeny'
          dpsk: '#/components/schemas/ConfigProvisioningMetaSubTypeDpsk'
          google_workspace_chromebook: '#/components/schemas/ConfigProvisioningMetaSubTypeGoogleWorkspaceChromebook'
          intune: '#/components/schemas/ConfigProvisioningMetaSubTypeIntune'
          jamf: '#/components/schemas/ConfigProvisioningMetaSubTypeJamf'
          jamfCloud: '#/components/schemas/ConfigProvisioningMetaSubTypeJamfcloud'
          kandji: '#/components/schemas/ConfigProvisioningMetaSubTypeKandji'
          mobileconfig: '#/components/schemas/ConfigProvisioningMetaSubTypeMobileconfig'
          mobileiron: '#/components/schemas/ConfigProvisioningMetaSubTypeMobileiron'
          sentinelone: '#/components/schemas/ConfigProvisioningMetaSubTypeSentinelone'
          windows: '#/components/schemas/ConfigProvisioningMetaSubTypeWindows'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeAccept'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeMobileconfig'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeDeny'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeSentinelone'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeWindows'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeGoogleWorkspaceChromebook'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeAirwatch'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeJamf'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeIntune'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeMobileiron'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeAndroid'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeJamfcloud'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeKandji'
      - $ref: '#/components/schemas/ConfigProvisioningMetaSubTypeDpsk'
    ConfigProvisioningMetaSubTypeAccept:
      properties:
        meta:
          properties:
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeAirwatch:
      properties:
        meta:
          properties:
            api_password:
              $ref: '#/components/schemas/Meta'
            api_username:
              $ref: '#/components/schemas/Meta'
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            protocol:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            tenant_code:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeAndroid:
      properties:
        meta:
          properties:
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            broadcast:
              $ref: '#/components/schemas/Meta'
            ca_cert_path:
              $ref: '#/components/schemas/Meta'
            ca_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            can_sign_profile:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            cert_chain:
              $ref: '#/components/schemas/Meta'
            certificate:
              $ref: '#/components/schemas/Meta'
            company:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            dpsk:
              $ref: '#/components/schemas/Meta'
            dpsk_use_local_password:
              $ref: '#/components/schemas/Meta'
            eap_type:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            passcode:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            private_key:
              $ref: '#/components/schemas/Meta'
            psk_size:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            security_type:
              $ref: '#/components/schemas/Meta'
            server_certificate_path:
              $ref: '#/components/schemas/Meta'
            server_certificate_path_upload:
              $ref: '#/components/schemas/Meta'
            ssid:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeDeny:
      properties:
        meta:
          properties:
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeDpsk:
      properties:
        meta:
          properties:
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            dpsk_use_local_password:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            psk_size:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            ssid:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeGoogleWorkspaceChromebook:
      properties:
        meta:
          properties:
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            customer_id:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            protocol:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            service_account:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            user:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeIntune:
      properties:
        meta:
          properties:
            access_token:
              $ref: '#/components/schemas/Meta'
            android_agent_download_uri:
              $ref: '#/components/schemas/Meta'
            applicationID:
              $ref: '#/components/schemas/Meta'
            applicationSecret:
              $ref: '#/components/schemas/Meta'
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            domains:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            ios_agent_download_uri:
              $ref: '#/components/schemas/Meta'
            loginUrl:
              $ref: '#/components/schemas/Meta'
            mac_osx_agent_download_uri:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            protocol:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            tenantID:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            windows_agent_download_uri:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeJamf:
      properties:
        meta:
          properties:
            api_password:
              $ref: '#/components/schemas/Meta'
            api_username:
              $ref: '#/components/schemas/Meta'
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            device_type_detection:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            protocol:
              $ref: '#/components/schemas/Meta'
            query_computers:
              $ref: '#/components/schemas/Meta'
            query_mobiledevices:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeJamfcloud:
      properties:
        meta:
          properties:
            api_password:
              $ref: '#/components/schemas/Meta'
            api_username:
              $ref: '#/components/schemas/Meta'
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            device_type_detection:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            protocol:
              $ref: '#/components/schemas/Meta'
            query_computers:
              $ref: '#/components/schemas/Meta'
            query_mobiledevices:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeKandji:
      properties:
        meta:
          properties:
            api_token:
              $ref: '#/components/schemas/Meta'
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            enroll_url:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            protocol:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeMobileconfig:
      properties:
        meta:
          properties:
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            broadcast:
              $ref: '#/components/schemas/Meta'
            ca_cert_path:
              $ref: '#/components/schemas/Meta'
            ca_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            can_sign_profile:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            cert_chain:
              $ref: '#/components/schemas/Meta'
            certificate:
              $ref: '#/components/schemas/Meta'
            company:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            dpsk:
              $ref: '#/components/schemas/Meta'
            dpsk_use_local_password:
              $ref: '#/components/schemas/Meta'
            eap_type:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            passcode:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            private_key:
              $ref: '#/components/schemas/Meta'
            psk_size:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            security_type:
              $ref: '#/components/schemas/Meta'
            server_certificate_path:
              $ref: '#/components/schemas/Meta'
            server_certificate_path_upload:
              $ref: '#/components/schemas/Meta'
            ssid:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeMobileiron:
      properties:
        meta:
          properties:
            android_download_uri:
              $ref: '#/components/schemas/Meta'
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            boarding_host:
              $ref: '#/components/schemas/Meta'
            boarding_port:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            ios_download_uri:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
            windows_phone_download_uri:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeSentinelone:
      properties:
        meta:
          properties:
            api_password:
              $ref: '#/components/schemas/Meta'
            api_username:
              $ref: '#/components/schemas/Meta'
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            mac_osx_agent_download_uri:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            protocol:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            windows_agent_download_uri:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningMetaSubTypeWindows:
      properties:
        meta:
          properties:
            apply_role:
              $ref: '#/components/schemas/Meta'
            autoregister:
              $ref: '#/components/schemas/Meta'
            broadcast:
              $ref: '#/components/schemas/Meta'
            ca_cert_path:
              $ref: '#/components/schemas/Meta'
            ca_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            can_sign_profile:
              $ref: '#/components/schemas/Meta'
            category:
              $ref: '#/components/schemas/Meta'
            cert_chain:
              $ref: '#/components/schemas/Meta'
            certificate:
              $ref: '#/components/schemas/Meta'
            company:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            dpsk:
              $ref: '#/components/schemas/Meta'
            dpsk_use_local_password:
              $ref: '#/components/schemas/Meta'
            eap_type:
              $ref: '#/components/schemas/Meta'
            enforce:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            non_compliance_security_event:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            passcode:
              $ref: '#/components/schemas/Meta'
            pki_provider:
              $ref: '#/components/schemas/Meta'
            private_key:
              $ref: '#/components/schemas/Meta'
            psk_size:
              $ref: '#/components/schemas/Meta'
            role_to_apply:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            security_type:
              $ref: '#/components/schemas/Meta'
            server_certificate_path:
              $ref: '#/components/schemas/Meta'
            server_certificate_path_upload:
              $ref: '#/components/schemas/Meta'
            ssid:
              $ref: '#/components/schemas/Meta'
            sync_pid:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigProvisioningSubTypeAccept:
      properties:
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        description:
          description: Description
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        id:
          description: Provisioning ID
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        pki_provider:
          description: PKI Provider
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: accept
          description: Discriminator `accept`
          type: string
      required:
      - id
      - type
      type: object
    ConfigProvisioningSubTypeAirwatch:
      properties:
        api_password:
          description: API password
          type: string
        api_username:
          description: API username
          type: string
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        description:
          description: Description
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        host:
          description: Host
          type: string
        id:
          description: Provisioning ID
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        pki_provider:
          description: PKI Provider
          type: string
        port:
          description: Port
          type: integer
        protocol:
          description: Protocol
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        tenant_code:
          description: Tenant code
          type: string
        type:
          default: airwatch
          description: Discriminator `airwatch`
          type: string
      required:
      - id
      - type
      - port
      - api_username
      - api_password
      - tenant_code
      type: object
    ConfigProvisioningSubTypeAndroid:
      properties:
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        broadcast:
          description: Disable this box if you are using a hidden SSID
          type: string
        ca_cert_path:
          description: The path to the RADIUS server CA
          type: string
        ca_cert_path_upload:
          description: Ca cert path upload
          type: file
        can_sign_profile:
          description: Check this box if you want the profiles signed
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        cert_chain:
          description: The certificate chain of the signer certificate in pem format
          type: string
        certificate:
          description: The Certificate for signing in pem format
          type: string
        company:
          description: Company
          type: string
        description:
          description: Description
          type: string
        dpsk:
          description: Define if the PSK needs to be generated
          type: string
        dpsk_use_local_password:
          description: Dpsk use local password
          type: string
        eap_type:
          description: Select the EAP type of your SSID
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        id:
          description: Provisioning ID
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        passcode:
          description: The WiFi key to join the SSID
          type: string
        pki_provider:
          description: PKI Provider
          type: string
        private_key:
          description: The Private Key for signing in pem format
          type: string
        psk_size:
          description: This is the length of the PSK key you want to generate. The
            minimum length is eight characters.
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        security_type:
          description: Select the type of security applied for your SSID
          type: string
        server_certificate_path:
          description: The path to the RADIUS server certificate
          type: string
        server_certificate_path_upload:
          description: Server certificate path upload
          type: file
        ssid:
          description: Ssid
          type: string
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: android
          description: Discriminator `android`
          type: string
      required:
      - id
      - type
      - ssid
      type: object
    ConfigProvisioningSubTypeDeny:
      properties:
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        description:
          description: Description
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        id:
          description: Provisioning ID
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        pki_provider:
          description: PKI Provider
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: deny
          description: Discriminator `deny`
          type: string
      required:
      - id
      - type
      type: object
    ConfigProvisioningSubTypeDpsk:
      properties:
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        description:
          description: Description
          type: string
        dpsk_use_local_password:
          description: Dpsk use local password
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        id:
          description: Provisioning ID
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        pki_provider:
          description: PKI Provider
          type: string
        psk_size:
          description: This is the length of the PSK key you want to generate. The
            minimum length is eight characters.
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        ssid:
          description: SSID
          type: string
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: dpsk
          description: Discriminator `dpsk`
          type: string
      required:
      - id
      - type
      type: object
    ConfigProvisioningSubTypeGoogleWorkspaceChromebook:
      properties:
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        customer_id:
          description: Customer id
          type: string
        description:
          description: Description
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        host:
          description: Host
          type: string
        id:
          description: Provisioning ID
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        pki_provider:
          description: PKI Provider
          type: string
        port:
          description: Port
          type: string
        protocol:
          description: Protocol
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        service_account:
          description: Service account
          type: string
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: google_workspace_chromebook
          description: Discriminator `google_workspace_chromebook`
          type: string
        user:
          description: User
          type: string
      required:
      - id
      - type
      - service_account
      - user
      type: object
    ConfigProvisioningSubTypeIntune:
      properties:
        access_token:
          description: Access token
          type: string
        android_agent_download_uri:
          description: Android agent download uri
          type: string
        applicationID:
          description: ApplicationID
          type: string
        applicationSecret:
          description: Application Secret
          type: string
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        description:
          description: Description
          type: string
        domains:
          description: Comma-separated list of domains that will be resolved with
            the correct IP addresses.
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        host:
          description: Host
          type: string
        id:
          description: Provisioning ID
          type: string
        ios_agent_download_uri:
          description: Ios agent download uri
          type: string
        loginUrl:
          description: LoginUrl
          type: string
        mac_osx_agent_download_uri:
          description: Mac osx agent download uri
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        pki_provider:
          description: PKI Provider
          type: string
        port:
          description: Port
          type: integer
        protocol:
          description: Protocol
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        tenantID:
          description: Tenant ID
          type: string
        type:
          default: intune
          description: Discriminator `intune`
          type: string
        windows_agent_download_uri:
          description: Windows agent download uri
          type: string
      required:
      - id
      - type
      - tenantID
      - applicationID
      - applicationSecret
      - port
      - windows_agent_download_uri
      - mac_osx_agent_download_uri
      - ios_agent_download_uri
      - android_agent_download_uri
      - domains
      type: object
    ConfigProvisioningSubTypeJamf:
      properties:
        api_password:
          description: API password
          type: string
        api_username:
          description: API username
          type: string
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        description:
          description: Description
          type: string
        device_type_detection:
          description: Automatic device detection
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        host:
          description: Host
          type: string
        id:
          description: Provisioning ID
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        pki_provider:
          description: PKI Provider
          type: string
        port:
          description: Port
          type: integer
        protocol:
          description: Protocol
          type: string
        query_computers:
          description: Query JAMF computers inventory
          type: string
        query_mobiledevices:
          description: Query JAMF mobile devices inventory
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: jamf
          description: Discriminator `jamf`
          type: string
      required:
      - id
      - type
      - port
      - api_username
      - api_password
      type: object
    ConfigProvisioningSubTypeJamfcloud:
      properties:
        api_password:
          description: API password
          type: string
        api_username:
          description: API username
          type: string
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        description:
          description: Description
          type: string
        device_type_detection:
          description: Automatic device detection
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        host:
          description: Host
          type: string
        id:
          description: Provisioning ID
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        pki_provider:
          description: PKI Provider
          type: string
        port:
          description: Port
          type: integer
        protocol:
          description: Protocol
          type: string
        query_computers:
          description: Query JAMF computers inventory
          type: string
        query_mobiledevices:
          description: Query JAMF mobile devices inventory
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: jamfCloud
          description: Discriminator `jamfCloud`
          type: string
      required:
      - id
      - type
      - port
      - api_username
      - api_password
      type: object
    ConfigProvisioningSubTypeKandji:
      properties:
        api_token:
          description: Api token
          type: string
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        description:
          description: Description
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        enroll_url:
          description: Enroll url
          type: string
        host:
          description: Host
          type: string
        id:
          description: Provisioning ID
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        pki_provider:
          description: PKI Provider
          type: string
        port:
          description: Port
          type: integer
        protocol:
          description: Protocol
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: kandji
          description: Discriminator `kandji`
          type: string
      required:
      - id
      - type
      - api_token
      - host
      type: object
    ConfigProvisioningSubTypeMobileconfig:
      properties:
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        broadcast:
          description: Disable this box if you are using a hidden SSID
          type: string
        ca_cert_path:
          description: The path to the RADIUS server CA
          type: string
        ca_cert_path_upload:
          description: Ca cert path upload
          type: file
        can_sign_profile:
          description: Check this box if you want the profiles signed
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        cert_chain:
          description: The certificate chain of the signer certificate in pem format
          type: string
        certificate:
          description: The Certificate for signing in pem format
          type: string
        company:
          description: Company
          type: string
        description:
          description: Description
          type: string
        dpsk:
          description: Define if the PSK needs to be generated
          type: string
        dpsk_use_local_password:
          description: Dpsk use local password
          type: string
        eap_type:
          description: Select the EAP type of your SSID
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        id:
          description: Provisioning ID
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        passcode:
          description: The WiFi key to join the SSID
          type: string
        pki_provider:
          description: PKI Provider
          type: string
        private_key:
          description: The Private Key for signing in pem format
          type: string
        psk_size:
          description: This is the length of the PSK key you want to generate. The
            minimum length is eight characters.
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        security_type:
          description: Select the type of security applied for your SSID
          type: string
        server_certificate_path:
          description: The path to the RADIUS server certificate
          type: string
        server_certificate_path_upload:
          description: Server certificate path upload
          type: file
        ssid:
          description: Ssid
          type: string
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: mobileconfig
          description: Discriminator `mobileconfig`
          type: string
      required:
      - id
      - type
      - ssid
      type: object
    ConfigProvisioningSubTypeMobileiron:
      properties:
        android_download_uri:
          description: Android download uri
          type: string
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        boarding_host:
          description: Boarding host
          type: string
        boarding_port:
          description: Boarding port
          type: integer
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        description:
          description: Description
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        host:
          description: Host
          type: string
        id:
          description: Provisioning ID
          type: string
        ios_download_uri:
          description: Ios download uri
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        password:
          description: Password
          type: string
        pki_provider:
          description: PKI Provider
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: mobileiron
          description: Discriminator `mobileiron`
          type: string
        username:
          description: Username
          type: string
        windows_phone_download_uri:
          description: Windows phone download uri
          type: string
      required:
      - id
      - type
      - username
      - password
      - host
      - android_download_uri
      - ios_download_uri
      - windows_phone_download_uri
      - boarding_host
      - boarding_port
      type: object
    ConfigProvisioningSubTypeSentinelone:
      properties:
        api_password:
          description: API password
          type: string
        api_username:
          description: API username
          type: string
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        description:
          description: Description
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        host:
          description: Host
          type: string
        id:
          description: Provisioning ID
          type: string
        mac_osx_agent_download_uri:
          description: Mac OSX agent download URI
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        pki_provider:
          description: PKI Provider
          type: string
        port:
          description: Port
          type: integer
        protocol:
          description: Protocol
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: sentinelone
          description: Discriminator `sentinelone`
          type: string
        windows_agent_download_uri:
          description: Windows agent download URI
          type: string
      required:
      - id
      - type
      - port
      - api_username
      - api_password
      - windows_agent_download_uri
      - mac_osx_agent_download_uri
      type: object
    ConfigProvisioningSubTypeWindows:
      properties:
        apply_role:
          description: When enabled, this will apply the configured role to the endpoint
            if it is authorized in the provisioner.
          type: string
        autoregister:
          description: Whether or not devices should be automatically registered on
            the network if they are authorized in the provisioner.
          type: string
        broadcast:
          description: Disable this box if you are using a hidden SSID
          type: string
        ca_cert_path:
          description: The path to the RADIUS server CA
          type: string
        ca_cert_path_upload:
          description: Ca cert path upload
          type: file
        can_sign_profile:
          description: Check this box if you want the profiles signed
          type: string
        category:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        cert_chain:
          description: The certificate chain of the signer certificate in pem format
          type: string
        certificate:
          description: The Certificate for signing in pem format
          type: string
        company:
          description: Company
          type: string
        description:
          description: Description
          type: string
        dpsk:
          description: Define if the PSK needs to be generated
          type: string
        dpsk_use_local_password:
          description: Dpsk use local password
          type: string
        eap_type:
          description: Select the EAP type of your SSID
          type: string
        enforce:
          description: Whether or not the provisioner should be enforced. This will
            trigger checks to validate the device is compliant with the provisioner
            during RADIUS authentication and on the captive portal.
          type: string
        id:
          description: Provisioning ID
          type: string
        non_compliance_security_event:
          description: Which security event should be raised when non compliance is
            detected
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        passcode:
          description: The WiFi key to join the SSID
          type: string
        pki_provider:
          description: PKI Provider
          type: string
        private_key:
          description: The Private Key for signing in pem format
          type: string
        psk_size:
          description: This is the length of the PSK key you want to generate. The
            minimum length is eight characters.
          type: string
        role_to_apply:
          description: When "Apply role" is enabled, this defines the role to apply
            when the device is authorized with the provisioner.
          type: string
        rules:
          description: Rules to be applied
          items:
            description: Rules to be applied
            type: string
          type: array
        security_type:
          description: Select the type of security applied for your SSID
          type: string
        server_certificate_path:
          description: The path to the RADIUS server certificate
          type: string
        server_certificate_path_upload:
          description: Server certificate path upload
          type: file
        ssid:
          description: Ssid
          type: string
        sync_pid:
          description: Whether or not the PID (username) should be synchronized from
            the provisioner to PacketFence.
          type: string
        type:
          default: windows
          description: Discriminator `windows`
          type: string
      required:
      - id
      - type
      - ssid
      type: object
    ConfigProvisioningWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigProvisioning'
        status:
          type: integer
      type: object
    ConfigProvisioningsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigProvisioning'
            type: array
        type: object
    ConfigRadiusdEAPProfile:
      properties:
        cisco_accounting_username_bug:
          description: Cisco accounting username bug
          type: string
        default_eap_type:
          description: Default EAP Type
          type: string
        eap_authentication_types:
          description: Eap authentication types
          items:
            description: Eap authentication types
            type: string
          type: array
        fast_config:
          description: Fast config
          type: string
        id:
          description: Profile Name
          type: string
        ignore_unknown_eap_types:
          description: Ignore unknown eap types
          type: string
        max_sessions:
          description: Max sessions
          type: string
        peap_tlsprofile:
          description: Peap tlsprofile
          type: string
        timer_expire:
          description: Timer expire
          type: string
        tls_tlsprofile:
          description: Tls tlsprofile
          type: string
        ttls_tlsprofile:
          description: Ttls tlsprofile
          type: string
      required:
      - id
      type: object
    ConfigRadiusdEAPProfileMeta:
      properties:
        meta:
          properties:
            cisco_accounting_username_bug:
              $ref: '#/components/schemas/Meta'
            default_eap_type:
              $ref: '#/components/schemas/Meta'
            eap_authentication_types:
              $ref: '#/components/schemas/Meta'
            fast_config:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            ignore_unknown_eap_types:
              $ref: '#/components/schemas/Meta'
            max_sessions:
              $ref: '#/components/schemas/Meta'
            peap_tlsprofile:
              $ref: '#/components/schemas/Meta'
            timer_expire:
              $ref: '#/components/schemas/Meta'
            tls_tlsprofile:
              $ref: '#/components/schemas/Meta'
            ttls_tlsprofile:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigRadiusdEAPProfileWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigRadiusdEAPProfile'
        status:
          type: integer
      type: object
    ConfigRadiusdEAPProfilesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigRadiusdEAPProfile'
            type: array
        type: object
    ConfigRadiusdFastProfile:
      properties:
        authority_identity:
          description: Authority identity
          type: string
        id:
          description: Profile Name
          type: string
        pac_opaque_key:
          description: Pac opaque key
          type: string
        tls:
          description: Tls
          type: string
      required:
      - id
      type: object
    ConfigRadiusdFastProfileMeta:
      properties:
        meta:
          properties:
            authority_identity:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            pac_opaque_key:
              $ref: '#/components/schemas/Meta'
            tls:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigRadiusdFastProfileWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigRadiusdFastProfile'
        status:
          type: integer
      type: object
    ConfigRadiusdFastProfilesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigRadiusdFastProfile'
            type: array
        type: object
    ConfigRadiusdOCSPProfile:
      properties:
        id:
          description: Profile Name
          type: string
        ocsp_enable:
          description: Ocsp enable
          type: string
        ocsp_override_cert_url:
          description: Ocsp override cert url
          type: string
        ocsp_softfail:
          description: Ocsp softfail
          type: string
        ocsp_timeout:
          description: Ocsp timeout
          type: string
        ocsp_url:
          description: Ocsp url
          type: string
        ocsp_use_nonce:
          description: Ocsp use nonce
          type: string
      required:
      - id
      type: object
    ConfigRadiusdOCSPProfileMeta:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            ocsp_enable:
              $ref: '#/components/schemas/Meta'
            ocsp_override_cert_url:
              $ref: '#/components/schemas/Meta'
            ocsp_softfail:
              $ref: '#/components/schemas/Meta'
            ocsp_timeout:
              $ref: '#/components/schemas/Meta'
            ocsp_url:
              $ref: '#/components/schemas/Meta'
            ocsp_use_nonce:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigRadiusdOCSPProfileWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigRadiusdOCSPProfile'
        status:
          type: integer
      type: object
    ConfigRadiusdOCSPProfilesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigRadiusdOCSPProfile'
            type: array
        type: object
    ConfigRadiusdTLSProfile:
      properties:
        ca_path:
          description: Ca path
          type: string
        certificate_profile:
          description: Certificate profile
          type: string
        cipher_list:
          description: Cipher list
          type: string
        dh_file:
          description: Dh file
          type: string
        disable_tlsv1_2:
          description: Disable tlsv1 2
          type: string
        ecdh_curve:
          description: Ecdh curve
          type: string
        id:
          description: Profile Name
          type: string
        ocsp:
          description: Ocsp
          type: string
        tls_max_version:
          description: Tls max version
          type: string
        tls_min_version:
          description: Tls min version
          type: string
      required:
      - id
      type: object
    ConfigRadiusdTLSProfileMeta:
      properties:
        meta:
          properties:
            ca_path:
              $ref: '#/components/schemas/Meta'
            certificate_profile:
              $ref: '#/components/schemas/Meta'
            cipher_list:
              $ref: '#/components/schemas/Meta'
            dh_file:
              $ref: '#/components/schemas/Meta'
            disable_tlsv1_2:
              $ref: '#/components/schemas/Meta'
            ecdh_curve:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            ocsp:
              $ref: '#/components/schemas/Meta'
            tls_max_version:
              $ref: '#/components/schemas/Meta'
            tls_min_version:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigRadiusdTLSProfileWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigRadiusdTLSProfile'
        status:
          type: integer
      type: object
    ConfigRadiusdTLSProfilesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigRadiusdTLSProfile'
            type: array
        type: object
    ConfigRealm:
      properties:
        admin_strip_username:
          description: Should the usernames matching this realm be stripped when used
            on the administration interface
          type: string
        azuread_source_ttls_pap:
          description: Azuread source ttls pap
          type: string
        domain:
          description: The domain to use for the authentication in that realm
          type: string
        eap:
          description: The EAP configuration to use for this realm
          type: string
        edir_source:
          description: The eDirectory Server to use for EAP PEAP authentication and
            authorization
          type: string
        eduroam_options:
          description: You can add FreeRADIUS options in the realm definition
          type: string
        eduroam_radius_acct:
          description: The RADIUS Server(s) to proxy accounting
          items:
            description: The RADIUS Server(s) to proxy accounting
            type: string
          type: array
        eduroam_radius_acct_proxy_type:
          description: Home server pool type
          type: string
        eduroam_radius_auth:
          description: The RADIUS Server(s) to proxy authentication
          items:
            description: The RADIUS Server(s) to proxy authentication
            type: string
          type: array
        eduroam_radius_auth_compute_in_pf:
          description: Should we forward the request to PacketFence to have a dynamic
            answer or do we use the remote proxy server answered attributes ?
          type: string
        eduroam_radius_auth_proxy_type:
          description: Home server pool type
          type: string
        id:
          description: Realm
          type: string
        ldap_source:
          description: The LDAP Server to query the custom attributes
          type: string
        ldap_source_ttls_pap:
          description: The LDAP Server to use for EAP TTLS PAP authentication and
            authorization
          type: string
        options:
          description: You can add FreeRADIUS options in the realm definition
          type: string
        permit_custom_attributes:
          description: Allow to use custom attributes to authenticate 802.1x users
            (attributes are defined in the source)
          type: string
        portal_strip_username:
          description: Should the usernames matching this realm be stripped when used
            on the captive portal
          type: string
        radius_acct:
          description: The RADIUS Server(s) to proxy accounting
          items:
            description: The RADIUS Server(s) to proxy accounting
            type: string
          type: array
        radius_acct_proxy_type:
          description: Home server pool type
          type: string
        radius_auth:
          description: The RADIUS Server(s) to proxy authentication
          items:
            description: The RADIUS Server(s) to proxy authentication
            type: string
          type: array
        radius_auth_compute_in_pf:
          description: Should we forward the request to PacketFence to have a dynamic
            answer or do we use the remote proxy server answered attributes ?
          type: string
        radius_auth_proxy_type:
          description: Home server pool type
          type: string
        radius_strip_username:
          description: Should the usernames matching this realm be stripped when used
            in the authorization phase of 802.1x. Note that this doesn't control the
            stripping in FreeRADIUS, use the options above for that.
          type: string
        regex:
          description: PacketFence will use this Realm configuration if the regex
            match with the UserName (optional)
          type: string
      required:
      - id
      - radius_auth_proxy_type
      - radius_acct_proxy_type
      - eduroam_radius_auth_proxy_type
      - eduroam_radius_acct_proxy_type
      type: object
    ConfigRealmMeta:
      properties:
        meta:
          properties:
            admin_strip_username:
              $ref: '#/components/schemas/Meta'
            azuread_source_ttls_pap:
              $ref: '#/components/schemas/Meta'
            domain:
              $ref: '#/components/schemas/Meta'
            eap:
              $ref: '#/components/schemas/Meta'
            edir_source:
              $ref: '#/components/schemas/Meta'
            eduroam_options:
              $ref: '#/components/schemas/Meta'
            eduroam_radius_acct:
              $ref: '#/components/schemas/Meta'
            eduroam_radius_acct_proxy_type:
              $ref: '#/components/schemas/Meta'
            eduroam_radius_auth:
              $ref: '#/components/schemas/Meta'
            eduroam_radius_auth_compute_in_pf:
              $ref: '#/components/schemas/Meta'
            eduroam_radius_auth_proxy_type:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            ldap_source:
              $ref: '#/components/schemas/Meta'
            ldap_source_ttls_pap:
              $ref: '#/components/schemas/Meta'
            options:
              $ref: '#/components/schemas/Meta'
            permit_custom_attributes:
              $ref: '#/components/schemas/Meta'
            portal_strip_username:
              $ref: '#/components/schemas/Meta'
            radius_acct:
              $ref: '#/components/schemas/Meta'
            radius_acct_proxy_type:
              $ref: '#/components/schemas/Meta'
            radius_auth:
              $ref: '#/components/schemas/Meta'
            radius_auth_compute_in_pf:
              $ref: '#/components/schemas/Meta'
            radius_auth_proxy_type:
              $ref: '#/components/schemas/Meta'
            radius_strip_username:
              $ref: '#/components/schemas/Meta'
            regex:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigRealmWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigRealm'
        status:
          type: integer
      type: object
    ConfigRealmsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigRealm'
            type: array
        type: object
    ConfigRole:
      properties:
        acls:
          description: ACLs
          type: string
        fingerbank_dynamic_access_list:
          description: Enabled Fingerbank Dynamic AccessList
          type: string
        id:
          description: Name
          type: string
        include_parent_acls:
          description: Include parent ACLs
          type: string
        inherit_role:
          description: Inherit Role
          type: string
        inherit_vlan:
          description: Inherit VLAN
          type: string
        inherit_web_auth_url:
          description: Inherit Web Auth URL
          type: string
        max_nodes_per_pid:
          description: The maximum number of nodes a user having this role can register.
            A number of 0 means unlimited number of devices.
          type: integer
        notes:
          description: Description
          type: string
        parent_id:
          description: Parent
          type: string
      required:
      - id
      type: object
    ConfigRoleMeta:
      properties:
        meta:
          properties:
            acls:
              $ref: '#/components/schemas/Meta'
            fingerbank_dynamic_access_list:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            include_parent_acls:
              $ref: '#/components/schemas/Meta'
            inherit_role:
              $ref: '#/components/schemas/Meta'
            inherit_vlan:
              $ref: '#/components/schemas/Meta'
            inherit_web_auth_url:
              $ref: '#/components/schemas/Meta'
            max_nodes_per_pid:
              $ref: '#/components/schemas/Meta'
            notes:
              $ref: '#/components/schemas/Meta'
            parent_id:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigRoleWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigRole'
        status:
          type: integer
      type: object
    ConfigRolesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigRole'
            type: array
        type: object
    ConfigRoutedNetwork:
      properties:
        algorithm:
          description: DHCP Algorithm
          type: string
        coa:
          description: Enable CoA
          type: string
        description:
          description: Description
          type: string
        dhcp_default_lease_time:
          description: Default Lease Time
          type: integer
        dhcp_end:
          description: Ending IP Address
          type: string
        dhcp_max_lease_time:
          description: Max Lease Time
          type: integer
        dhcp_reply_ip:
          description: DHCP IP Reply
          type: string
        dhcp_start:
          description: Starting IP Address
          type: string
        dhcpd:
          description: DHCP server
          type: string
        dns:
          description: Should match the IP of a registration interface or the production
            DNS server(s) if the network is Inline L2/L3 (space delimited list of
            IP addresses)
          type: string
        fake_mac_enabled:
          description: Fake MAC Address
          type: string
        gateway:
          description: Client Gateway
          type: string
        ip_assigned:
          description: List like 00:11:22:33:44:55:192.168.0.12,11:22:33:44:55:66:192.168.0.13
          type: string
        ip_reserved:
          description: Range like 192.168.0.1-192.168.0.20 and or IP like 192.168.0.22,192.168.0.24
            will be excluded from the DHCP pool
          type: string
        nat_dns:
          description: Enable DNS NATting
          type: string
        nat_enabled:
          description: Enable NATting
          type: string
        netflow_accounting_enabled:
          description: Enable Net Flow Accounting
          type: string
        netmask:
          description: Netmask
          type: string
        network:
          description: Routed Network
          type: string
        next_hop:
          description: IP address of the router to reach this network
          type: string
        pool_backend:
          description: DHCP Pool Backend Type
          type: string
        portal_fqdn:
          description: Define the FQDN of the portal for this network. Leaving empty
            will use the FQDN of the PacketFence server
          type: string
        type:
          description: Network type
          type: string
      required:
      - netmask
      - type
      - network
      type: object
    ConfigRoutedNetworkMeta:
      properties:
        meta:
          properties:
            algorithm:
              $ref: '#/components/schemas/Meta'
            coa:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            dhcp_default_lease_time:
              $ref: '#/components/schemas/Meta'
            dhcp_end:
              $ref: '#/components/schemas/Meta'
            dhcp_max_lease_time:
              $ref: '#/components/schemas/Meta'
            dhcp_reply_ip:
              $ref: '#/components/schemas/Meta'
            dhcp_start:
              $ref: '#/components/schemas/Meta'
            dhcpd:
              $ref: '#/components/schemas/Meta'
            dns:
              $ref: '#/components/schemas/Meta'
            fake_mac_enabled:
              $ref: '#/components/schemas/Meta'
            gateway:
              $ref: '#/components/schemas/Meta'
            ip_assigned:
              $ref: '#/components/schemas/Meta'
            ip_reserved:
              $ref: '#/components/schemas/Meta'
            nat_dns:
              $ref: '#/components/schemas/Meta'
            nat_enabled:
              $ref: '#/components/schemas/Meta'
            netflow_accounting_enabled:
              $ref: '#/components/schemas/Meta'
            netmask:
              $ref: '#/components/schemas/Meta'
            network:
              $ref: '#/components/schemas/Meta'
            next_hop:
              $ref: '#/components/schemas/Meta'
            pool_backend:
              $ref: '#/components/schemas/Meta'
            portal_fqdn:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigRoutedNetworkWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigRoutedNetwork'
        status:
          type: integer
      type: object
    ConfigRoutedNetworksList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigRoutedNetwork'
            type: array
        type: object
    ConfigSSLCertificate:
      properties:
        ca:
          description: Ca
          type: string
        cert:
          description: Cert
          type: string
        id:
          description: SSL Profile Name
          type: string
        intermediate:
          description: Intermediate
          type: string
        key:
          description: Key
          type: string
        private_key_password:
          description: Private Key Password
          type: string
      required:
      - id
      - cert
      - key
      - intermediate
      type: object
    ConfigSSLCertificateMeta:
      properties:
        meta:
          properties:
            ca:
              $ref: '#/components/schemas/Meta'
            cert:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            intermediate:
              $ref: '#/components/schemas/Meta'
            key:
              $ref: '#/components/schemas/Meta'
            private_key_password:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSSLCertificateWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigSSLCertificate'
        status:
          type: integer
      type: object
    ConfigSSLCertificatesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigSSLCertificate'
            type: array
        type: object
    ConfigScan:
      discriminator:
        mapping:
          pfappserver::Form::Config::Scan::Nessus: '#/components/schemas/ConfigScanMetaSubTypePfappserverFormConfigScanNessus'
          pfappserver::Form::Config::Scan::Nessus6: '#/components/schemas/ConfigScanMetaSubTypePfappserverFormConfigScanNessus6'
          pfappserver::Form::Config::Scan::OpenVAS: '#/components/schemas/ConfigScanMetaSubTypePfappserverFormConfigScanOpenvas'
          pfappserver::Form::Config::Scan::Rapid7: '#/components/schemas/ConfigScanMetaSubTypePfappserverFormConfigScanRapid7'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigScanMetaSubTypePfappserverFormConfigScanOpenvas'
      - $ref: '#/components/schemas/ConfigScanMetaSubTypePfappserverFormConfigScanNessus'
      - $ref: '#/components/schemas/ConfigScanMetaSubTypePfappserverFormConfigScanRapid7'
      - $ref: '#/components/schemas/ConfigScanMetaSubTypePfappserverFormConfigScanNessus6'
    ConfigScanMetaSubTypePfappserverFormConfigScanNessus:
      properties:
        meta:
          properties:
            categories:
              $ref: '#/components/schemas/Meta'
            duration:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            ip:
              $ref: '#/components/schemas/Meta'
            nessus_clientpolicy:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            post_registration:
              $ref: '#/components/schemas/Meta'
            pre_registration:
              $ref: '#/components/schemas/Meta'
            registration:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigScanMetaSubTypePfappserverFormConfigScanNessus6:
      properties:
        meta:
          properties:
            categories:
              $ref: '#/components/schemas/Meta'
            duration:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            ip:
              $ref: '#/components/schemas/Meta'
            nessus_clientpolicy:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            post_registration:
              $ref: '#/components/schemas/Meta'
            pre_registration:
              $ref: '#/components/schemas/Meta'
            registration:
              $ref: '#/components/schemas/Meta'
            scannername:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
            verify_hostname:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigScanMetaSubTypePfappserverFormConfigScanOpenvas:
      properties:
        meta:
          properties:
            categories:
              $ref: '#/components/schemas/Meta'
            duration:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            ip:
              $ref: '#/components/schemas/Meta'
            openvas_alertid:
              $ref: '#/components/schemas/Meta'
            openvas_configid:
              $ref: '#/components/schemas/Meta'
            openvas_reportformatid:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            post_registration:
              $ref: '#/components/schemas/Meta'
            pre_registration:
              $ref: '#/components/schemas/Meta'
            registration:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigScanMetaSubTypePfappserverFormConfigScanRapid7:
      properties:
        meta:
          properties:
            categories:
              $ref: '#/components/schemas/Meta'
            duration:
              $ref: '#/components/schemas/Meta'
            engine_id:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            oses:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            post_registration:
              $ref: '#/components/schemas/Meta'
            pre_registration:
              $ref: '#/components/schemas/Meta'
            registration:
              $ref: '#/components/schemas/Meta'
            site_id:
              $ref: '#/components/schemas/Meta'
            template_id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
            verify_hostname:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigScanSubTypePfappserverFormConfigScanNessus:
      properties:
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        duration:
          description: Approximate duration of a scan. User being scanned on registration
            are presented a progress bar for this duration, afterwards the browser
            refreshes until scan is complete.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        id:
          description: Name
          type: string
        ip:
          description: Hostname or IP Address
          type: string
        nessus_clientpolicy:
          description: Name of the policy to use on the nessus server
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        password:
          description: Password
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        post_registration:
          description: If this option is enabled, the PF system will scan host after
            on the production vlan. This will not work for devices that are in an
            inline VLAN.
          type: string
        pre_registration:
          description: If this option is enabled, the PF system will scan host before
            the registration.
          type: string
        registration:
          description: If this option is enabled, the PF system will scan each host
            after registration is complete.
          type: string
        type:
          default: pfappserver::Form::Config::Scan::Nessus
          description: Discriminator `pfappserver::Form::Config::Scan::Nessus`
          type: string
        username:
          description: Username
          type: string
      required:
      - id
      - username
      - password
      - ip
      type: object
    ConfigScanSubTypePfappserverFormConfigScanNessus6:
      properties:
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        duration:
          description: Approximate duration of a scan. User being scanned on registration
            are presented a progress bar for this duration, afterwards the browser
            refreshes until scan is complete.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        id:
          description: Name
          type: string
        ip:
          description: Hostname or IP Address
          type: string
        nessus_clientpolicy:
          description: Name of the policy to use on the nessus server
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        password:
          description: Password
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        post_registration:
          description: If this option is enabled, the PF system will scan host after
            on the production vlan. This will not work for devices that are in an
            inline VLAN.
          type: string
        pre_registration:
          description: If this option is enabled, the PF system will scan host before
            the registration.
          type: string
        registration:
          description: If this option is enabled, the PF system will scan each host
            after registration is complete.
          type: string
        scannername:
          description: Name of the scanner to use on the nessus server
          type: string
        type:
          default: pfappserver::Form::Config::Scan::Nessus6
          description: Discriminator `pfappserver::Form::Config::Scan::Nessus6`
          type: string
        username:
          description: Username
          type: string
        verify_hostname:
          description: Verify hostname of server
          type: string
      required:
      - id
      - username
      - password
      - ip
      type: object
    ConfigScanSubTypePfappserverFormConfigScanOpenvas:
      properties:
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        duration:
          description: Approximate duration of a scan. User being scanned on registration
            are presented a progress bar for this duration, afterwards the browser
            refreshes until scan is complete.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        id:
          description: Name
          type: string
        ip:
          description: Hostname or IP Address
          type: string
        openvas_alertid:
          description: ID of the alert configuration on the OpenVAS server
          type: string
        openvas_configid:
          description: ID of the scanning configuration on the OpenVAS server
          type: string
        openvas_reportformatid:
          description: ID of the "CSV Results" report format on the OpenVAS server
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        password:
          description: Password
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        post_registration:
          description: If this option is enabled, the PF system will scan host after
            on the production vlan. This will not work for devices that are in an
            inline VLAN.
          type: string
        pre_registration:
          description: If this option is enabled, the PF system will scan host before
            the registration.
          type: string
        registration:
          description: If this option is enabled, the PF system will scan each host
            after registration is complete.
          type: string
        type:
          default: pfappserver::Form::Config::Scan::OpenVAS
          description: Discriminator `pfappserver::Form::Config::Scan::OpenVAS`
          type: string
        username:
          description: Username
          type: string
      required:
      - id
      - username
      - password
      - ip
      type: object
    ConfigScanSubTypePfappserverFormConfigScanRapid7:
      properties:
        categories:
          description: Nodes with the selected roles will be affected
          items:
            description: Nodes with the selected roles will be affected
            type: string
          type: array
        duration:
          description: Approximate duration of a scan. User being scanned on registration
            are presented a progress bar for this duration, afterwards the browser
            refreshes until scan is complete.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        engine_id:
          description: The identifier of the scan engine to use when scanning the
            devices.
          type: string
        host:
          description: Hostname or IP Address
          type: string
        id:
          description: Name
          type: string
        oses:
          description: Nodes with the selected OS will be affected
          items:
            description: Nodes with the selected OS will be affected
            type: string
          type: array
        password:
          description: Password
          type: string
        port:
          description: If you use an alternative port, please specify
          type: integer
        post_registration:
          description: If this option is enabled, the PF system will scan host after
            on the production vlan. This will not work for devices that are in an
            inline VLAN.
          type: string
        pre_registration:
          description: If this option is enabled, the PF system will scan host before
            the registration.
          type: string
        registration:
          description: If this option is enabled, the PF system will scan each host
            after registration is complete.
          type: string
        site_id:
          description: The identifier of the site to scan (the site where the hosts
            are located)
          type: string
        template_id:
          description: The scan template to use for scanning the clients.
          type: string
        type:
          default: pfappserver::Form::Config::Scan::Rapid7
          description: Discriminator `pfappserver::Form::Config::Scan::Rapid7`
          type: string
        username:
          description: Username
          type: string
        verify_hostname:
          description: Verify hostname of server when connecting to the API
          type: string
      required:
      - id
      - username
      - password
      - host
      type: object
    ConfigScanWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigScan'
        status:
          type: integer
      type: object
    ConfigScansList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigScan'
            type: array
        type: object
    ConfigSecurityEvent:
      properties:
        access_duration:
          description: Specify the access duration for the new registered node.
          type: string
        actions:
          description: Actions
          items:
            description: Actions
            type: string
          type: array
        auto_enable:
          description: Specifies if a host can self remediate the security event (enable
            network button) or if they can not and must call the help desk.
          type: string
        button_text:
          description: Text displayed on the security event form to hosts.
          type: string
        delay_by:
          description: Delay before triggering the security event.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        desc:
          description: Description
          type: string
        email_recipient_message:
          description: A message that will be added to the e-mail sent to the user
            regarding this security event.
          type: string
        enabled:
          description: Enabled
          type: string
        external_command:
          description: External Command
          type: string
        grace:
          description: Amount of time before the security event can reoccur. This
            is useful to allow hosts time (in the example 2 minutes) to download tools
            to fix their issue, or shutoff their peer-to-peer application.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        id:
          description: Use a number above 1500000 if you want to be able to delete
            this security event later.
          type: string
        max_enable:
          description: Number of times a host will be able to try and self remediate
            before they are locked out and have to call the help desk. This is useful
            for users who just <i>click through</i> security event pages.
          type: integer
        priority:
          description: Range 1-10, with 1 the higest priority and 10 the lowest. Higher
            priority security events will be addressed first if a host has more than
            one.
          type: integer
        recipient_email:
          description: Recipient email addresses that will receive the security event
            email.
          type: string
        recipient_template_email:
          description: Template email to use to send the security event by email.
          type: string
        redirect_url:
          description: Destination URL where PacketFence will forward the device.
            By default it will use the Redirection URL from the connection profile
            configuration.
          type: string
        target_category:
          description: When selecting the <strong>role</strong> action, triggering
            the security event will change the node to this role.
          type: string
        template:
          description: HTML template the host will be redirected to while in security
            event. You can create new templates from the <em>Connection Profiles</em>
            configuration section.
          type: string
        trigger:
          description: Trigger
          type: string
        user_mail_message:
          description: A message that will be added to the e-mail sent to the user
            regarding this security event.
          type: string
        vclose:
          description: When selecting the <strong>close</strong> action, triggering
            the security event will close this security event. This is an experimental
            workflow for Mobile Device Management (MDM).
          type: string
        vlan:
          description: Destination Role where PacketFence should put the client when
            a security event of this type is open (only for <em>Change network access
            on security event</em> action).
          type: string
        whitelisted_roles:
          description: Nodes with the selected roles won't be affected by a security
            event of this type.
          items:
            description: Nodes with the selected roles won't be affected by a security
              event of this type.
            type: string
          type: array
        window:
          description: Amount of time before a security event will be closed automatically.
            Instead of allowing people to reactivate the network, you may want to
            open a security event for a defined amount of time instead.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        window_dynamic:
          description: Only works for accounting security events.  The security event
            will be opened according to the time you set in the accounting security
            event (ie. You have an accounting security event for 10GB/month.  If you
            bust the bandwidth after 3 days, the security event will open and the
            release date will be set for the last day of the current month).
          type: string
      required:
      - id
      type: object
    ConfigSecurityEventMeta:
      properties:
        meta:
          properties:
            access_duration:
              $ref: '#/components/schemas/Meta'
            actions:
              $ref: '#/components/schemas/Meta'
            auto_enable:
              $ref: '#/components/schemas/Meta'
            button_text:
              $ref: '#/components/schemas/Meta'
            delay_by:
              $ref: '#/components/schemas/Meta'
            desc:
              $ref: '#/components/schemas/Meta'
            email_recipient_message:
              $ref: '#/components/schemas/Meta'
            enabled:
              $ref: '#/components/schemas/Meta'
            external_command:
              $ref: '#/components/schemas/Meta'
            grace:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            max_enable:
              $ref: '#/components/schemas/Meta'
            priority:
              $ref: '#/components/schemas/Meta'
            recipient_email:
              $ref: '#/components/schemas/Meta'
            recipient_template_email:
              $ref: '#/components/schemas/Meta'
            redirect_url:
              $ref: '#/components/schemas/Meta'
            target_category:
              $ref: '#/components/schemas/Meta'
            template:
              $ref: '#/components/schemas/Meta'
            trigger:
              $ref: '#/components/schemas/Meta'
            user_mail_message:
              $ref: '#/components/schemas/Meta'
            vclose:
              $ref: '#/components/schemas/Meta'
            vlan:
              $ref: '#/components/schemas/Meta'
            whitelisted_roles:
              $ref: '#/components/schemas/Meta'
            window:
              $ref: '#/components/schemas/Meta'
            window_dynamic:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSecurityEventWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigSecurityEvent'
        status:
          type: integer
      type: object
    ConfigSecurityEventsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigSecurityEvent'
            type: array
        type: object
    ConfigSelfService:
      properties:
        description:
          description: Description
          type: string
        device_registration_access_duration:
          description: The access duration to assign to devices registered from the
            self-service portal. If zero is specified, the access duration of the
            registrant is used.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        device_registration_allowed_devices:
          description: List of OS which will be allowed to be registered via the self
            service portal.
          items:
            description: List of OS which will be allowed to be registered via the
              self service portal.
            type: string
          type: array
        device_registration_roles:
          description: The role to assign to devices registered from the self-service
            portal. If none is specified, the role of the registrant is used. If multiples
            are defined then the user will have to choose
          items:
            description: The role to assign to devices registered from the self-service
              portal. If none is specified, the role of the registrant is used. If
              multiples are defined then the user will have to choose
            type: string
          type: array
        dynamic_pre_shared_key:
          description: Dynamic pre shared key
          type: string
        id:
          description: Profile Name
          type: string
        roles_allowed_to_unregister:
          description: The list of roles that are allowed to unregister devices using
            the self-service portal. Leaving this empty will allow all users to unregister
            their devices.
          items:
            description: The list of roles that are allowed to unregister devices
              using the self-service portal. Leaving this empty will allow all users
              to unregister their devices.
            type: string
          type: array
      required:
      - id
      type: object
    ConfigSelfServiceMeta:
      properties:
        meta:
          properties:
            description:
              $ref: '#/components/schemas/Meta'
            device_registration_access_duration:
              $ref: '#/components/schemas/Meta'
            device_registration_allowed_devices:
              $ref: '#/components/schemas/Meta'
            device_registration_roles:
              $ref: '#/components/schemas/Meta'
            dynamic_pre_shared_key:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            roles_allowed_to_unregister:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSelfServiceWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigSelfService'
        status:
          type: integer
      type: object
    ConfigSelfServicesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigSelfService'
            type: array
        type: object
    ConfigSource:
      discriminator:
        mapping:
          AD: '#/components/schemas/ConfigSourceMetaSubTypeAd'
          AdminProxy: '#/components/schemas/ConfigSourceMetaSubTypeAdminproxy'
          Authorization: '#/components/schemas/ConfigSourceMetaSubTypeAuthorization'
          AzureAD: '#/components/schemas/ConfigSourceMetaSubTypeAzuread'
          Blackhole: '#/components/schemas/ConfigSourceMetaSubTypeBlackhole'
          Clickatell: '#/components/schemas/ConfigSourceMetaSubTypeClickatell'
          EAPTLS: '#/components/schemas/ConfigSourceMetaSubTypeEaptls'
          EDIR: '#/components/schemas/ConfigSourceMetaSubTypeEdir'
          Eduroam: '#/components/schemas/ConfigSourceMetaSubTypeEduroam'
          Email: '#/components/schemas/ConfigSourceMetaSubTypeEmail'
          Facebook: '#/components/schemas/ConfigSourceMetaSubTypeFacebook'
          Github: '#/components/schemas/ConfigSourceMetaSubTypeGithub'
          Google: '#/components/schemas/ConfigSourceMetaSubTypeGoogle'
          GoogleWorkspaceLDAP: '#/components/schemas/ConfigSourceMetaSubTypeGoogleworkspaceldap'
          HTTP: '#/components/schemas/ConfigSourceMetaSubTypeHttp'
          Htpasswd: '#/components/schemas/ConfigSourceMetaSubTypeHtpasswd'
          Kerberos: '#/components/schemas/ConfigSourceMetaSubTypeKerberos'
          Kickbox: '#/components/schemas/ConfigSourceMetaSubTypeKickbox'
          LDAP: '#/components/schemas/ConfigSourceMetaSubTypeLdap'
          LinkedIn: '#/components/schemas/ConfigSourceMetaSubTypeLinkedin'
          Null: '#/components/schemas/ConfigSourceMetaSubTypeNull'
          OpenID: '#/components/schemas/ConfigSourceMetaSubTypeOpenid'
          Paypal: '#/components/schemas/ConfigSourceMetaSubTypePaypal'
          Potd: '#/components/schemas/ConfigSourceMetaSubTypePotd'
          RADIUS: '#/components/schemas/ConfigSourceMetaSubTypeRadius'
          SAML: '#/components/schemas/ConfigSourceMetaSubTypeSaml'
          SMS: '#/components/schemas/ConfigSourceMetaSubTypeSms'
          SQL: '#/components/schemas/ConfigSourceMetaSubTypeSql'
          SponsorEmail: '#/components/schemas/ConfigSourceMetaSubTypeSponsoremail'
          Stripe: '#/components/schemas/ConfigSourceMetaSubTypeStripe'
          Twilio: '#/components/schemas/ConfigSourceMetaSubTypeTwilio'
          WindowsLive: '#/components/schemas/ConfigSourceMetaSubTypeWindowslive'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeOpenid'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeWindowslive'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeBlackhole'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeHtpasswd'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeHttp'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeEdir'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeEmail'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeNull'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeAd'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeSaml'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeAzuread'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeAdminproxy'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeAuthorization'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeRadius'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypePotd'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeFacebook'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeGoogle'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeLdap'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeGoogleworkspaceldap'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeSql'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeStripe'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypePaypal'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeKickbox'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeSms'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeLinkedin'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeTwilio'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeGithub'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeKerberos'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeEaptls'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeClickatell'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeSponsoremail'
      - $ref: '#/components/schemas/ConfigSourceMetaSubTypeEduroam'
    ConfigSourceMetaSubTypeAd:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            append_to_searchattributes:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            basedn:
              $ref: '#/components/schemas/Meta'
            binddn:
              $ref: '#/components/schemas/Meta'
            ca_file:
              $ref: '#/components/schemas/Meta'
            ca_file_upload:
              $ref: '#/components/schemas/Meta'
            cache_match:
              $ref: '#/components/schemas/Meta'
            client_cert_file:
              $ref: '#/components/schemas/Meta'
            client_cert_file_upload:
              $ref: '#/components/schemas/Meta'
            client_key_file:
              $ref: '#/components/schemas/Meta'
            client_key_file_upload:
              $ref: '#/components/schemas/Meta'
            connection_timeout:
              $ref: '#/components/schemas/Meta'
            dead_duration:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            email_attribute:
              $ref: '#/components/schemas/Meta'
            encryption:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            monitor:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            read_timeout:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            searchattributes:
              $ref: '#/components/schemas/Meta'
            shuffle:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            usernameattribute:
              $ref: '#/components/schemas/Meta'
            verify:
              $ref: '#/components/schemas/Meta'
            write_timeout:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeAdminproxy:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            group_header:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            proxy_addresses:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            user_header:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeAuthorization:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeAzuread:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            client_id:
              $ref: '#/components/schemas/Meta'
            client_secret:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            tenant_id:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            user_groups_cache:
              $ref: '#/components/schemas/Meta'
            user_groups_url:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeBlackhole:
      properties:
        meta:
          properties:
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeClickatell:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            api_key:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            message:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            pin_code_length:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeEaptls:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeEdir:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            append_to_searchattributes:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            basedn:
              $ref: '#/components/schemas/Meta'
            binddn:
              $ref: '#/components/schemas/Meta'
            ca_file:
              $ref: '#/components/schemas/Meta'
            ca_file_upload:
              $ref: '#/components/schemas/Meta'
            cache_match:
              $ref: '#/components/schemas/Meta'
            client_cert_file:
              $ref: '#/components/schemas/Meta'
            client_cert_file_upload:
              $ref: '#/components/schemas/Meta'
            client_key_file:
              $ref: '#/components/schemas/Meta'
            client_key_file_upload:
              $ref: '#/components/schemas/Meta'
            connection_timeout:
              $ref: '#/components/schemas/Meta'
            dead_duration:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            email_attribute:
              $ref: '#/components/schemas/Meta'
            encryption:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            monitor:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            read_timeout:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            searchattributes:
              $ref: '#/components/schemas/Meta'
            shuffle:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            usernameattribute:
              $ref: '#/components/schemas/Meta'
            verify:
              $ref: '#/components/schemas/Meta'
            write_timeout:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeEduroam:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            auth_listening_port:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            eduroam_operator_name:
              $ref: '#/components/schemas/Meta'
            eduroam_options:
              $ref: '#/components/schemas/Meta'
            eduroam_radius_auth:
              $ref: '#/components/schemas/Meta'
            eduroam_radius_auth_proxy_type:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_realm:
              $ref: '#/components/schemas/Meta'
            reject_realm:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeEmail:
      properties:
        meta:
          properties:
            activation_domain:
              $ref: '#/components/schemas/Meta'
            administration_rules:
              $ref: '#/components/schemas/Meta'
            allow_localdomain:
              $ref: '#/components/schemas/Meta'
            allowed_domains:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            banned_domains:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            email_activation_timeout:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeFacebook:
      properties:
        meta:
          properties:
            access_token_param:
              $ref: '#/components/schemas/Meta'
            access_token_path:
              $ref: '#/components/schemas/Meta'
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            client_id:
              $ref: '#/components/schemas/Meta'
            client_secret:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            domains:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            protected_resource_url:
              $ref: '#/components/schemas/Meta'
            redirect_url:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            site:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeGithub:
      properties:
        meta:
          properties:
            access_token_param:
              $ref: '#/components/schemas/Meta'
            access_token_path:
              $ref: '#/components/schemas/Meta'
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            authorize_path:
              $ref: '#/components/schemas/Meta'
            client_id:
              $ref: '#/components/schemas/Meta'
            client_secret:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            domains:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            protected_resource_url:
              $ref: '#/components/schemas/Meta'
            redirect_url:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            site:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeGoogle:
      properties:
        meta:
          properties:
            access_token_param:
              $ref: '#/components/schemas/Meta'
            access_token_path:
              $ref: '#/components/schemas/Meta'
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            authorize_path:
              $ref: '#/components/schemas/Meta'
            client_id:
              $ref: '#/components/schemas/Meta'
            client_secret:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            domains:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            protected_resource_url:
              $ref: '#/components/schemas/Meta'
            redirect_url:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            site:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeGoogleworkspaceldap:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            append_to_searchattributes:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            basedn:
              $ref: '#/components/schemas/Meta'
            binddn:
              $ref: '#/components/schemas/Meta'
            ca_file:
              $ref: '#/components/schemas/Meta'
            ca_file_upload:
              $ref: '#/components/schemas/Meta'
            cache_match:
              $ref: '#/components/schemas/Meta'
            client_cert_file:
              $ref: '#/components/schemas/Meta'
            client_cert_file_upload:
              $ref: '#/components/schemas/Meta'
            client_key_file:
              $ref: '#/components/schemas/Meta'
            client_key_file_upload:
              $ref: '#/components/schemas/Meta'
            connection_timeout:
              $ref: '#/components/schemas/Meta'
            dead_duration:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            email_attribute:
              $ref: '#/components/schemas/Meta'
            encryption:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            monitor:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            read_timeout:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            searchattributes:
              $ref: '#/components/schemas/Meta'
            shuffle:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            usernameattribute:
              $ref: '#/components/schemas/Meta'
            verify:
              $ref: '#/components/schemas/Meta'
            write_timeout:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeHtpasswd:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            path_upload:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeHttp:
      properties:
        meta:
          properties:
            authentication_url:
              $ref: '#/components/schemas/Meta'
            authorization_url:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            protocol:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            username:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeKerberos:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authenticate_realm:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeKickbox:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            api_key:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            email_required:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeLdap:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            append_to_searchattributes:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            basedn:
              $ref: '#/components/schemas/Meta'
            binddn:
              $ref: '#/components/schemas/Meta'
            ca_file:
              $ref: '#/components/schemas/Meta'
            ca_file_upload:
              $ref: '#/components/schemas/Meta'
            cache_match:
              $ref: '#/components/schemas/Meta'
            client_cert_file:
              $ref: '#/components/schemas/Meta'
            client_cert_file_upload:
              $ref: '#/components/schemas/Meta'
            client_key_file:
              $ref: '#/components/schemas/Meta'
            client_key_file_upload:
              $ref: '#/components/schemas/Meta'
            connection_timeout:
              $ref: '#/components/schemas/Meta'
            dead_duration:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            email_attribute:
              $ref: '#/components/schemas/Meta'
            encryption:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            monitor:
              $ref: '#/components/schemas/Meta'
            password:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            read_timeout:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            searchattributes:
              $ref: '#/components/schemas/Meta'
            shuffle:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
            usernameattribute:
              $ref: '#/components/schemas/Meta'
            verify:
              $ref: '#/components/schemas/Meta'
            write_timeout:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeLinkedin:
      properties:
        meta:
          properties:
            access_token_param:
              $ref: '#/components/schemas/Meta'
            access_token_path:
              $ref: '#/components/schemas/Meta'
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            authorize_path:
              $ref: '#/components/schemas/Meta'
            client_id:
              $ref: '#/components/schemas/Meta'
            client_secret:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            domains:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            protected_resource_url:
              $ref: '#/components/schemas/Meta'
            redirect_url:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            site:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeNull:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            email_required:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeOpenid:
      properties:
        meta:
          properties:
            access_token_path:
              $ref: '#/components/schemas/Meta'
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            authorize_path:
              $ref: '#/components/schemas/Meta'
            client_id:
              $ref: '#/components/schemas/Meta'
            client_secret:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            domains:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            person_mappings:
              $ref: '#/components/schemas/Meta'
            protected_resource_url:
              $ref: '#/components/schemas/Meta'
            redirect_url:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            site:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            username_attribute:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypePaypal:
      properties:
        meta:
          properties:
            cert_file:
              $ref: '#/components/schemas/Meta'
            cert_file_upload:
              $ref: '#/components/schemas/Meta'
            cert_id:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            currency:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            domains:
              $ref: '#/components/schemas/Meta'
            email_address:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            identity_token:
              $ref: '#/components/schemas/Meta'
            key_file:
              $ref: '#/components/schemas/Meta'
            key_file_upload:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            payment_type:
              $ref: '#/components/schemas/Meta'
            paypal_cert_file:
              $ref: '#/components/schemas/Meta'
            paypal_cert_file_upload:
              $ref: '#/components/schemas/Meta'
            send_email_confirmation:
              $ref: '#/components/schemas/Meta'
            test_mode:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypePotd:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            password_email_update:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            password_rotation:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeRadius:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            monitor:
              $ref: '#/components/schemas/Meta'
            nas_ip_address:
              $ref: '#/components/schemas/Meta'
            options:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            realms:
              $ref: '#/components/schemas/Meta'
            secret:
              $ref: '#/components/schemas/Meta'
            timeout:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            use_connector:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeSaml:
      properties:
        meta:
          properties:
            authorization_source_id:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            idp_ca_cert_path:
              $ref: '#/components/schemas/Meta'
            idp_ca_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            idp_cert_path:
              $ref: '#/components/schemas/Meta'
            idp_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            idp_entity_id:
              $ref: '#/components/schemas/Meta'
            idp_metadata_path:
              $ref: '#/components/schemas/Meta'
            idp_metadata_path_upload:
              $ref: '#/components/schemas/Meta'
            sp_cert_path:
              $ref: '#/components/schemas/Meta'
            sp_cert_path_upload:
              $ref: '#/components/schemas/Meta'
            sp_entity_id:
              $ref: '#/components/schemas/Meta'
            sp_key_path:
              $ref: '#/components/schemas/Meta'
            sp_key_path_upload:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            username_attribute:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeSms:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            message:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            pin_code_length:
              $ref: '#/components/schemas/Meta'
            sms_activation_timeout:
              $ref: '#/components/schemas/Meta'
            sms_carriers:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeSponsoremail:
      properties:
        meta:
          properties:
            activation_domain:
              $ref: '#/components/schemas/Meta'
            administration_rules:
              $ref: '#/components/schemas/Meta'
            allow_localdomain:
              $ref: '#/components/schemas/Meta'
            allowed_domains:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            banned_domains:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            email_activation_timeout:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            lang:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            register_on_activation:
              $ref: '#/components/schemas/Meta'
            sources:
              $ref: '#/components/schemas/Meta'
            sponsorship_bcc:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            validate_sponsor:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeSql:
      properties:
        meta:
          properties:
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeStripe:
      properties:
        meta:
          properties:
            create_local_account:
              $ref: '#/components/schemas/Meta'
            currency:
              $ref: '#/components/schemas/Meta'
            customer_portal:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            domains:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            publishable_key:
              $ref: '#/components/schemas/Meta'
            secret_key:
              $ref: '#/components/schemas/Meta'
            send_email_confirmation:
              $ref: '#/components/schemas/Meta'
            style:
              $ref: '#/components/schemas/Meta'
            test_mode:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeTwilio:
      properties:
        meta:
          properties:
            account_sid:
              $ref: '#/components/schemas/Meta'
            administration_rules:
              $ref: '#/components/schemas/Meta'
            auth_token:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            message:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            pin_code_length:
              $ref: '#/components/schemas/Meta'
            twilio_phone_number:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceMetaSubTypeWindowslive:
      properties:
        meta:
          properties:
            access_token_param:
              $ref: '#/components/schemas/Meta'
            access_token_path:
              $ref: '#/components/schemas/Meta'
            administration_rules:
              $ref: '#/components/schemas/Meta'
            authentication_rules:
              $ref: '#/components/schemas/Meta'
            authorize_path:
              $ref: '#/components/schemas/Meta'
            client_id:
              $ref: '#/components/schemas/Meta'
            client_secret:
              $ref: '#/components/schemas/Meta'
            create_local_account:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            domains:
              $ref: '#/components/schemas/Meta'
            hash_passwords:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            local_account_expiration:
              $ref: '#/components/schemas/Meta'
            local_account_logins:
              $ref: '#/components/schemas/Meta'
            password_length:
              $ref: '#/components/schemas/Meta'
            protected_resource_url:
              $ref: '#/components/schemas/Meta'
            redirect_url:
              $ref: '#/components/schemas/Meta'
            scope:
              $ref: '#/components/schemas/Meta'
            site:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSourceSubTypeAd:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        append_to_searchattributes:
          description: Append this ldap filter to the generated generated ldap filter
            generated for the search attributes.
          type: string
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        basedn:
          description: Basedn
          type: string
        binddn:
          description: Leave this field empty if you want to perform an anonymous
            bind.
          type: string
        ca_file:
          description: Ca file
          type: string
        ca_file_upload:
          description: Ca file upload
          type: file
        cache_match:
          description: Will cache results of matching a rule
          type: string
        client_cert_file:
          description: Client cert file
          type: string
        client_cert_file_upload:
          description: Client cert file upload
          type: file
        client_key_file:
          description: Client key file
          type: string
        client_key_file_upload:
          description: Client key file upload
          type: file
        connection_timeout:
          description: LDAP connection Timeout
          type: string
        dead_duration:
          description: Dead duration
          type: integer
        description:
          description: Description
          type: string
        email_attribute:
          description: LDAP attribute name that stores the email address against which
            the filter will match.
          type: string
        encryption:
          description: Encryption
          type: string
        host:
          description: Host
          items:
            description: Host
            type: string
          type: array
        id:
          description: Id
          type: string
        monitor:
          description: Do you want to monitor this source?
          type: string
        password:
          description: Password
          type: string
        port:
          description: Port
          type: integer
        read_timeout:
          description: LDAP response timeout
          type: string
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        scope:
          description: Scope
          type: string
        searchattributes:
          description: Other attributes that can be used as the username (requires
            to restart the radiusd service to be effective)
          items:
            description: Other attributes that can be used as the username (requires
              to restart the radiusd service to be effective)
            type: string
          type: array
        shuffle:
          description: Randomly choose LDAP server to query
          type: string
        type:
          default: AD
          description: Discriminator `AD`
          type: string
        use_connector:
          description: Use connector
          type: string
        usernameattribute:
          description: Main reference attribute that contain the username
          type: string
        verify:
          description: Verify
          type: string
        write_timeout:
          description: LDAP request timeout
          type: string
      required:
      - id
      - description
      - host
      - encryption
      - basedn
      - scope
      - usernameattribute
      type: object
    ConfigSourceSubTypeAdminproxy:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        group_header:
          description: Group header
          type: string
        id:
          description: Id
          type: string
        proxy_addresses:
          description: A comma seperated list of IP Address
          type: string
        type:
          default: AdminProxy
          description: Discriminator `AdminProxy`
          type: string
        user_header:
          description: User header
          type: string
      required:
      - id
      - description
      - proxy_addresses
      - user_header
      - group_header
      type: object
    ConfigSourceSubTypeAuthorization:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        id:
          description: Id
          type: string
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        type:
          default: Authorization
          description: Discriminator `Authorization`
          type: string
      required:
      - id
      - description
      type: object
    ConfigSourceSubTypeAzuread:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        client_id:
          description: Client id
          type: string
        client_secret:
          description: Client secret
          type: string
        description:
          description: Description
          type: string
        id:
          description: Id
          type: string
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        tenant_id:
          description: Tenant id
          type: string
        timeout:
          description: Timeout
          type: integer
        type:
          default: AzureAD
          description: Discriminator `AzureAD`
          type: string
        user_groups_cache:
          description: User groups cache
          type: integer
        user_groups_url:
          description: User groups url
          type: string
      required:
      - id
      - description
      - client_id
      - client_secret
      - tenant_id
      - user_groups_url
      type: object
    ConfigSourceSubTypeBlackhole:
      properties:
        description:
          description: Description
          type: string
        id:
          description: Id
          type: string
        type:
          default: Blackhole
          description: Discriminator `Blackhole`
          type: string
      required:
      - id
      - description
      type: object
    ConfigSourceSubTypeClickatell:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        api_key:
          description: Clickatell API Key
          type: string
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        description:
          description: Description
          type: string
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        message:
          description: SMS text message ($pin will be replaced by the PIN number)
          type: string
        password_length:
          description: The length of the password to generate.
          type: integer
        pin_code_length:
          description: The length of the PIN code to be sent over sms
          type: integer
        type:
          default: Clickatell
          description: Discriminator `Clickatell`
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - api_key
      type: object
    ConfigSourceSubTypeEaptls:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        id:
          description: Id
          type: string
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        type:
          default: EAPTLS
          description: Discriminator `EAPTLS`
          type: string
      required:
      - id
      - description
      type: object
    ConfigSourceSubTypeEdir:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        append_to_searchattributes:
          description: Append this ldap filter to the generated generated ldap filter
            generated for the search attributes.
          type: string
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        basedn:
          description: Basedn
          type: string
        binddn:
          description: Leave this field empty if you want to perform an anonymous
            bind.
          type: string
        ca_file:
          description: Ca file
          type: string
        ca_file_upload:
          description: Ca file upload
          type: file
        cache_match:
          description: Will cache results of matching a rule
          type: string
        client_cert_file:
          description: Client cert file
          type: string
        client_cert_file_upload:
          description: Client cert file upload
          type: file
        client_key_file:
          description: Client key file
          type: string
        client_key_file_upload:
          description: Client key file upload
          type: file
        connection_timeout:
          description: LDAP connection Timeout
          type: string
        dead_duration:
          description: Dead duration
          type: integer
        description:
          description: Description
          type: string
        email_attribute:
          description: LDAP attribute name that stores the email address against which
            the filter will match.
          type: string
        encryption:
          description: Encryption
          type: string
        host:
          description: Host
          items:
            description: Host
            type: string
          type: array
        id:
          description: Id
          type: string
        monitor:
          description: Do you want to monitor this source?
          type: string
        password:
          description: Password
          type: string
        port:
          description: Port
          type: integer
        read_timeout:
          description: LDAP response timeout
          type: string
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        scope:
          description: Scope
          type: string
        searchattributes:
          description: Other attributes that can be used as the username (requires
            to restart the radiusd service to be effective)
          items:
            description: Other attributes that can be used as the username (requires
              to restart the radiusd service to be effective)
            type: string
          type: array
        shuffle:
          description: Randomly choose LDAP server to query
          type: string
        type:
          default: EDIR
          description: Discriminator `EDIR`
          type: string
        use_connector:
          description: Use connector
          type: string
        usernameattribute:
          description: Main reference attribute that contain the username
          type: string
        verify:
          description: Verify
          type: string
        write_timeout:
          description: LDAP request timeout
          type: string
      required:
      - id
      - description
      - host
      - encryption
      - basedn
      - scope
      - usernameattribute
      type: object
    ConfigSourceSubTypeEduroam:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        auth_listening_port:
          description: Auth listening port
          type: integer
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        eduroam_operator_name:
          description: Eduroam operator name
          type: string
        eduroam_options:
          description: Eduroam options
          type: string
        eduroam_radius_auth:
          description: Eduroam radius auth
          items:
            description: Eduroam radius auth
            type: string
          type: array
        eduroam_radius_auth_proxy_type:
          description: Eduroam radius auth proxy type
          type: string
        id:
          description: Id
          type: string
        local_realm:
          description: Local realm
          items:
            description: Local realm
            type: string
          type: array
        reject_realm:
          description: Reject realm
          items:
            description: Reject realm
            type: string
          type: array
        type:
          default: Eduroam
          description: Discriminator `Eduroam`
          type: string
      required:
      - id
      - description
      - eduroam_radius_auth_proxy_type
      type: object
    ConfigSourceSubTypeEmail:
      properties:
        activation_domain:
          description: Set this value if you want to change the hostname in the validation
            link. Changing this requires to restart haproxy to be fully effective.
          type: string
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        allow_localdomain:
          description: Accept self-registration with email address from the local
            domain
          type: string
        allowed_domains:
          description: A comma-separated list of domains that are allowed for email
            registration. Wildcards are accepted (*pfdemo.org). Allowed domains are
            checked after banned domains.
          type: string
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        banned_domains:
          description: A comma-separated list of domains that are banned for email
            registration. Wildcards are accepted (*pfdemo.org). Banned domains are
            checked before allowed domains.
          type: string
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        description:
          description: Description
          type: string
        email_activation_timeout:
          description: This is the delay given to a guest who registered by email
            confirmation to log into his email and click the activation link.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        password_length:
          description: The length of the password to generate.
          type: integer
        type:
          default: Email
          description: Discriminator `Email`
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - email_activation_timeout
      type: object
    ConfigSourceSubTypeFacebook:
      properties:
        access_token_param:
          description: Access Token Parameter
          type: string
        access_token_path:
          description: Graph API Token Path
          type: string
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        client_id:
          description: App ID
          type: string
        client_secret:
          description: App Secret
          type: string
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        description:
          description: Description
          type: string
        domains:
          description: Comma separated list of domains that will be resolve with the
            correct IP addresses.
          type: string
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        password_length:
          description: The length of the password to generate.
          type: integer
        protected_resource_url:
          description: Graph API URL of logged user
          type: string
        redirect_url:
          description: The hostname must be the one of your captive portal.
          type: string
        scope:
          description: The permissions the application requests.
          type: string
        site:
          description: Graph API URL
          type: string
        type:
          default: Facebook
          description: Discriminator `Facebook`
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - client_id
      - client_secret
      - site
      - access_token_path
      - access_token_param
      - scope
      - protected_resource_url
      - redirect_url
      - domains
      type: object
    ConfigSourceSubTypeGithub:
      properties:
        access_token_param:
          description: Access Token Parameter
          type: string
        access_token_path:
          description: API Token Path
          type: string
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authorize_path:
          description: API Authorize Path
          type: string
        client_id:
          description: App ID
          type: string
        client_secret:
          description: App Secret
          type: string
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        description:
          description: Description
          type: string
        domains:
          description: Comma separated list of domains that will be resolve with the
            correct IP addresses.
          type: string
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        password_length:
          description: The length of the password to generate.
          type: integer
        protected_resource_url:
          description: API URL of logged user
          type: string
        redirect_url:
          description: The hostname must be the one of your captive portal.
          type: string
        scope:
          description: The permissions the application requests.
          type: string
        site:
          description: App URL
          type: string
        type:
          default: Github
          description: Discriminator `Github`
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - client_id
      - client_secret
      - site
      - authorize_path
      - access_token_path
      - access_token_param
      - scope
      - protected_resource_url
      - redirect_url
      - domains
      type: object
    ConfigSourceSubTypeGoogle:
      properties:
        access_token_param:
          description: Access Token Parameter
          type: string
        access_token_path:
          description: API Token Path
          type: string
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authorize_path:
          description: API Authorize Path
          type: string
        client_id:
          description: API ID
          type: string
        client_secret:
          description: API Secret
          type: string
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        description:
          description: Description
          type: string
        domains:
          description: Comma separated list of domains that will be resolve with the
            correct IP addresses.
          type: string
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        password_length:
          description: The length of the password to generate.
          type: integer
        protected_resource_url:
          description: API URL of logged user
          type: string
        redirect_url:
          description: The hostname must be the one of your captive portal.
          type: string
        scope:
          description: The permissions the application requests.
          type: string
        site:
          description: API URL
          type: string
        type:
          default: Google
          description: Discriminator `Google`
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - client_id
      - client_secret
      - site
      - authorize_path
      - access_token_path
      - access_token_param
      - scope
      - protected_resource_url
      - redirect_url
      - domains
      type: object
    ConfigSourceSubTypeGoogleworkspaceldap:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        append_to_searchattributes:
          description: Append this ldap filter to the generated generated ldap filter
            generated for the search attributes.
          type: string
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        basedn:
          description: Basedn
          type: string
        binddn:
          description: Leave this field empty if you want to perform an anonymous
            bind.
          type: string
        ca_file:
          description: Ca file
          type: string
        ca_file_upload:
          description: Ca file upload
          type: file
        cache_match:
          description: Will cache results of matching a rule
          type: string
        client_cert_file:
          description: Client cert file
          type: string
        client_cert_file_upload:
          description: Client cert file upload
          type: file
        client_key_file:
          description: Client key file
          type: string
        client_key_file_upload:
          description: Client key file upload
          type: file
        connection_timeout:
          description: LDAP connection Timeout
          type: string
        dead_duration:
          description: Dead duration
          type: integer
        description:
          description: Description
          type: string
        email_attribute:
          description: LDAP attribute name that stores the email address against which
            the filter will match.
          type: string
        encryption:
          description: Encryption
          type: string
        host:
          description: Host
          items:
            description: Host
            type: string
          type: array
        id:
          description: Id
          type: string
        monitor:
          description: Do you want to monitor this source?
          type: string
        password:
          description: Password
          type: string
        port:
          description: Port
          type: integer
        read_timeout:
          description: LDAP response timeout
          type: string
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        scope:
          description: Scope
          type: string
        searchattributes:
          description: Other attributes that can be used as the username (requires
            to restart the radiusd service to be effective)
          items:
            description: Other attributes that can be used as the username (requires
              to restart the radiusd service to be effective)
            type: string
          type: array
        shuffle:
          description: Randomly choose LDAP server to query
          type: string
        type:
          default: GoogleWorkspaceLDAP
          description: Discriminator `GoogleWorkspaceLDAP`
          type: string
        use_connector:
          description: Use connector
          type: string
        usernameattribute:
          description: Main reference attribute that contain the username
          type: string
        verify:
          description: Verify
          type: string
        write_timeout:
          description: LDAP request timeout
          type: string
      required:
      - id
      - description
      - host
      - encryption
      - basedn
      - scope
      - usernameattribute
      - client_cert_file
      - client_key_file
      type: object
    ConfigSourceSubTypeHtpasswd:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        id:
          description: Id
          type: string
        path:
          description: Path
          type: string
        path_upload:
          description: Path upload
          type: file
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        type:
          default: Htpasswd
          description: Discriminator `Htpasswd`
          type: string
      required:
      - id
      - description
      type: object
    ConfigSourceSubTypeHttp:
      properties:
        authentication_url:
          description: 'Note : The URL is always prefixed by a slash (/)'
          type: string
        authorization_url:
          description: 'Note : The URL is always prefixed by a slash (/)'
          type: string
        description:
          description: Description
          type: string
        host:
          description: Host
          type: string
        id:
          description: Id
          type: string
        password:
          description: API password (basic auth)
          type: string
        port:
          description: Port
          type: integer
        protocol:
          description: Encryption
          type: string
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        type:
          default: HTTP
          description: Discriminator `HTTP`
          type: string
        username:
          description: API username (basic auth)
          type: string
      required:
      - id
      - description
      - protocol
      - authentication_url
      - authorization_url
      type: object
    ConfigSourceSubTypeKerberos:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authenticate_realm:
          description: Realm to use to authenticate
          type: string
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        host:
          description: Host
          type: string
        id:
          description: Id
          type: string
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        type:
          default: Kerberos
          description: Discriminator `Kerberos`
          type: string
      required:
      - id
      - description
      - host
      - authenticate_realm
      type: object
    ConfigSourceSubTypeKickbox:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        api_key:
          description: Kickbox.io API key.
          type: string
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        email_required:
          description: Email required
          type: string
        id:
          description: Id
          type: string
        type:
          default: Kickbox
          description: Discriminator `Kickbox`
          type: string
      required:
      - id
      - description
      - api_key
      type: object
    ConfigSourceSubTypeLdap:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        append_to_searchattributes:
          description: Append this ldap filter to the generated generated ldap filter
            generated for the search attributes.
          type: string
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        basedn:
          description: Basedn
          type: string
        binddn:
          description: Leave this field empty if you want to perform an anonymous
            bind.
          type: string
        ca_file:
          description: Ca file
          type: string
        ca_file_upload:
          description: Ca file upload
          type: file
        cache_match:
          description: Will cache results of matching a rule
          type: string
        client_cert_file:
          description: Client cert file
          type: string
        client_cert_file_upload:
          description: Client cert file upload
          type: file
        client_key_file:
          description: Client key file
          type: string
        client_key_file_upload:
          description: Client key file upload
          type: file
        connection_timeout:
          description: LDAP connection Timeout
          type: string
        dead_duration:
          description: Dead duration
          type: integer
        description:
          description: Description
          type: string
        email_attribute:
          description: LDAP attribute name that stores the email address against which
            the filter will match.
          type: string
        encryption:
          description: Encryption
          type: string
        host:
          description: Host
          items:
            description: Host
            type: string
          type: array
        id:
          description: Id
          type: string
        monitor:
          description: Do you want to monitor this source?
          type: string
        password:
          description: Password
          type: string
        port:
          description: Port
          type: integer
        read_timeout:
          description: LDAP response timeout
          type: string
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        scope:
          description: Scope
          type: string
        searchattributes:
          description: Other attributes that can be used as the username (requires
            to restart the radiusd service to be effective)
          items:
            description: Other attributes that can be used as the username (requires
              to restart the radiusd service to be effective)
            type: string
          type: array
        shuffle:
          description: Randomly choose LDAP server to query
          type: string
        type:
          default: LDAP
          description: Discriminator `LDAP`
          type: string
        use_connector:
          description: Use connector
          type: string
        usernameattribute:
          description: Main reference attribute that contain the username
          type: string
        verify:
          description: Verify
          type: string
        write_timeout:
          description: LDAP request timeout
          type: string
      required:
      - id
      - description
      - host
      - encryption
      - basedn
      - scope
      - usernameattribute
      type: object
    ConfigSourceSubTypeLinkedin:
      properties:
        access_token_param:
          description: Access Token Parameter
          type: string
        access_token_path:
          description: API Token Path
          type: string
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authorize_path:
          description: API Authorize Path
          type: string
        client_id:
          description: API ID
          type: string
        client_secret:
          description: API Secret
          type: string
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        description:
          description: Description
          type: string
        domains:
          description: Comma separated list of domains that will be resolve with the
            correct IP addresses.
          type: string
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        password_length:
          description: The length of the password to generate.
          type: integer
        protected_resource_url:
          description: API URL of logged user
          type: string
        redirect_url:
          description: The hostname must be the one of your captive portal.
          type: string
        scope:
          description: The permissions the application requests.
          type: string
        site:
          description: API URL
          type: string
        type:
          default: LinkedIn
          description: Discriminator `LinkedIn`
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - client_id
      - client_secret
      - site
      - authorize_path
      - access_token_path
      - access_token_param
      - protected_resource_url
      - redirect_url
      - domains
      - scope
      type: object
    ConfigSourceSubTypeNull:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        email_required:
          description: Email required
          type: string
        id:
          description: Id
          type: string
        type:
          default: Null
          description: Discriminator `Null`
          type: string
      required:
      - id
      - description
      type: object
    ConfigSourceSubTypeOpenid:
      properties:
        access_token_path:
          description: API Token Path
          type: string
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authorize_path:
          description: API Authorize Path
          type: string
        client_id:
          description: App ID
          type: string
        client_secret:
          description: App Secret
          type: string
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        description:
          description: Description
          type: string
        domains:
          description: Comma-separated list of domains that will be resolved with
            the correct IP addresses.
          type: string
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        password_length:
          description: The length of the password to generate.
          type: integer
        person_mappings:
          description: Person mappings
          items:
            description: Person mapping
            properties:
              openid_field:
                description: Openid field
                type: string
              person_field:
                description: Person field
                type: string
            type: object
          type: array
        protected_resource_url:
          description: API URL of logged user
          type: string
        redirect_url:
          description: The hostname must match your hostname and domain parameters
            set in System Configuration > Main Configuration > General Configuration.
          type: string
        scope:
          description: The permissions the application requests.
          type: string
        site:
          description: API URL
          type: string
        type:
          default: OpenID
          description: Discriminator `OpenID`
          type: string
        username_attribute:
          description: Attribute of the username in the response
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - client_id
      - client_secret
      - site
      - access_token_path
      - authorize_path
      - scope
      - protected_resource_url
      - redirect_url
      - domains
      - username_attribute
      type: object
    ConfigSourceSubTypePaypal:
      properties:
        cert_file:
          description: The path to the certificate you submitted to Paypal.
          type: string
        cert_file_upload:
          description: Cert file upload
          type: file
        cert_id:
          description: Cert id
          type: string
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        currency:
          description: Currency
          type: string
        description:
          description: Description
          type: string
        domains:
          description: Comma separated list of domains that will be resolve with the
            correct IP addresses.
          type: string
        email_address:
          description: The email address associated to your paypal account.
          type: string
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        identity_token:
          description: Identity token
          type: string
        key_file:
          description: The path to the associated key of the certificate you submitted
            to Paypal.
          type: string
        key_file_upload:
          description: Key file upload
          type: file
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        password_length:
          description: The length of the password to generate.
          type: integer
        payment_type:
          description: The type of transactions this source will do (donations or
            sales).
          type: string
        paypal_cert_file:
          description: The path to the Paypal certificate you downloaded.
          type: string
        paypal_cert_file_upload:
          description: Paypal cert file upload
          type: file
        send_email_confirmation:
          description: Send billing confirmation
          type: string
        test_mode:
          description: Test mode
          type: string
        type:
          default: Paypal
          description: Discriminator `Paypal`
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - identity_token
      - cert_id
      - email_address
      - payment_type
      - domains
      type: object
    ConfigSourceSubTypePotd:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        id:
          description: Name
          type: string
        password_email_update:
          description: Email addresses to send the new generated password.
          type: string
        password_length:
          description: The length of the password to generate.
          type: integer
        password_rotation:
          description: Period of time after the password must be rotated.
          type: string
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        type:
          default: Potd
          description: Discriminator `Potd`
          type: string
      required:
      - id
      - description
      - password_length
      - password_email_update
      type: object
    ConfigSourceSubTypeRadius:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        host:
          description: Host
          type: string
        id:
          description: Id
          type: string
        monitor:
          description: Do you want to monitor this source?
          type: string
        nas_ip_address:
          description: Nas ip address
          type: string
        options:
          description: Define options for FreeRADIUS home_server definition (if you
            use the source in the realm configuration). Need a radius restart.
          type: string
        port:
          description: If you use this source in the realm configuration the accounting
            port will be this port + 1
          type: integer
        realms:
          description: Realms that will be associated with this source (For the Portal/Admin
            GUI/RADIUS post-auth, not for FreeRADIUS proxy)
          items:
            description: Realms that will be associated with this source (For the
              Portal/Admin GUI/RADIUS post-auth, not for FreeRADIUS proxy)
            type: string
          type: array
        secret:
          description: Secret
          type: string
        timeout:
          description: Timeout
          type: integer
        type:
          default: RADIUS
          description: Discriminator `RADIUS`
          type: string
        use_connector:
          description: Use connector
          type: string
      required:
      - id
      - description
      - host
      - port
      - secret
      - timeout
      type: object
    ConfigSourceSubTypeSaml:
      properties:
        authorization_source_id:
          description: The source to use for authorization (rule matching)
          type: string
        description:
          description: Description
          type: string
        id:
          description: Id
          type: string
        idp_ca_cert_path:
          description: If your Identity Provider uses a self-signed certificate, put
            the path to its certificate here instead.
          type: string
        idp_ca_cert_path_upload:
          description: Idp ca cert path upload
          type: file
        idp_cert_path:
          description: Idp cert path
          type: string
        idp_cert_path_upload:
          description: Idp cert path upload
          type: file
        idp_entity_id:
          description: Idp entity id
          type: string
        idp_metadata_path:
          description: Idp metadata path
          type: string
        idp_metadata_path_upload:
          description: Idp metadata path upload
          type: file
        sp_cert_path:
          description: Sp cert path
          type: string
        sp_cert_path_upload:
          description: Sp cert path upload
          type: file
        sp_entity_id:
          description: Sp entity id
          type: string
        sp_key_path:
          description: Sp key path
          type: string
        sp_key_path_upload:
          description: Sp key path upload
          type: file
        type:
          default: SAML
          description: Discriminator `SAML`
          type: string
        username_attribute:
          description: Username attribute
          type: string
      required:
      - id
      - description
      - sp_entity_id
      - idp_entity_id
      - authorization_source_id
      type: object
    ConfigSourceSubTypeSms:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        description:
          description: Description
          type: string
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        message:
          description: SMS text message ($pin will be replaced by the PIN number)
          type: string
        password_length:
          description: The length of the password to generate.
          type: integer
        pin_code_length:
          description: The amount of digits of the PIN number.
          type: integer
        sms_activation_timeout:
          description: This is the delay given to a guest who registered by SMS confirmation
            to fill the PIN code.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        sms_carriers:
          description: List of phone carriers available to the user
          items:
            description: List of phone carriers available to the user
            type: string
          type: array
        type:
          default: SMS
          description: Discriminator `SMS`
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - sms_activation_timeout
      - pin_code_length
      type: object
    ConfigSourceSubTypeSponsoremail:
      properties:
        activation_domain:
          description: Set this value if you want to change the hostname in the validation
            link. Changing this requires to restart haproxy to be fully effective.
          type: string
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        allow_localdomain:
          description: Accept self-registration with email address from the local
            domain
          type: string
        allowed_domains:
          description: A comma-separated list of domains that are allowed for email
            registration. Wildcards are accepted (*pfdemo.org). Allowed domains are
            checked after banned domains.
          type: string
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        banned_domains:
          description: A comma-separated list of domains that are banned for email
            registration. Wildcards are accepted (*pfdemo.org). Banned domains are
            checked before allowed domains.
          type: string
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        description:
          description: Description
          type: string
        email_activation_timeout:
          description: Delay given to a sponsor to click the activation link.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        lang:
          description: Language for sponsor email.
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        password_length:
          description: The length of the password to generate.
          type: integer
        register_on_activation:
          description: Register on activation
          type: string
        sources:
          description: Sources that will be associated with this source (For the Sponsor)
          items:
            description: Sources that will be associated with this source (For the
              Sponsor)
            type: string
          type: array
        sponsorship_bcc:
          description: Sponsors requesting access and access confirmation emails are
            BCC'ed to this address. Multiple destinations can be comma separated.
          type: string
        type:
          default: SponsorEmail
          description: Discriminator `SponsorEmail`
          type: string
        validate_sponsor:
          description: Force sponsor to authenticate when validating a guest request.
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - email_activation_timeout
      type: object
    ConfigSourceSubTypeSql:
      properties:
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        id:
          description: Id
          type: string
        type:
          default: SQL
          description: Discriminator `SQL`
          type: string
      required:
      - id
      - description
      type: object
    ConfigSourceSubTypeStripe:
      properties:
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        currency:
          description: Currency
          type: string
        customer_portal:
          description: Customer portal
          type: string
        description:
          description: Description
          type: string
        domains:
          description: Comma separated list of domains that will be resolve with the
            correct IP addresses.
          type: string
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        password_length:
          description: The length of the password to generate.
          type: integer
        publishable_key:
          description: Publishable key
          type: string
        secret_key:
          description: Secret key
          type: string
        send_email_confirmation:
          description: Send billing confirmation
          type: string
        style:
          description: The type of payment the user will make. Charge is a one time
            fee, subscription will be a recurring fee.
          type: string
        test_mode:
          description: Test mode
          type: string
        type:
          default: Stripe
          description: Discriminator `Stripe`
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - secret_key
      - publishable_key
      - domains
      type: object
    ConfigSourceSubTypeTwilio:
      properties:
        account_sid:
          description: Twilio Account SID
          type: string
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        auth_token:
          description: Twilio Auth Token
          type: string
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        description:
          description: Description
          type: string
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        message:
          description: SMS text message ($pin will be replaced by the PIN number)
          type: string
        password_length:
          description: The length of the password to generate.
          type: integer
        pin_code_length:
          description: The length of the PIN code to be sent over SMS
          type: integer
        twilio_phone_number:
          description: Twilio provided phone number which will show as the sender
          type: string
        type:
          default: Twilio
          description: Discriminator `Twilio`
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - account_sid
      - auth_token
      - twilio_phone_number
      type: object
    ConfigSourceSubTypeWindowslive:
      properties:
        access_token_param:
          description: Access Token Parameter
          type: string
        access_token_path:
          description: API Token Path
          type: string
        administration_rules:
          description: Administration rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authentication_rules:
          description: Authentication rules
          items:
            description: Rule - New (  )
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              conditions:
                description: Conditions
                items:
                  description: Condition
                  properties:
                    attribute:
                      description: Attribute
                      type: string
                    operator:
                      description: Operator
                      type: string
                    type:
                      description: Type
                      type: string
                    value:
                      description: Value
                      type: string
                  type: object
                type: array
              description:
                description: Description
                type: string
              id:
                description: Name
                type: string
              match:
                description: Matches
                type: string
              status:
                description: Enable rule
                type: string
            type: object
          type: array
        authorize_path:
          description: API Authorize Path
          type: string
        client_id:
          description: API ID
          type: string
        client_secret:
          description: API Secret
          type: string
        create_local_account:
          description: Create a local account on the PacketFence system based on the
            username provided.
          type: string
        description:
          description: Description
          type: string
        domains:
          description: Comma separated list of domains that will be resolve with the
            correct IP addresses.
          type: string
        hash_passwords:
          description: The algorithm used to hash the passwords in the database.This
            will only affect newly created or reset passwords.
          type: string
        id:
          description: Id
          type: string
        local_account_expiration:
          description: Local account expiration
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        local_account_logins:
          description: The amount of times, the local account can be used after its
            created. 0 means infinite.
          type: integer
        password_length:
          description: The length of the password to generate.
          type: integer
        protected_resource_url:
          description: API URL of logged user
          type: string
        redirect_url:
          description: The hostname must be the one of your captive portal.
          type: string
        scope:
          description: The permissions the application requests.
          type: string
        site:
          description: API URL
          type: string
        type:
          default: WindowsLive
          description: Discriminator `WindowsLive`
          type: string
      required:
      - id
      - description
      - hash_passwords
      - password_length
      - client_id
      - client_secret
      - site
      - authorize_path
      - access_token_path
      - access_token_param
      - scope
      - protected_resource_url
      - redirect_url
      - domains
      type: object
    ConfigSourceWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigSource'
        status:
          type: integer
      type: object
    ConfigSourcesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigSource'
            type: array
        type: object
    ConfigSwitch:
      properties:
        ACLsLimit:
          description: ACLsLimit
          type: integer
        AccessListMap:
          description: Role by access list
          type: string
        AccessListMapping:
          description: AccessListMapping
          items:
            description: AccessListMapping
            properties:
              accesslist:
                description: Accesslist
                type: string
              role:
                description: Role
                type: string
            type: object
          type: array
        ControllerRoleMapping:
          description: ControllerRoleMapping
          items:
            description: ControllerRoleMapping
            properties:
              controller_role:
                description: Controller role
                type: string
              role:
                description: Role
                type: string
            type: object
          type: array
        DownloadableACLsLimit:
          description: DownloadableACLsLimit
          type: integer
        ExternalPortalEnforcement:
          description: ExternalPortalEnforcement
          type: string
        InterfaceMap:
          description: Interface to apply Role ACL
          type: string
        InterfaceMapping:
          description: InterfaceMapping
          items:
            description: InterfaceMapping
            properties:
              interface:
                description: Interface
                type: string
              role:
                description: Role
                type: string
            type: object
          type: array
        NetworkFromMapping:
          description: NetworkFromMapping
          items:
            description: NetworkFromMapping
            properties:
              networkfrom:
                description: Networkfrom
                type: string
              role:
                description: Role
                type: string
            type: object
          type: array
        NetworkMap:
          description: Role by network
          type: string
        NetworkMapping:
          description: NetworkMapping
          items:
            description: NetworkMapping
            properties:
              network:
                description: Network
                type: string
              role:
                description: Role
                type: string
            type: object
          type: array
        PostMfaValidation:
          description: PostMfaValidation
          type: string
        RoleMap:
          description: Role by Switch Role
          type: string
        SNMPAuthPasswordRead:
          description: Auth Password Read
          type: string
        SNMPAuthPasswordTrap:
          description: Auth Password Trap
          type: string
        SNMPAuthPasswordWrite:
          description: Auth Password Write
          type: string
        SNMPAuthProtocolRead:
          description: Auth Protocol Read
          type: string
        SNMPAuthProtocolTrap:
          description: Auth Protocol Trap
          type: string
        SNMPAuthProtocolWrite:
          description: Auth Protocol Write
          type: string
        SNMPCommunityRead:
          description: Community Read
          type: string
        SNMPCommunityTrap:
          description: Community Trap
          type: string
        SNMPCommunityWrite:
          description: Community Write
          type: string
        SNMPEngineID:
          description: Engine ID
          type: string
        SNMPPrivPasswordRead:
          description: Priv Password Read
          type: string
        SNMPPrivPasswordTrap:
          description: Priv Password Trap
          type: string
        SNMPPrivPasswordWrite:
          description: Priv Password Write
          type: string
        SNMPPrivProtocolRead:
          description: Priv Protocol Read
          type: string
        SNMPPrivProtocolTrap:
          description: Priv Protocol Trap
          type: string
        SNMPPrivProtocolWrite:
          description: Priv Protocol Write
          type: string
        SNMPUseConnector:
          description: SNMPUseConnector
          type: string
        SNMPUserNameRead:
          description: User Name Read
          type: string
        SNMPUserNameTrap:
          description: User Name Trap
          type: string
        SNMPUserNameWrite:
          description: User Name Write
          type: string
        SNMPVersion:
          description: Version
          type: string
        SNMPVersionTrap:
          description: Version Trap
          type: string
        UrlMap:
          description: Role by Web Auth URL
          type: string
        UrlMapping:
          description: UrlMapping
          items:
            description: UrlMapping
            properties:
              role:
                description: Role
                type: string
              url:
                description: Url
                type: string
            type: object
          type: array
        UseDownloadableACLs:
          description: UseDownloadableACLs
          type: string
        UsePushACLs:
          description: UsePushACLs
          type: string
        VlanMap:
          description: Role by VLAN ID
          type: string
        VlanMapping:
          description: VlanMapping
          items:
            description: VlanMapping
            properties:
              role:
                description: Role
                type: string
              vlan:
                description: Vlan
                type: string
            type: object
          type: array
        VoIPCDPDetect:
          description: VoIPCDPDetect
          type: string
        VoIPDHCPDetect:
          description: VoIPDHCPDetect
          type: string
        VoIPEnabled:
          description: VoIP
          type: string
        VoIPLLDPDetect:
          description: VoIPLLDPDetect
          type: string
        VpnMap:
          description: Role by Vpn Role
          type: string
        VpnMapping:
          description: VpnMapping
          items:
            description: VpnMapping
            properties:
              role:
                description: Role
                type: string
              vpn:
                description: Vpn
                type: string
            type: object
          type: array
        always_trigger:
          description: Always trigger
          type: string
        cliAccess:
          description: Allow this switch to use PacketFence as a radius server for
            CLI access
          type: string
        cliEnablePwd:
          description: Enable Password
          type: string
        cliPwd:
          description: Password
          type: string
        cliTransport:
          description: Transport
          type: string
        cliUser:
          description: Username
          type: string
        coaPort:
          description: For CoA request, if we have to send to another port
          type: integer
        controllerIp:
          description: Use instead this IP address for de-authentication requests.
            Normally used for Wi-Fi only
          type: string
        deauthMethod:
          description: Deauthentication Method
          type: string
        deauthOnPrevious:
          description: DeauthOnPrevious
          type: string
        description:
          description: Description
          type: string
        disconnectPort:
          description: For Disconnect request, if we have to send to another port
          type: integer
        group:
          description: Changing the group requires to save to see the new default
            values
          type: string
        id:
          description: IP Address/MAC Address/Range (CIDR)
          type: string
        inlineTrigger:
          description: InlineTrigger
          items:
            description: InlineTrigger
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        macSearchesMaxNb:
          description: Maximum number of MAC addresses retrived from a port
          type: integer
        macSearchesSleepInterval:
          description: Sleep interval between queries of MAC addresses
          type: integer
        mac_trigger:
          description: Mac trigger
          type: string
        mode:
          description: Mode
          type: string
        port_trigger:
          description: Port trigger
          type: integer
        radiusDeauthUseConnector:
          description: RadiusDeauthUseConnector
          type: string
        radiusSecret:
          description: Secret Passphrase
          type: string
        ssid_trigger:
          description: Ssid trigger
          type: string
        type:
          description: Type
          type: string
        uplink:
          description: Comma-separated list of the switch uplinks
          type: string
        uplink_dynamic:
          description: Dynamically lookup uplinks
          type: string
        useCoA:
          description: Use CoA when available to deauthenticate the user. When disabled,
            RADIUS Disconnect will be used instead if it is available.
          type: string
        wsPwd:
          description: Password
          type: string
        wsTransport:
          description: Transport
          type: string
        wsUser:
          description: Username
          type: string
      required:
      - id
      type: object
    ConfigSwitchGroup:
      properties:
        ACLsLimit:
          description: ACLsLimit
          type: integer
        AccessListMap:
          description: Role by access list
          type: string
        AccessListMapping:
          description: AccessListMapping
          items:
            description: AccessListMapping
            properties:
              accesslist:
                description: Accesslist
                type: string
              role:
                description: Role
                type: string
            type: object
          type: array
        ControllerRoleMapping:
          description: ControllerRoleMapping
          items:
            description: ControllerRoleMapping
            properties:
              controller_role:
                description: Controller role
                type: string
              role:
                description: Role
                type: string
            type: object
          type: array
        DownloadableACLsLimit:
          description: DownloadableACLsLimit
          type: integer
        ExternalPortalEnforcement:
          description: ExternalPortalEnforcement
          type: string
        InterfaceMap:
          description: Interface to apply Role ACL
          type: string
        InterfaceMapping:
          description: InterfaceMapping
          items:
            description: InterfaceMapping
            properties:
              interface:
                description: Interface
                type: string
              role:
                description: Role
                type: string
            type: object
          type: array
        NetworkFromMapping:
          description: NetworkFromMapping
          items:
            description: NetworkFromMapping
            properties:
              networkfrom:
                description: Networkfrom
                type: string
              role:
                description: Role
                type: string
            type: object
          type: array
        NetworkMap:
          description: Role by network
          type: string
        NetworkMapping:
          description: NetworkMapping
          items:
            description: NetworkMapping
            properties:
              network:
                description: Network
                type: string
              role:
                description: Role
                type: string
            type: object
          type: array
        PostMfaValidation:
          description: PostMfaValidation
          type: string
        RoleMap:
          description: Role by Switch Role
          type: string
        SNMPAuthPasswordRead:
          description: Auth Password Read
          type: string
        SNMPAuthPasswordTrap:
          description: Auth Password Trap
          type: string
        SNMPAuthPasswordWrite:
          description: Auth Password Write
          type: string
        SNMPAuthProtocolRead:
          description: Auth Protocol Read
          type: string
        SNMPAuthProtocolTrap:
          description: Auth Protocol Trap
          type: string
        SNMPAuthProtocolWrite:
          description: Auth Protocol Write
          type: string
        SNMPCommunityRead:
          description: Community Read
          type: string
        SNMPCommunityTrap:
          description: Community Trap
          type: string
        SNMPCommunityWrite:
          description: Community Write
          type: string
        SNMPEngineID:
          description: Engine ID
          type: string
        SNMPPrivPasswordRead:
          description: Priv Password Read
          type: string
        SNMPPrivPasswordTrap:
          description: Priv Password Trap
          type: string
        SNMPPrivPasswordWrite:
          description: Priv Password Write
          type: string
        SNMPPrivProtocolRead:
          description: Priv Protocol Read
          type: string
        SNMPPrivProtocolTrap:
          description: Priv Protocol Trap
          type: string
        SNMPPrivProtocolWrite:
          description: Priv Protocol Write
          type: string
        SNMPUseConnector:
          description: SNMPUseConnector
          type: string
        SNMPUserNameRead:
          description: User Name Read
          type: string
        SNMPUserNameTrap:
          description: User Name Trap
          type: string
        SNMPUserNameWrite:
          description: User Name Write
          type: string
        SNMPVersion:
          description: Version
          type: string
        SNMPVersionTrap:
          description: Version Trap
          type: string
        UrlMap:
          description: Role by Web Auth URL
          type: string
        UrlMapping:
          description: UrlMapping
          items:
            description: UrlMapping
            properties:
              role:
                description: Role
                type: string
              url:
                description: Url
                type: string
            type: object
          type: array
        UseDownloadableACLs:
          description: UseDownloadableACLs
          type: string
        UsePushACLs:
          description: UsePushACLs
          type: string
        VlanMap:
          description: Role by VLAN ID
          type: string
        VlanMapping:
          description: VlanMapping
          items:
            description: VlanMapping
            properties:
              role:
                description: Role
                type: string
              vlan:
                description: Vlan
                type: string
            type: object
          type: array
        VoIPCDPDetect:
          description: VoIPCDPDetect
          type: string
        VoIPDHCPDetect:
          description: VoIPDHCPDetect
          type: string
        VoIPEnabled:
          description: VoIP
          type: string
        VoIPLLDPDetect:
          description: VoIPLLDPDetect
          type: string
        VpnMap:
          description: Role by Vpn Role
          type: string
        VpnMapping:
          description: VpnMapping
          items:
            description: VpnMapping
            properties:
              role:
                description: Role
                type: string
              vpn:
                description: Vpn
                type: string
            type: object
          type: array
        always_trigger:
          description: Always trigger
          type: string
        cliAccess:
          description: Allow this switch to use PacketFence as a radius server for
            CLI access
          type: string
        cliEnablePwd:
          description: Enable Password
          type: string
        cliPwd:
          description: Password
          type: string
        cliTransport:
          description: Transport
          type: string
        cliUser:
          description: Username
          type: string
        coaPort:
          description: For CoA request, if we have to send to another port
          type: integer
        controllerIp:
          description: Use instead this IP address for de-authentication requests.
            Normally used for Wi-Fi only
          type: string
        deauthMethod:
          description: Deauthentication Method
          type: string
        deauthOnPrevious:
          description: DeauthOnPrevious
          type: string
        description:
          description: Description
          type: string
        disconnectPort:
          description: For Disconnect request, if we have to send to another port
          type: integer
        id:
          description: Group name
          type: string
        inlineTrigger:
          description: InlineTrigger
          items:
            description: InlineTrigger
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        macSearchesMaxNb:
          description: Maximum number of MAC addresses retrived from a port
          type: integer
        macSearchesSleepInterval:
          description: Sleep interval between queries of MAC addresses
          type: integer
        mac_trigger:
          description: Mac trigger
          type: string
        mode:
          description: Mode
          type: string
        port_trigger:
          description: Port trigger
          type: integer
        radiusDeauthUseConnector:
          description: RadiusDeauthUseConnector
          type: string
        radiusSecret:
          description: Secret Passphrase
          type: string
        ssid_trigger:
          description: Ssid trigger
          type: string
        type:
          description: Type
          type: string
        uplink:
          description: Comma-separated list of the switch uplinks
          type: string
        uplink_dynamic:
          description: Dynamically lookup uplinks
          type: string
        useCoA:
          description: Use CoA when available to deauthenticate the user. When disabled,
            RADIUS Disconnect will be used instead if it is available.
          type: string
        wsPwd:
          description: Password
          type: string
        wsTransport:
          description: Transport
          type: string
        wsUser:
          description: Username
          type: string
      required:
      - id
      type: object
    ConfigSwitchGroupMembers:
      properties:
        items:
          items:
            $ref: '#/components/schemas/ConfigSwitch'
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    ConfigSwitchGroupMeta:
      properties:
        meta:
          properties:
            ACLsLimit:
              $ref: '#/components/schemas/Meta'
            AccessListMap:
              $ref: '#/components/schemas/Meta'
            AccessListMapping:
              $ref: '#/components/schemas/Meta'
            ControllerRoleMapping:
              $ref: '#/components/schemas/Meta'
            DownloadableACLsLimit:
              $ref: '#/components/schemas/Meta'
            ExternalPortalEnforcement:
              $ref: '#/components/schemas/Meta'
            InterfaceMap:
              $ref: '#/components/schemas/Meta'
            InterfaceMapping:
              $ref: '#/components/schemas/Meta'
            NetworkFromMapping:
              $ref: '#/components/schemas/Meta'
            NetworkMap:
              $ref: '#/components/schemas/Meta'
            NetworkMapping:
              $ref: '#/components/schemas/Meta'
            PostMfaValidation:
              $ref: '#/components/schemas/Meta'
            RoleMap:
              $ref: '#/components/schemas/Meta'
            SNMPAuthPasswordRead:
              $ref: '#/components/schemas/Meta'
            SNMPAuthPasswordTrap:
              $ref: '#/components/schemas/Meta'
            SNMPAuthPasswordWrite:
              $ref: '#/components/schemas/Meta'
            SNMPAuthProtocolRead:
              $ref: '#/components/schemas/Meta'
            SNMPAuthProtocolTrap:
              $ref: '#/components/schemas/Meta'
            SNMPAuthProtocolWrite:
              $ref: '#/components/schemas/Meta'
            SNMPCommunityRead:
              $ref: '#/components/schemas/Meta'
            SNMPCommunityTrap:
              $ref: '#/components/schemas/Meta'
            SNMPCommunityWrite:
              $ref: '#/components/schemas/Meta'
            SNMPEngineID:
              $ref: '#/components/schemas/Meta'
            SNMPPrivPasswordRead:
              $ref: '#/components/schemas/Meta'
            SNMPPrivPasswordTrap:
              $ref: '#/components/schemas/Meta'
            SNMPPrivPasswordWrite:
              $ref: '#/components/schemas/Meta'
            SNMPPrivProtocolRead:
              $ref: '#/components/schemas/Meta'
            SNMPPrivProtocolTrap:
              $ref: '#/components/schemas/Meta'
            SNMPPrivProtocolWrite:
              $ref: '#/components/schemas/Meta'
            SNMPUseConnector:
              $ref: '#/components/schemas/Meta'
            SNMPUserNameRead:
              $ref: '#/components/schemas/Meta'
            SNMPUserNameTrap:
              $ref: '#/components/schemas/Meta'
            SNMPUserNameWrite:
              $ref: '#/components/schemas/Meta'
            SNMPVersion:
              $ref: '#/components/schemas/Meta'
            SNMPVersionTrap:
              $ref: '#/components/schemas/Meta'
            UrlMap:
              $ref: '#/components/schemas/Meta'
            UrlMapping:
              $ref: '#/components/schemas/Meta'
            UseDownloadableACLs:
              $ref: '#/components/schemas/Meta'
            UsePushACLs:
              $ref: '#/components/schemas/Meta'
            VlanMap:
              $ref: '#/components/schemas/Meta'
            VlanMapping:
              $ref: '#/components/schemas/Meta'
            VoIPCDPDetect:
              $ref: '#/components/schemas/Meta'
            VoIPDHCPDetect:
              $ref: '#/components/schemas/Meta'
            VoIPEnabled:
              $ref: '#/components/schemas/Meta'
            VoIPLLDPDetect:
              $ref: '#/components/schemas/Meta'
            VpnMap:
              $ref: '#/components/schemas/Meta'
            VpnMapping:
              $ref: '#/components/schemas/Meta'
            always_trigger:
              $ref: '#/components/schemas/Meta'
            cliAccess:
              $ref: '#/components/schemas/Meta'
            cliEnablePwd:
              $ref: '#/components/schemas/Meta'
            cliPwd:
              $ref: '#/components/schemas/Meta'
            cliTransport:
              $ref: '#/components/schemas/Meta'
            cliUser:
              $ref: '#/components/schemas/Meta'
            coaPort:
              $ref: '#/components/schemas/Meta'
            controllerIp:
              $ref: '#/components/schemas/Meta'
            deauthMethod:
              $ref: '#/components/schemas/Meta'
            deauthOnPrevious:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            disconnectPort:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            inlineTrigger:
              $ref: '#/components/schemas/Meta'
            macSearchesMaxNb:
              $ref: '#/components/schemas/Meta'
            macSearchesSleepInterval:
              $ref: '#/components/schemas/Meta'
            mac_trigger:
              $ref: '#/components/schemas/Meta'
            mode:
              $ref: '#/components/schemas/Meta'
            port_trigger:
              $ref: '#/components/schemas/Meta'
            radiusDeauthUseConnector:
              $ref: '#/components/schemas/Meta'
            radiusSecret:
              $ref: '#/components/schemas/Meta'
            ssid_trigger:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uplink:
              $ref: '#/components/schemas/Meta'
            uplink_dynamic:
              $ref: '#/components/schemas/Meta'
            useCoA:
              $ref: '#/components/schemas/Meta'
            wsPwd:
              $ref: '#/components/schemas/Meta'
            wsTransport:
              $ref: '#/components/schemas/Meta'
            wsUser:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSwitchGroupWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigSwitchGroup'
        status:
          type: integer
      type: object
    ConfigSwitchGroupsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigSwitchGroup'
            type: array
        type: object
    ConfigSwitchMeta:
      properties:
        meta:
          properties:
            ACLsLimit:
              $ref: '#/components/schemas/Meta'
            AccessListMap:
              $ref: '#/components/schemas/Meta'
            AccessListMapping:
              $ref: '#/components/schemas/Meta'
            ControllerRoleMapping:
              $ref: '#/components/schemas/Meta'
            DownloadableACLsLimit:
              $ref: '#/components/schemas/Meta'
            ExternalPortalEnforcement:
              $ref: '#/components/schemas/Meta'
            InterfaceMap:
              $ref: '#/components/schemas/Meta'
            InterfaceMapping:
              $ref: '#/components/schemas/Meta'
            NetworkFromMapping:
              $ref: '#/components/schemas/Meta'
            NetworkMap:
              $ref: '#/components/schemas/Meta'
            NetworkMapping:
              $ref: '#/components/schemas/Meta'
            PostMfaValidation:
              $ref: '#/components/schemas/Meta'
            RoleMap:
              $ref: '#/components/schemas/Meta'
            SNMPAuthPasswordRead:
              $ref: '#/components/schemas/Meta'
            SNMPAuthPasswordTrap:
              $ref: '#/components/schemas/Meta'
            SNMPAuthPasswordWrite:
              $ref: '#/components/schemas/Meta'
            SNMPAuthProtocolRead:
              $ref: '#/components/schemas/Meta'
            SNMPAuthProtocolTrap:
              $ref: '#/components/schemas/Meta'
            SNMPAuthProtocolWrite:
              $ref: '#/components/schemas/Meta'
            SNMPCommunityRead:
              $ref: '#/components/schemas/Meta'
            SNMPCommunityTrap:
              $ref: '#/components/schemas/Meta'
            SNMPCommunityWrite:
              $ref: '#/components/schemas/Meta'
            SNMPEngineID:
              $ref: '#/components/schemas/Meta'
            SNMPPrivPasswordRead:
              $ref: '#/components/schemas/Meta'
            SNMPPrivPasswordTrap:
              $ref: '#/components/schemas/Meta'
            SNMPPrivPasswordWrite:
              $ref: '#/components/schemas/Meta'
            SNMPPrivProtocolRead:
              $ref: '#/components/schemas/Meta'
            SNMPPrivProtocolTrap:
              $ref: '#/components/schemas/Meta'
            SNMPPrivProtocolWrite:
              $ref: '#/components/schemas/Meta'
            SNMPUseConnector:
              $ref: '#/components/schemas/Meta'
            SNMPUserNameRead:
              $ref: '#/components/schemas/Meta'
            SNMPUserNameTrap:
              $ref: '#/components/schemas/Meta'
            SNMPUserNameWrite:
              $ref: '#/components/schemas/Meta'
            SNMPVersion:
              $ref: '#/components/schemas/Meta'
            SNMPVersionTrap:
              $ref: '#/components/schemas/Meta'
            UrlMap:
              $ref: '#/components/schemas/Meta'
            UrlMapping:
              $ref: '#/components/schemas/Meta'
            UseDownloadableACLs:
              $ref: '#/components/schemas/Meta'
            UsePushACLs:
              $ref: '#/components/schemas/Meta'
            VlanMap:
              $ref: '#/components/schemas/Meta'
            VlanMapping:
              $ref: '#/components/schemas/Meta'
            VoIPCDPDetect:
              $ref: '#/components/schemas/Meta'
            VoIPDHCPDetect:
              $ref: '#/components/schemas/Meta'
            VoIPEnabled:
              $ref: '#/components/schemas/Meta'
            VoIPLLDPDetect:
              $ref: '#/components/schemas/Meta'
            VpnMap:
              $ref: '#/components/schemas/Meta'
            VpnMapping:
              $ref: '#/components/schemas/Meta'
            always_trigger:
              $ref: '#/components/schemas/Meta'
            cliAccess:
              $ref: '#/components/schemas/Meta'
            cliEnablePwd:
              $ref: '#/components/schemas/Meta'
            cliPwd:
              $ref: '#/components/schemas/Meta'
            cliTransport:
              $ref: '#/components/schemas/Meta'
            cliUser:
              $ref: '#/components/schemas/Meta'
            coaPort:
              $ref: '#/components/schemas/Meta'
            controllerIp:
              $ref: '#/components/schemas/Meta'
            deauthMethod:
              $ref: '#/components/schemas/Meta'
            deauthOnPrevious:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            disconnectPort:
              $ref: '#/components/schemas/Meta'
            group:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            inlineTrigger:
              $ref: '#/components/schemas/Meta'
            macSearchesMaxNb:
              $ref: '#/components/schemas/Meta'
            macSearchesSleepInterval:
              $ref: '#/components/schemas/Meta'
            mac_trigger:
              $ref: '#/components/schemas/Meta'
            mode:
              $ref: '#/components/schemas/Meta'
            port_trigger:
              $ref: '#/components/schemas/Meta'
            radiusDeauthUseConnector:
              $ref: '#/components/schemas/Meta'
            radiusSecret:
              $ref: '#/components/schemas/Meta'
            ssid_trigger:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
            uplink:
              $ref: '#/components/schemas/Meta'
            uplink_dynamic:
              $ref: '#/components/schemas/Meta'
            useCoA:
              $ref: '#/components/schemas/Meta'
            wsPwd:
              $ref: '#/components/schemas/Meta'
            wsTransport:
              $ref: '#/components/schemas/Meta'
            wsUser:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSwitchWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigSwitch'
        status:
          type: integer
      type: object
    ConfigSwitchesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigSwitch'
            type: array
        type: object
    ConfigSyslogForwarder:
      discriminator:
        mapping:
          file: '#/components/schemas/ConfigSyslogForwarderMetaSubTypeFile'
          server: '#/components/schemas/ConfigSyslogForwarderMetaSubTypeServer'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigSyslogForwarderMetaSubTypeServer'
      - $ref: '#/components/schemas/ConfigSyslogForwarderMetaSubTypeFile'
    ConfigSyslogForwarderMetaSubTypeFile:
      properties:
        meta:
          properties:
            all_logs:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            logs:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSyslogForwarderMetaSubTypeServer:
      properties:
        meta:
          properties:
            all_logs:
              $ref: '#/components/schemas/Meta'
            host:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            logs:
              $ref: '#/components/schemas/Meta'
            port:
              $ref: '#/components/schemas/Meta'
            proto:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSyslogForwarderSubTypeFile:
      properties:
        all_logs:
          description: All logs
          type: string
        id:
          description: Syslog Name
          type: string
        logs:
          description: Logs
          items:
            description: Logs
            type: string
          type: array
        type:
          default: file
          description: Discriminator `file`
          type: string
      required:
      - id
      - type
      type: object
    ConfigSyslogForwarderSubTypeServer:
      properties:
        all_logs:
          description: All logs
          type: string
        host:
          description: Host
          type: string
        id:
          description: Syslog Name
          type: string
        logs:
          description: Logs
          items:
            description: Logs
            type: string
          type: array
        port:
          description: Port
          type: integer
        proto:
          description: Proto
          type: string
        type:
          default: server
          description: Discriminator `server`
          type: string
      required:
      - id
      - type
      - proto
      - host
      - port
      type: object
    ConfigSyslogForwarderWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigSyslogForwarder'
        status:
          type: integer
      type: object
    ConfigSyslogForwardersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigSyslogForwarder'
            type: array
        type: object
    ConfigSyslogParser:
      discriminator:
        mapping:
          dhcp: '#/components/schemas/ConfigSyslogParserMetaSubTypeDhcp'
          fortianalyser: '#/components/schemas/ConfigSyslogParserMetaSubTypeFortianalyser'
          nexpose: '#/components/schemas/ConfigSyslogParserMetaSubTypeNexpose'
          regex: '#/components/schemas/ConfigSyslogParserMetaSubTypeRegex'
          security_onion: '#/components/schemas/ConfigSyslogParserMetaSubTypeSecurityOnion'
          snort: '#/components/schemas/ConfigSyslogParserMetaSubTypeSnort'
          suricata: '#/components/schemas/ConfigSyslogParserMetaSubTypeSuricata'
          suricata_md5: '#/components/schemas/ConfigSyslogParserMetaSubTypeSuricataMd5'
        propertyName: type
      oneOf:
      - $ref: '#/components/schemas/ConfigSyslogParserMetaSubTypeSnort'
      - $ref: '#/components/schemas/ConfigSyslogParserMetaSubTypeSecurityOnion'
      - $ref: '#/components/schemas/ConfigSyslogParserMetaSubTypeRegex'
      - $ref: '#/components/schemas/ConfigSyslogParserMetaSubTypeNexpose'
      - $ref: '#/components/schemas/ConfigSyslogParserMetaSubTypeSuricata'
      - $ref: '#/components/schemas/ConfigSyslogParserMetaSubTypeFortianalyser'
      - $ref: '#/components/schemas/ConfigSyslogParserMetaSubTypeDhcp'
      - $ref: '#/components/schemas/ConfigSyslogParserMetaSubTypeSuricataMd5'
    ConfigSyslogParserDryRun:
      properties:
        line:
          description: Line
          type: string
        matches:
          description: The array of matches
          items:
            $ref: '#/components/schemas/ConfigSyslogParserDryRunMatch'
          type: array
      type: object
    ConfigSyslogParserDryRunAction:
      description: Action
      properties:
        api_method:
          description: Api method
          type: string
        api_parameters:
          description: Api parameters
          type: string
      type: object
    ConfigSyslogParserDryRunList:
      properties:
        items:
          items:
            $ref: '#/components/schemas/ConfigSyslogParserDryRun'
          type: array
      type: object
    ConfigSyslogParserDryRunMatch:
      properties:
        actions:
          items:
            $ref: '#/components/schemas/ConfigSyslogParserDryRunAction'
          type: array
        rule:
          $ref: '#/components/schemas/ConfigSyslogParserDryRunRule'
        success:
          type: integer
      type: object
    ConfigSyslogParserDryRunRule:
      description: Rule
      properties:
        actions:
          description: Actions
          items:
            description: Action
            properties:
              api_method:
                description: Api method
                type: string
              api_parameters:
                description: Api parameters
                type: string
            type: object
          type: array
        ip_mac_translation:
          description: Perform automatic translation of IPs to MACs and the other
            way around
          type: string
        last_if_match:
          description: Stop processing rules if this rule matches
          type: string
        name:
          description: Name
          type: string
        regex:
          description: Regex
          type: string
      type: object
    ConfigSyslogParserMetaSubTypeDhcp:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSyslogParserMetaSubTypeFortianalyser:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSyslogParserMetaSubTypeNexpose:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSyslogParserMetaSubTypeRegex:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rules:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSyslogParserMetaSubTypeSecurityOnion:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSyslogParserMetaSubTypeSnort:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSyslogParserMetaSubTypeSuricata:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSyslogParserMetaSubTypeSuricataMd5:
      properties:
        meta:
          properties:
            id:
              $ref: '#/components/schemas/Meta'
            path:
              $ref: '#/components/schemas/Meta'
            rate_limit:
              $ref: '#/components/schemas/Meta'
            status:
              $ref: '#/components/schemas/Meta'
            type:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigSyslogParserSubTypeDhcp:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: dhcp
          description: Discriminator `dhcp`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigSyslogParserSubTypeFortianalyser:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: fortianalyser
          description: Discriminator `fortianalyser`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigSyslogParserSubTypeNexpose:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: nexpose
          description: Discriminator `nexpose`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigSyslogParserSubTypeRegex:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rules:
          description: Rules
          items:
            description: Rule - New
            properties:
              actions:
                description: Actions
                items:
                  description: Action
                  properties:
                    api_method:
                      description: Api method
                      type: string
                    api_parameters:
                      description: Api parameters
                      type: string
                  type: object
                type: array
              ip_mac_translation:
                description: Perform automatic translation of IPs to MACs and the
                  other way around
                type: string
              last_if_match:
                description: Stop processing rules if this rule matches
                type: string
              name:
                description: Name
                type: string
              rate_limit:
                description: Rate limit requests.
                properties:
                  interval:
                    description: Interval
                    type: integer
                  unit:
                    description: Unit
                    type: string
                type: object
              regex:
                description: Regex
                type: string
            type: object
          type: array
        status:
          description: Enabled
          type: string
        type:
          default: regex
          description: Discriminator `regex`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigSyslogParserSubTypeSecurityOnion:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: security_onion
          description: Discriminator `security_onion`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigSyslogParserSubTypeSnort:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: snort
          description: Discriminator `snort`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigSyslogParserSubTypeSuricata:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: suricata
          description: Discriminator `suricata`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigSyslogParserSubTypeSuricataMd5:
      properties:
        id:
          description: Detector
          type: string
        path:
          description: Alert pipe
          type: string
        rate_limit:
          description: Rate limit requests.
          properties:
            interval:
              description: Interval
              type: integer
            unit:
              description: Unit
              type: string
          type: object
        status:
          description: Enabled
          type: string
        type:
          default: suricata_md5
          description: Discriminator `suricata_md5`
          type: string
      required:
      - id
      - path
      - type
      type: object
    ConfigSyslogParserWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigSyslogParser'
        status:
          type: integer
      type: object
    ConfigSyslogParsersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigSyslogParser'
            type: array
        type: object
    ConfigSystemDnsServers:
      properties:
        dns_servers:
          items:
            type: string
          type: array
      type: object
    ConfigSystemDnsServersResponse:
      properties:
        dns_servers:
          items:
            type: string
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    ConfigSystemGateway:
      properties:
        gateway:
          type: string
      type: object
    ConfigSystemGatewayResponse:
      properties:
        item:
          type: string
        status:
          $ref: '#/components/schemas/Status'
      type: object
    ConfigSystemHostname:
      properties:
        hostname:
          type: string
      type: object
    ConfigSystemHostnameResponse:
      properties:
        item:
          type: string
        status:
          $ref: '#/components/schemas/Status'
      type: object
    ConfigTemplateSwitch:
      properties:
        acceptRole:
          description: AcceptRole
          items:
            description: AcceptRole
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        acceptVlan:
          description: AcceptVlan
          items:
            description: AcceptVlan
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        acl_template:
          description: Acl template
          type: string
        bounce:
          description: Bounce
          items:
            description: Bounce
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        cliAuthorizeRead:
          description: CliAuthorizeRead
          items:
            description: CliAuthorizeRead
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        cliAuthorizeWrite:
          description: CliAuthorizeWrite
          items:
            description: CliAuthorizeWrite
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        coa:
          description: Coa
          items:
            description: Coa
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        description:
          description: Description
          type: string
        disconnect:
          description: Disconnect
          items:
            description: Disconnect
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        id:
          description: Id
          type: string
        nasPortToIfindex:
          description: NasPort To Ifindex template
          type: string
        radiusDisconnect:
          description: RADIUS Disconnect Method
          type: string
        reject:
          description: Reject
          items:
            description: Reject
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
        snmpDisconnect:
          description: SnmpDisconnect
          type: string
        voip:
          description: Voip
          items:
            description: Voip
            properties:
              type:
                description: Type
                type: string
              value:
                description: Value
                type: string
            type: object
          type: array
      required:
      - id
      - description
      type: object
    ConfigTemplateSwitchMeta:
      properties:
        meta:
          properties:
            acceptRole:
              $ref: '#/components/schemas/Meta'
            acceptVlan:
              $ref: '#/components/schemas/Meta'
            acl_template:
              $ref: '#/components/schemas/Meta'
            bounce:
              $ref: '#/components/schemas/Meta'
            cliAuthorizeRead:
              $ref: '#/components/schemas/Meta'
            cliAuthorizeWrite:
              $ref: '#/components/schemas/Meta'
            coa:
              $ref: '#/components/schemas/Meta'
            description:
              $ref: '#/components/schemas/Meta'
            disconnect:
              $ref: '#/components/schemas/Meta'
            id:
              $ref: '#/components/schemas/Meta'
            nasPortToIfindex:
              $ref: '#/components/schemas/Meta'
            radiusDisconnect:
              $ref: '#/components/schemas/Meta'
            reject:
              $ref: '#/components/schemas/Meta'
            snmpDisconnect:
              $ref: '#/components/schemas/Meta'
            voip:
              $ref: '#/components/schemas/Meta'
          type: object
      type: object
    ConfigTemplateSwitchWrapped:
      properties:
        item:
          $ref: '#/components/schemas/ConfigTemplateSwitch'
        status:
          type: integer
      type: object
    ConfigTemplateSwitchesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/ConfigTemplateSwitch'
            type: array
        type: object
    ConfigWMIRule:
      properties:
        action:
          description: Add an action based on the result of the request
          type: string
        id:
          description: Name
          type: string
        namespace:
          description: Namespace
          type: string
        on_tab:
          description: Scan this WMI element while editing a node
          type: string
        request:
          description: Request
          type: string
      required:
      - id
      - request
      - namespace
      - action
      type: object
    ConfigWMIRulesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: List
            items:
              $ref: '#/components/schemas/ConfigWMIRule'
            type: array
        type: object
      description: List
    ConfigWrapped:
      properties:
        item:
          $ref: '#/components/schemas/Config'
        status:
          type: integer
      type: object
    CountResponse:
      properties:
        count:
          description: The number of modified resources.
          type: string
        status:
          $ref: '#/components/schemas/Status'
      type: object
    CurrentUserAllowedAccessDuration:
      properties:
        access_duration:
          type: string
      type: object
    CurrentUserAllowedAccessDurationsList:
      properties:
        items:
          items:
            $ref: '#/components/schemas/CurrentUserAllowedAccessDuration'
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    CurrentUserAllowedAccessLevel:
      properties:
        access_level:
          type: string
      type: object
    CurrentUserAllowedAccessLevelsList:
      properties:
        items:
          items:
            $ref: '#/components/schemas/CurrentUserAllowedAccessLevel'
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    CurrentUserAllowedAction:
      properties:
        action:
          type: string
      type: object
    CurrentUserAllowedActionsList:
      properties:
        items:
          items:
            $ref: '#/components/schemas/CurrentUserAllowedAction'
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    CurrentUserAllowedNodeRolesList:
      properties:
        items:
          items:
            $ref: '#/components/schemas/CurrentUserAllowedRole'
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    CurrentUserAllowedRole:
      properties:
        acls:
          type: string
        category_id:
          type: integer
        fingerbank_dynamic_access_list:
          enum:
          - disabled
          - enabled
          type: string
        include_parent_acls:
          enum:
          - disabled
          - enabled
          type: string
        inherit_role:
          nullable: true
          type: string
        inherit_vlan:
          nullable: true
          type: string
        inherit_web_auth_url:
          nullable: true
          type: string
        max_nodes_per_pid:
          type: integer
        name:
          type: string
        notes:
          nullable: true
          type: string
      type: object
    CurrentUserAllowedUnregDateList:
      properties:
        items:
          type: string
      type: object
    CurrentUserAllowedUserRolesList:
      properties:
        items:
          items:
            $ref: '#/components/schemas/CurrentUserAllowedRole'
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    DhcpInterfaceStats:
      description: The schema used for a collection of interface initialization and
        statistics
      items:
        description: Statistics of the DHCP scope
        properties:
          category:
            description: Associated role of the DHCP scope
            type: string
          free:
            description: Available number of IPv4 addresses in the DHCP scope
            type: integer
          interface:
            description: Network interface name where the DHCP scope is provided
            type: string
          members:
            description: A collection of MAC address and IPv4 address pairs
            items:
              description: A MAC address and IPv4 address pair
              properties:
                ip:
                  description: The MAC address of the DHCP member
                  type: string
                mac:
                  description: The IPv4 address of the DHCP member
                  type: string
              type: object
            type: array
          network:
            description: Network address
            type: string
          options:
            description: Dhcp options of the DHCP scope
            properties:
              optionDomainName:
                description: Domain name
                type: string
              optionDomainNameServer:
                description: DNS IPv4 addresses
                type: string
              optionIPAddressLeaseTime:
                description: Lease time
                type: string
              optionRouter:
                description: Gateway IPv4 addresses
                type: string
              optionSubnetMask:
                description: Netmask
                type: string
            type: object
          status:
            description: Status of the DHCP scope
            enum:
            - Normal
            - Calculated available IP X is different than what we have available in
              the pool Y
            - Init Lease success
            type: string
        type: object
      type: array
    DhcpMacIp:
      description: The schema used when returning a DHCP MAC address and IPv4 address
        pair
      properties:
        ip:
          description: The IPv4 address
          type: string
        mac:
          description: The MAC address
          type: string
      type: object
    DhcpMacResponse:
      description: The schema used when options are added or deleted from a MAC address
      properties:
        mac:
          description: The MAC address
          type: string
        status:
          description: Whether the request succeeded "ACK", or failed "NAK"
          enum:
          - ACK
          - NAK
          type: string
      type: object
    DhcpNetworkResponse:
      description: The schema used when options are added or deleted from a Network
      properties:
        network:
          description: The networks IPv4 address
          type: string
        status:
          description: Whether the request succeeded "ACK", or failed "NAK"
          enum:
          - ACK
          - NAK
          type: string
      type: object
    DhcpOption82:
      properties:
        circuit_id_string:
          nullable: true
          type: string
        created_at:
          type: string
        host:
          nullable: true
          type: string
        mac:
          description: '`PRIMARY KEY`'
          type: string
        module:
          nullable: true
          type: string
        option82_switch:
          nullable: true
          type: string
        port:
          type: string
        switch_id:
          nullable: true
          type: string
        vlan:
          nullable: true
          type: string
      type: object
    DhcpOption82sList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/DhcpOption82'
            type: array
        type: object
    DnsAuditLog:
      properties:
        answer:
          nullable: true
          type: string
        created_at:
          type: string
        id:
          description: '`PRIMARY KEY`'
          type: integer
        ip:
          type: string
        mac:
          type: string
        qname:
          nullable: true
          type: string
        qtype:
          nullable: true
          type: string
        scope:
          nullable: true
          type: string
      type: object
    DnsAuditLogsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/DnsAuditLog'
            type: array
        type: object
    DynamicReportMeta:
      description: Report Meta
      properties:
        report_meta:
          description: Meta for each item
          properties:
            charts:
              description: Array of charts
              type: array
            columns:
              description: Array of columns
              items:
                description: Column meta
                properties:
                  is_cursor:
                    description: Column is used in cursor, can be used as PK
                    type: boolean
                  is_node:
                    description: Column is a node, can be used as PK
                    type: boolean
                  is_person:
                    description: Column is a person, can be used as PK
                    type: boolean
                  is_role:
                    description: Column is a role, can be used as PK
                    type: boolean
                  name:
                    description: Name of the column
                    type: string
                  text:
                    description: Text of the column
                    type: string
                type: object
              type: array
            date_limit:
              description: Enforce maximum date range to prevent database full table
                scans
              type: string
            default_end_date:
              description: Default end datetime if no end_date is defined
              example: 1970-01-01 00:00:00
              format: date-time
              type: string
            default_limit:
              description: Default query limit
              type: string
            default_start_data:
              description: Default start datetime if no end_date is defined
              example: 1970-01-01 00:00:00
              format: date-time
              type: string
            description:
              description: Descriptive text
              type: string
            has_cursor:
              description: Pagination is available
              type: boolean
            has_date_range:
              description: Date range is available
              type: boolean
            has_limit:
              description: Query limits enforced
              type: boolean
            id:
              description: Unique identifier
              type: string
            query_fields:
              description: Fields available for query
              items:
                description: Field available for query
                type: string
              type: array
          type: object
      type: object
    DynamicReportSearchRequest:
      additionalProperties: true
      properties:
        cursor:
          oneOf:
          - type: string
          - items:
              type: string
            type: array
        end_date:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        limit:
          type: integer
        query:
          $ref: '#/components/schemas/Query'
        start_date:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
      type: object
    EmailMailer:
      properties:
        status:
          $ref: '#/components/schemas/Status'
      type: object
    EmailPreview:
      properties:
        body:
          description: HTML email body.
          type: string
        status:
          $ref: '#/components/schemas/Status'
      type: object
    EmailSend:
      type: object
    ErrorsWithMessage:
      properties:
        errors:
          description: Array of errors.
          items:
            description: An individual error.
            properties:
              field:
                description: The error field.
                type: string
              message:
                description: The error message.
                type: string
            type: object
          type: array
        message:
          description: A descriptive message for the user.
          type: string
        status:
          $ref: '#/components/schemas/Status'
      type: object
    FingerbankAccountInfo:
      properties:
        auth_type:
          type: string
        blocked:
          nullable: true
          type: boolean
        created_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        display_name:
          type: string
        email:
          type: string
        expiration:
          example: 1970-01-01 00:00:00
          format: date-time
          nullable: true
          type: string
        expiration_rfc3339:
          example: 1970-01-01 00:00:00
          format: date-time
          nullable: true
          type: string
        id:
          type: integer
        key:
          type: string
        level:
          type: integer
        max_api_keys:
          nullable: true
          type: integer
        montly_limit:
          type: integer
        montly_requests:
          type: integer
        name:
          type: string
        record_monthly_usage:
          type: boolean
        requests:
          type: integer
        roles:
          type: string
        search_count:
          type: integer
        status:
          $ref: '#/components/schemas/Status'
        timeframed_requests:
          type: integer
        timeframed_search_count:
          type: integer
        updated_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
      type: object
    FingerbankCombination:
      properties:
        device_id:
          type: string
        dhcp6_enterprise_id:
          nullable: true
          type: string
        dhcp6_fingerprint_id:
          nullable: true
          type: string
        dhcp_fingerprint_id:
          nullable: true
          type: string
        dhcp_vendor_id:
          nullable: true
          type: string
        mac_vendor_id:
          nullable: true
          type: string
        score:
          type: string
        user_agent_id:
          nullable: true
          type: string
        version:
          type: string
      type: object
    FingerbankCombinationDecorated:
      properties:
        created_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        device_id:
          type: string
        dhcp6_enterprise_id:
          nullable: true
          type: string
        dhcp6_fingerprint_id:
          nullable: true
          type: string
        dhcp_fingerprint_id:
          nullable: true
          type: string
        dhcp_vendor_id:
          nullable: true
          type: string
        id:
          type: string
        mac_vendor_id:
          nullable: true
          type: string
        score:
          type: string
        submitter_id:
          nullable: true
          type: string
        updated_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        user_agent_id:
          nullable: true
          type: string
        version:
          type: string
      type: object
    FingerbankCombinationForm:
      allOf:
      - $ref: '#/components/schemas/FingerbankCombination'
      - required:
        - device_id
    FingerbankCombinationItem:
      properties:
        item:
          $ref: '#/components/schemas/FingerbankCombinationDecorated'
        scope:
          $ref: '#/components/schemas/FingerbankScope'
        status:
          $ref: '#/components/schemas/Status'
      type: object
    FingerbankCombinations:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/FingerbankCombinationDecorated'
            type: array
          scope:
            $ref: '#/components/schemas/FingerbankScope'
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankCombinationsField:
      enum:
      - id
      - created_at
      - submitter_id
      - updated_at
      - device_id
      - dhcp6_enterprise_id
      - dhcp6_fingerprint_id
      - dhcp_fingerprint_id
      - dhcp_vendor_id
      - mac_vendor_id
      - score
      - user_agent_id
      - version
      example: id
      type: string
    FingerbankCombinationsFields:
      example:
      - id
      - created_at
      - submitter_id
      - updated_at
      - device_id
      - dhcp6_enterprise_id
      - dhcp6_fingerprint_id
      - dhcp_fingerprint_id
      - dhcp_vendor_id
      - mac_vendor_id
      - score
      - user_agent_id
      - version
      items:
        $ref: '#/components/schemas/FingerbankCombinationsField'
      type: array
    FingerbankCombinationsQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/FingerbankCombinationsQueryNested'
          between: '#/components/schemas/FingerbankCombinationsQueryField'
          contains: '#/components/schemas/FingerbankCombinationsQueryField'
          is: '#/components/schemas/FingerbankCombinationsQueryField'
          is_not: '#/components/schemas/FingerbankCombinationsQueryField'
          match: '#/components/schemas/FingerbankCombinationsQueryField'
          not_between: '#/components/schemas/FingerbankCombinationsQueryField'
          not_contains: '#/components/schemas/FingerbankCombinationsQueryField'
          not_match: '#/components/schemas/FingerbankCombinationsQueryField'
          or: '#/components/schemas/FingerbankCombinationsQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/FingerbankCombinationsQueryNested'
      - $ref: '#/components/schemas/FingerbankCombinationsQueryField'
      type: object
    FingerbankCombinationsQueryField:
      properties:
        field:
          $ref: '#/components/schemas/FingerbankCombinationsField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    FingerbankCombinationsQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/FingerbankCombinationsQuery'
          type: array
      type: object
    FingerbankCombinationsSearch:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            description: Combinations.
            items:
              $ref: '#/components/schemas/FingerbankCombination'
            type: array
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankCombinationsSort:
      items:
        enum:
        - id ASC
        - id DESC
        - created_at ASC
        - created_at DESC
        - submitter_id ASC
        - submitter_id DESC
        - updated_at ASC
        - updated_at DESC
        - device_id ASC
        - device_id DESC
        - dhcp6_enterprise_id ASC
        - dhcp6_enterprise_id DESC
        - dhcp6_fingerprint_id ASC
        - dhcp6_fingerprint_id DESC
        - dhcp_fingerprint_id ASC
        - dhcp_fingerprint_id DESC
        - dhcp_vendor_id ASC
        - dhcp_vendor_id DESC
        - mac_vendor_id ASC
        - mac_vendor_id DESC
        - score ASC
        - score DESC
        - user_agent_id ASC
        - user_agent_id DESC
        - version ASC
        - version DESC
        example: id ASC
        type: string
      type: array
    FingerbankDevice:
      properties:
        name:
          type: string
        parent_id:
          type: string
      type: object
    FingerbankDeviceClass:
      properties:
        approved:
          type: integer
        created_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        id:
          type: integer
        inherit:
          type: integer
        mobile:
          type: integer
        name:
          type: string
        parent_id:
          type: integer
        submitter_id:
          type: integer
        tablet:
          type: integer
        updated_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
      type: object
    FingerbankDeviceClasses:
      properties:
        items:
          items:
            $ref: '#/components/schemas/FingerbankDeviceClass'
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    FingerbankDeviceDecorated:
      properties:
        created_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        id:
          type: string
        inherit:
          nullable: true
          type: string
        mobile:
          nullable: true
          type: string
        name:
          type: string
        parent_id:
          type: string
        submitter_id:
          nullable: true
          type: string
        tablet:
          nullable: true
          type: string
        updated_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
      type: object
    FingerbankDeviceForm:
      allOf:
      - $ref: '#/components/schemas/FingerbankDevice'
      - required:
        - name
    FingerbankDeviceItem:
      properties:
        item:
          $ref: '#/components/schemas/FingerbankDeviceDecorated'
        scope:
          $ref: '#/components/schemas/FingerbankScope'
        status:
          $ref: '#/components/schemas/Status'
      type: object
    FingerbankDevices:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/FingerbankDeviceDecorated'
            type: array
          scope:
            $ref: '#/components/schemas/FingerbankScope'
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankDevicesField:
      enum:
      - id
      - name
      - parent_id
      - created_at
      - inherit
      - mobile
      - submitter_id
      - tablet
      - updated_at
      - parent_id
      example: id
      type: string
    FingerbankDevicesFields:
      example:
      - id
      - name
      - parent_id
      - created_at
      - inherit
      - mobile
      - submitter_id
      - tablet
      - updated_at
      - parent_id
      items:
        $ref: '#/components/schemas/FingerbankDevicesField'
      type: array
    FingerbankDevicesQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/FingerbankDevicesQueryNested'
          between: '#/components/schemas/FingerbankDevicesQueryField'
          contains: '#/components/schemas/FingerbankDevicesQueryField'
          is: '#/components/schemas/FingerbankDevicesQueryField'
          is_not: '#/components/schemas/FingerbankDevicesQueryField'
          match: '#/components/schemas/FingerbankDevicesQueryField'
          not_between: '#/components/schemas/FingerbankDevicesQueryField'
          not_contains: '#/components/schemas/FingerbankDevicesQueryField'
          not_match: '#/components/schemas/FingerbankDevicesQueryField'
          or: '#/components/schemas/FingerbankDevicesQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: name
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/FingerbankDevicesQueryNested'
      - $ref: '#/components/schemas/FingerbankDevicesQueryField'
      type: object
    FingerbankDevicesQueryField:
      properties:
        field:
          $ref: '#/components/schemas/FingerbankDevicesField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    FingerbankDevicesQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/FingerbankDevicesQuery'
          type: array
      type: object
    FingerbankDevicesSearch:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            description: Devices.
            items:
              $ref: '#/components/schemas/FingerbankDevice'
            type: array
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankDevicesSort:
      items:
        enum:
        - id ASC
        - id DESC
        - name ASC
        - name DESC
        - parent_id ASC
        - parent_id DESC
        - created_at ASC
        - created_at DESC
        - inherit ASC
        - inherit DESC
        - mobile ASC
        - mobile DESC
        - submitter_id ASC
        - submitter_id DESC
        - tablet ASC
        - tablet DESC
        - updated_at ASC
        - updated_at DESC
        - parent_id ASC
        - parent_id DESC
        example: id ASC
        type: string
      type: array
    FingerbankDhcp6Enterprise:
      properties:
        value:
          type: string
      type: object
    FingerbankDhcp6EnterpriseDecorated:
      properties:
        created_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        id:
          type: string
        updated_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        value:
          type: string
      type: object
    FingerbankDhcp6EnterpriseForm:
      allOf:
      - $ref: '#/components/schemas/FingerbankDhcp6Enterprise'
      - required:
        - device_id
    FingerbankDhcp6EnterpriseItem:
      properties:
        item:
          $ref: '#/components/schemas/FingerbankDhcp6EnterpriseDecorated'
        scope:
          $ref: '#/components/schemas/FingerbankScope'
        status:
          $ref: '#/components/schemas/Status'
      type: object
    FingerbankDhcp6Enterprises:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/FingerbankDhcp6EnterpriseDecorated'
            type: array
          scope:
            $ref: '#/components/schemas/FingerbankScope'
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankDhcp6EnterprisesField:
      enum:
      - id
      - created_at
      - updated_at
      - value
      example: id
      type: string
    FingerbankDhcp6EnterprisesFields:
      example:
      - id
      - created_at
      - updated_at
      - value
      items:
        $ref: '#/components/schemas/FingerbankDhcp6EnterprisesField'
      type: array
    FingerbankDhcp6EnterprisesQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/FingerbankDhcp6EnterprisesQueryNested'
          between: '#/components/schemas/FingerbankDhcp6EnterprisesQueryField'
          contains: '#/components/schemas/FingerbankDhcp6EnterprisesQueryField'
          is: '#/components/schemas/FingerbankDhcp6EnterprisesQueryField'
          is_not: '#/components/schemas/FingerbankDhcp6EnterprisesQueryField'
          match: '#/components/schemas/FingerbankDhcp6EnterprisesQueryField'
          not_between: '#/components/schemas/FingerbankDhcp6EnterprisesQueryField'
          not_contains: '#/components/schemas/FingerbankDhcp6EnterprisesQueryField'
          not_match: '#/components/schemas/FingerbankDhcp6EnterprisesQueryField'
          or: '#/components/schemas/FingerbankDhcp6EnterprisesQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/FingerbankDhcp6EnterprisesQueryNested'
      - $ref: '#/components/schemas/FingerbankDhcp6EnterprisesQueryField'
      type: object
    FingerbankDhcp6EnterprisesQueryField:
      properties:
        field:
          $ref: '#/components/schemas/FingerbankDhcp6EnterprisesField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    FingerbankDhcp6EnterprisesQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/FingerbankDhcp6EnterprisesQuery'
          type: array
      type: object
    FingerbankDhcp6EnterprisesSearch:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            description: Dhcp6Enterprises.
            items:
              $ref: '#/components/schemas/FingerbankDhcp6Enterprise'
            type: array
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankDhcp6EnterprisesSort:
      items:
        enum:
        - id ASC
        - id DESC
        - created_at ASC
        - created_at DESC
        - updated_at ASC
        - updated_at DESC
        - value ASC
        - value DESC
        example: id ASC
        type: string
      type: array
    FingerbankDhcp6Fingerprint:
      properties:
        value:
          type: string
      type: object
    FingerbankDhcp6FingerprintDecorated:
      properties:
        created_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        id:
          type: string
        updated_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        value:
          type: string
      type: object
    FingerbankDhcp6FingerprintForm:
      allOf:
      - $ref: '#/components/schemas/FingerbankDhcp6Fingerprint'
      - required:
        - device_id
    FingerbankDhcp6FingerprintItem:
      properties:
        item:
          $ref: '#/components/schemas/FingerbankDhcp6FingerprintDecorated'
        scope:
          $ref: '#/components/schemas/FingerbankScope'
        status:
          $ref: '#/components/schemas/Status'
      type: object
    FingerbankDhcp6Fingerprints:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/FingerbankDhcp6FingerprintDecorated'
            type: array
          scope:
            $ref: '#/components/schemas/FingerbankScope'
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankDhcp6FingerprintsField:
      enum:
      - id
      - created_at
      - updated_at
      - value
      example: id
      type: string
    FingerbankDhcp6FingerprintsFields:
      example:
      - id
      - created_at
      - updated_at
      - value
      items:
        $ref: '#/components/schemas/FingerbankDhcp6FingerprintsField'
      type: array
    FingerbankDhcp6FingerprintsQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/FingerbankDhcp6FingerprintsQueryNested'
          between: '#/components/schemas/FingerbankDhcp6FingerprintsQueryField'
          contains: '#/components/schemas/FingerbankDhcp6FingerprintsQueryField'
          is: '#/components/schemas/FingerbankDhcp6FingerprintsQueryField'
          is_not: '#/components/schemas/FingerbankDhcp6FingerprintsQueryField'
          match: '#/components/schemas/FingerbankDhcp6FingerprintsQueryField'
          not_between: '#/components/schemas/FingerbankDhcp6FingerprintsQueryField'
          not_contains: '#/components/schemas/FingerbankDhcp6FingerprintsQueryField'
          not_match: '#/components/schemas/FingerbankDhcp6FingerprintsQueryField'
          or: '#/components/schemas/FingerbankDhcp6FingerprintsQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/FingerbankDhcp6FingerprintsQueryNested'
      - $ref: '#/components/schemas/FingerbankDhcp6FingerprintsQueryField'
      type: object
    FingerbankDhcp6FingerprintsQueryField:
      properties:
        field:
          $ref: '#/components/schemas/FingerbankDhcp6FingerprintsField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    FingerbankDhcp6FingerprintsQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/FingerbankDhcp6FingerprintsQuery'
          type: array
      type: object
    FingerbankDhcp6FingerprintsSearch:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            description: Dhcp6Fingerprints.
            items:
              $ref: '#/components/schemas/FingerbankDhcp6Fingerprint'
            type: array
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankDhcp6FingerprintsSort:
      items:
        enum:
        - id ASC
        - id DESC
        - created_at ASC
        - created_at DESC
        - updated_at ASC
        - updated_at DESC
        - value ASC
        - value DESC
        example: id ASC
        type: string
      type: array
    FingerbankDhcpFingerprint:
      properties:
        value:
          type: string
      type: object
    FingerbankDhcpFingerprintDecorated:
      properties:
        created_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        id:
          type: string
        updated_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        value:
          type: string
      type: object
    FingerbankDhcpFingerprintForm:
      allOf:
      - $ref: '#/components/schemas/FingerbankDhcpFingerprint'
      - required:
        - device_id
    FingerbankDhcpFingerprintItem:
      properties:
        item:
          $ref: '#/components/schemas/FingerbankDhcpFingerprintDecorated'
        scope:
          $ref: '#/components/schemas/FingerbankScope'
        status:
          $ref: '#/components/schemas/Status'
      type: object
    FingerbankDhcpFingerprints:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/FingerbankDhcpFingerprintDecorated'
            type: array
          scope:
            $ref: '#/components/schemas/FingerbankScope'
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankDhcpFingerprintsField:
      enum:
      - id
      - created_at
      - updated_at
      - value
      example: id
      type: string
    FingerbankDhcpFingerprintsFields:
      example:
      - id
      - created_at
      - updated_at
      - value
      items:
        $ref: '#/components/schemas/FingerbankDhcpFingerprintsField'
      type: array
    FingerbankDhcpFingerprintsQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/FingerbankDhcpFingerprintsQueryNested'
          between: '#/components/schemas/FingerbankDhcpFingerprintsQueryField'
          contains: '#/components/schemas/FingerbankDhcpFingerprintsQueryField'
          is: '#/components/schemas/FingerbankDhcpFingerprintsQueryField'
          is_not: '#/components/schemas/FingerbankDhcpFingerprintsQueryField'
          match: '#/components/schemas/FingerbankDhcpFingerprintsQueryField'
          not_between: '#/components/schemas/FingerbankDhcpFingerprintsQueryField'
          not_contains: '#/components/schemas/FingerbankDhcpFingerprintsQueryField'
          not_match: '#/components/schemas/FingerbankDhcpFingerprintsQueryField'
          or: '#/components/schemas/FingerbankDhcpFingerprintsQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/FingerbankDhcpFingerprintsQueryNested'
      - $ref: '#/components/schemas/FingerbankDhcpFingerprintsQueryField'
      type: object
    FingerbankDhcpFingerprintsQueryField:
      properties:
        field:
          $ref: '#/components/schemas/FingerbankDhcpFingerprintsField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    FingerbankDhcpFingerprintsQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/FingerbankDhcpFingerprintsQuery'
          type: array
      type: object
    FingerbankDhcpFingerprintsSearch:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            description: DhcpFingerprints.
            items:
              $ref: '#/components/schemas/FingerbankDhcpFingerprint'
            type: array
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankDhcpFingerprintsSort:
      items:
        enum:
        - id ASC
        - id DESC
        - created_at ASC
        - created_at DESC
        - updated_at ASC
        - updated_at DESC
        - value ASC
        - value DESC
        example: id ASC
        type: string
      type: array
    FingerbankDhcpVendor:
      properties:
        value:
          type: string
      type: object
    FingerbankDhcpVendorDecorated:
      properties:
        created_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        id:
          type: string
        updated_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        value:
          type: string
      type: object
    FingerbankDhcpVendorForm:
      allOf:
      - $ref: '#/components/schemas/FingerbankDhcpVendor'
      - required:
        - device_id
    FingerbankDhcpVendorItem:
      properties:
        item:
          $ref: '#/components/schemas/FingerbankDhcpVendorDecorated'
        scope:
          $ref: '#/components/schemas/FingerbankScope'
        status:
          $ref: '#/components/schemas/Status'
      type: object
    FingerbankDhcpVendors:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/FingerbankDhcpVendorDecorated'
            type: array
          scope:
            $ref: '#/components/schemas/FingerbankScope'
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankDhcpVendorsField:
      enum:
      - id
      - created_at
      - updated_at
      - value
      example: id
      type: string
    FingerbankDhcpVendorsFields:
      example:
      - id
      - created_at
      - updated_at
      - value
      items:
        $ref: '#/components/schemas/FingerbankDhcpVendorsField'
      type: array
    FingerbankDhcpVendorsQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/FingerbankDhcpVendorsQueryNested'
          between: '#/components/schemas/FingerbankDhcpVendorsQueryField'
          contains: '#/components/schemas/FingerbankDhcpVendorsQueryField'
          is: '#/components/schemas/FingerbankDhcpVendorsQueryField'
          is_not: '#/components/schemas/FingerbankDhcpVendorsQueryField'
          match: '#/components/schemas/FingerbankDhcpVendorsQueryField'
          not_between: '#/components/schemas/FingerbankDhcpVendorsQueryField'
          not_contains: '#/components/schemas/FingerbankDhcpVendorsQueryField'
          not_match: '#/components/schemas/FingerbankDhcpVendorsQueryField'
          or: '#/components/schemas/FingerbankDhcpVendorsQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/FingerbankDhcpVendorsQueryNested'
      - $ref: '#/components/schemas/FingerbankDhcpVendorsQueryField'
      type: object
    FingerbankDhcpVendorsQueryField:
      properties:
        field:
          $ref: '#/components/schemas/FingerbankDhcpVendorsField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    FingerbankDhcpVendorsQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/FingerbankDhcpVendorsQuery'
          type: array
      type: object
    FingerbankDhcpVendorsSearch:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            description: DhcpVendors.
            items:
              $ref: '#/components/schemas/FingerbankDhcpVendor'
            type: array
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankDhcpVendorsSort:
      items:
        enum:
        - id ASC
        - id DESC
        - created_at ASC
        - created_at DESC
        - updated_at ASC
        - updated_at DESC
        - value ASC
        - value DESC
        example: id ASC
        type: string
      type: array
    FingerbankIterable:
      properties:
        nextCursor:
          description: The cursor to access paginated data for the next page.
          type: integer
        prevCursor:
          description: The cursor to access paginated data for the previous page.
          type: integer
      type: object
    FingerbankMacVendor:
      properties:
        mac:
          type: string
        name:
          type: string
      type: object
    FingerbankMacVendorDecorated:
      properties:
        created_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        id:
          type: string
        mac:
          type: string
        name:
          type: string
        updated_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
      type: object
    FingerbankMacVendorForm:
      allOf:
      - $ref: '#/components/schemas/FingerbankMacVendor'
      - required:
        - device_id
    FingerbankMacVendorItem:
      properties:
        item:
          $ref: '#/components/schemas/FingerbankMacVendorDecorated'
        scope:
          $ref: '#/components/schemas/FingerbankScope'
        status:
          $ref: '#/components/schemas/Status'
      type: object
    FingerbankMacVendors:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/FingerbankMacVendorDecorated'
            type: array
          scope:
            $ref: '#/components/schemas/FingerbankScope'
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankMacVendorsField:
      enum:
      - id
      - created_at
      - updated_at
      - mac
      - name
      example: id
      type: string
    FingerbankMacVendorsFields:
      example:
      - id
      - created_at
      - updated_at
      - mac
      - name
      items:
        $ref: '#/components/schemas/FingerbankMacVendorsField'
      type: array
    FingerbankMacVendorsQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/FingerbankMacVendorsQueryNested'
          between: '#/components/schemas/FingerbankMacVendorsQueryField'
          contains: '#/components/schemas/FingerbankMacVendorsQueryField'
          is: '#/components/schemas/FingerbankMacVendorsQueryField'
          is_not: '#/components/schemas/FingerbankMacVendorsQueryField'
          match: '#/components/schemas/FingerbankMacVendorsQueryField'
          not_between: '#/components/schemas/FingerbankMacVendorsQueryField'
          not_contains: '#/components/schemas/FingerbankMacVendorsQueryField'
          not_match: '#/components/schemas/FingerbankMacVendorsQueryField'
          or: '#/components/schemas/FingerbankMacVendorsQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/FingerbankMacVendorsQueryNested'
      - $ref: '#/components/schemas/FingerbankMacVendorsQueryField'
      type: object
    FingerbankMacVendorsQueryField:
      properties:
        field:
          $ref: '#/components/schemas/FingerbankMacVendorsField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    FingerbankMacVendorsQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/FingerbankMacVendorsQuery'
          type: array
      type: object
    FingerbankMacVendorsSearch:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            description: MacVendors.
            items:
              $ref: '#/components/schemas/FingerbankMacVendor'
            type: array
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankMacVendorsSort:
      items:
        enum:
        - id ASC
        - id DESC
        - created_at ASC
        - created_at DESC
        - updated_at ASC
        - updated_at DESC
        - mac ASC
        - mac DESC
        - name ASC
        - name DESC
        example: id ASC
        type: string
      type: array
    FingerbankNba:
      properties:
        result:
          nullable: true
          type: boolean
        status:
          $ref: '#/components/schemas/Status'
      type: object
    FingerbankPaginatedCursor:
      description: The cursor pointer to fetch paginated results (from `prevCursor`
        and `nextCursor`).
      type: integer
    FingerbankPaginatedLimit:
      default: 1
      description: The maximum amount of entries to get. Use `cursor` for pagination.
      enum:
      - 1
      - 5
      - 10
      - 25
      - 50
      - 100
      - 250
      - 500
      - 1000
      type: integer
    FingerbankScope:
      default: local
      enum:
      - all
      - local
      - upstream
      type: string
    FingerbankScopeLocalOnly:
      default: local
      enum:
      - local
      type: string
    FingerbankUserAgent:
      properties:
        value:
          type: string
      type: object
    FingerbankUserAgentDecorated:
      properties:
        created_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        id:
          type: string
        updated_at:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        value:
          type: string
      type: object
    FingerbankUserAgentForm:
      allOf:
      - $ref: '#/components/schemas/FingerbankUserAgent'
      - required:
        - device_id
    FingerbankUserAgentItem:
      properties:
        item:
          $ref: '#/components/schemas/FingerbankUserAgentDecorated'
        scope:
          $ref: '#/components/schemas/FingerbankScope'
        status:
          $ref: '#/components/schemas/Status'
      type: object
    FingerbankUserAgents:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/FingerbankUserAgentDecorated'
            type: array
          scope:
            $ref: '#/components/schemas/FingerbankScope'
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankUserAgentsField:
      enum:
      - id
      - created_at
      - updated_at
      - value
      example: id
      type: string
    FingerbankUserAgentsFields:
      example:
      - id
      - created_at
      - updated_at
      - value
      items:
        $ref: '#/components/schemas/FingerbankUserAgentsField'
      type: array
    FingerbankUserAgentsQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/FingerbankUserAgentsQueryNested'
          between: '#/components/schemas/FingerbankUserAgentsQueryField'
          contains: '#/components/schemas/FingerbankUserAgentsQueryField'
          is: '#/components/schemas/FingerbankUserAgentsQueryField'
          is_not: '#/components/schemas/FingerbankUserAgentsQueryField'
          match: '#/components/schemas/FingerbankUserAgentsQueryField'
          not_between: '#/components/schemas/FingerbankUserAgentsQueryField'
          not_contains: '#/components/schemas/FingerbankUserAgentsQueryField'
          not_match: '#/components/schemas/FingerbankUserAgentsQueryField'
          or: '#/components/schemas/FingerbankUserAgentsQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/FingerbankUserAgentsQueryNested'
      - $ref: '#/components/schemas/FingerbankUserAgentsQueryField'
      type: object
    FingerbankUserAgentsQueryField:
      properties:
        field:
          $ref: '#/components/schemas/FingerbankUserAgentsField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    FingerbankUserAgentsQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/FingerbankUserAgentsQuery'
          type: array
      type: object
    FingerbankUserAgentsSearch:
      allOf:
      - $ref: '#/components/schemas/FingerbankIterable'
      - $ref: '#/components/schemas/Flags'
      - properties:
          items:
            description: UserAgents.
            items:
              $ref: '#/components/schemas/FingerbankUserAgent'
            type: array
          status:
            $ref: '#/components/schemas/Status'
        type: object
    FingerbankUserAgentsSort:
      items:
        enum:
        - id ASC
        - id DESC
        - created_at ASC
        - created_at DESC
        - updated_at ASC
        - updated_at DESC
        - value ASC
        - value DESC
        example: id ASC
        type: string
      type: array
    Flags:
      properties:
        items:
          items:
            properties:
              not_deletable:
                default: false
                description: The resource can not be deleted.
                type: boolean
              not_updatable:
                default: false
                description: The resource can not be modified.
                type: boolean
            type: object
          type: array
      type: object
    Gorm:
      properties:
        items:
          items:
            properties:
              CreatedAt:
                format: date-time
                type: string
              Ctx:
                nullable: true
                type: string
              DB:
                properties:
                  Error:
                    nullable: true
                    type: string
                  RowsAffected:
                    type: integer
                  Value:
                    nullable: true
                    type: string
                type: object
              DeletedAt:
                format: date-time
                nullable: true
                type: string
              ID:
                description: '`PRIMARY KEY`'
                type: integer
              UpdatedAt:
                format: date-time
                nullable: true
                type: string
            type: object
          type: array
      type: object
    Ip4log:
      properties:
        end_time:
          example: 1970-01-01 00:00:00
          format: date-time
          nullable: true
          type: string
        ip:
          description: '`PRIMARY KEY`'
          type: string
        mac:
          type: string
        start_time:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
      type: object
    Ip4logsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/Ip4log'
            type: array
        type: object
    Ip6log:
      properties:
        end_time:
          example: 1970-01-01 00:00:00
          format: date-time
          nullable: true
          type: string
        ip:
          description: '`PRIMARY KEY`'
          type: string
        mac:
          type: string
        start_time:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        type:
          nullable: true
          type: string
      type: object
    Ip6logsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/Ip6log'
            type: array
        type: object
    IpsetIp:
      properties:
        ip:
          description: The IPv4 address of the client
          type: string
      type: object
    IpsetMac:
      properties:
        mac:
          description: 'The clients MAC address. example: 01:23:45:67:89:AB'
          type: string
      type: object
    IpsetNetwork:
      properties:
        network:
          description: The IPv4 network identifier
          type: string
      type: object
    IpsetPort:
      properties:
        port:
          description: 'The port to allow through. Can be prefixed with a protocol
            `tcp:` or `udp:`. When the protocol is omited, then the port will be opened
            for both protocols. example: tcp:65535'
          type: string
      type: object
    IpsetRoleId:
      properties:
        role_id:
          description: The client's node
          type: integer
      type: object
    IpsetStatus:
      properties:
        type:
          description: The response status.
          enum:
          - ACK
          - NAK
          type: string
      type: object
    IpsetType:
      properties:
        type:
          description: The Ipset type.
          enum:
          - Reg
          - Unreg
          type: string
      type: object
    ItemNotDeletable:
      default: false
      description: The item is immutable and can not be removed.
      type: boolean
    ItemNotSortable:
      default: false
      description: The item is immutable and can not be sorted.
      type: boolean
    Iterable:
      properties:
        nextCursor:
          description: The cursor to access paginated data for the next page.
          type: string
        prevCursor:
          description: The cursor to access paginated data for the previous page.
          type: string
        total_count:
          description: The total count of paginated items.
          type: integer
      type: object
    Locale:
      properties:
        item:
          properties:
            lang:
              type: string
            lexicon:
              type: object
          type: object
        status:
          $ref: '#/components/schemas/Status'
      type: object
    Locales:
      properties:
        items:
          items:
            properties:
              lang:
                type: string
              lexicon:
                type: object
            type: object
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    Locationlog:
      properties:
        connection_sub_type:
          nullable: true
          type: string
        connection_type:
          type: string
        dot1x_username:
          type: string
        end_time:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        ifDesc:
          nullable: true
          type: string
        mac:
          description: '`PRIMARY KEY`'
          type: string
        port:
          type: string
        realm:
          nullable: true
          type: string
        role:
          nullable: true
          type: string
        session_id:
          nullable: true
          type: string
        ssid:
          type: string
        start_time:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        stripped_user_name:
          nullable: true
          type: string
        switch:
          type: string
        switch_ip:
          nullable: true
          type: string
        switch_ip_int:
          nullable: true
          type: integer
        switch_mac:
          nullable: true
          type: string
        vlan:
          nullable: true
          type: string
        voip:
          enum:
          - no
          - yes
          type: string
      type: object
    LocationlogsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/Locationlog'
            type: array
        type: object
    LogsCreate:
      properties:
        message:
          description: A descriptive message for the user.
          type: string
        session_id:
          description: Log session identifier.
          type: string
      type: object
    LogsMeta:
      properties:
        meta:
          properties:
            files:
              $ref: '#/components/schemas/Meta'
            filter:
              $ref: '#/components/schemas/MetaItem'
            filter_is_regexp:
              $ref: '#/components/schemas/MetaItem'
          type: object
      type: object
    LogsTail:
      properties:
        events:
          items:
            properties:
              category:
                type: string
              data:
                properties:
                  meta:
                    description: Parsed log lines
                    properties:
                      filename:
                        type: string
                      hostname:
                        type: string
                      log_level:
                        type: string
                      log_without_prefix:
                        type: string
                      process:
                        type: string
                      syslog_name:
                        type: string
                      timestamp:
                        type: string
                    type: object
                  raw:
                    description: Raw log output
                    type: string
                type: object
              timestamp:
                description: Unix epoch timestamp (seconds).
                type: integer
            type: object
          type: array
      type: object
    Message:
      properties:
        message:
          description: A descriptive message for the user.
          type: string
        status:
          $ref: '#/components/schemas/Status'
      type: object
    Meta:
      allOf:
      - $ref: '#/components/schemas/MetaItem'
      - properties:
          item:
            $ref: '#/components/schemas/MetaItem'
            description: Schema of each item in type array
          properties:
            additionalProperties:
              $ref: '#/components/schemas/MetaItem'
            description: Schema of each item in type object
            type: object
        type: object
    MetaAllowedOptions:
      description: Array of options
      items:
        properties:
          text:
            description: Text describing the current value
            type: string
          value:
            description: Current value
            type: string
        type: object
      type: array
    MetaAllowedOptionsGrouped:
      description: Array of grouped options
      items:
        properties:
          group:
            description: Text describing the group
            type: string
          options:
            $ref: '#/components/schemas/MetaAllowedOptions'
        type: object
      type: array
    MetaItem:
      description: Meta for each item
      oneOf:
      - type: string
      - type: integer
      - type: object
      - type: array
      properties:
        allow_custom:
          description: Allow user-defined values
          type: boolean
        allowed:
          description: Allowed options array
          items:
            properties:
              text:
                description: The option text
                type: string
              value:
                description: The option value
                type: string
            type: object
          oneOf:
          - $ref: '#/components/schemas/MetaAllowedOptions'
          - $ref: '#/components/schemas/MetaAllowedOptionsGrouped'
        allowed_lookup:
          description: Allowed options with POST URL endpoint
          properties:
            base_url:
              description: Use external URL, if not defined local host/path is used
              type: string
            field_name:
              description: The key used for the option text
              type: string
            search_path:
              description: The URL endpoint
              type: string
            value_name:
              description: The key used for the option value
              type: string
          type: object
        default:
          description: The default value if not user-defined
          nullable: true
          oneOf:
          - type: string
          - type: integer
          - type: object
          - type: array
        implied:
          description: Fixed built-in values, user-defined values are appended
          nullable: true
          type: string
        max_length:
          description: Maximum string length
          type: integer
        max_value:
          description: Maxiumum unsigned integer
          type: integer
        min_length:
          description: Minumum string length
          type: integer
        min_value:
          description: Minimum unsigned integer
          type: integer
        pattern:
          description: Regular expression value test
          properties:
            message:
              description: Message shown when regular expression fails
              type: string
            regex:
              description: Regular expression
              type: string
          type: object
        placeholder:
          description: String shown for the current value, otherwise value is shown
          nullable: true
          oneOf:
          - type: string
          - type: integer
          - type: object
          - type: array
        required:
          description: If the value is manadatory
          type: boolean
        type:
          description: The field type
          enum:
          - string
          - integer
          - object
          - array
          type: string
    NetworkGraphLink:
      properties:
        source:
          type: string
        target:
          type: string
      type: object
    NetworkGraphNode:
      properties:
        id:
          type: string
        properties:
          $ref: '#/components/schemas/Node'
        type:
          type: string
      type: object
    Node:
      properties:
        autoreg:
          enum:
          - no
          - yes
          type: string
        bandwidth_balance:
          nullable: true
          type: integer
        bypass_acls:
          nullable: true
          type: string
        bypass_role_id:
          nullable: true
          type: integer
        bypass_vlan:
          nullable: true
          type: string
        category_id:
          nullable: true
          type: integer
        computername:
          nullable: true
          type: string
        detect_date:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        device_class:
          nullable: true
          type: string
        device_manufacturer:
          nullable: true
          type: string
        device_score:
          nullable: true
          type: integer
        device_type:
          nullable: true
          type: string
        device_version:
          nullable: true
          type: string
        dhcp6_enterprise:
          nullable: true
          type: string
        dhcp6_fingerprint:
          nullable: true
          type: string
        dhcp_fingerprint:
          nullable: true
          type: string
        dhcp_vendor:
          nullable: true
          type: string
        last_arp:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        last_dhcp:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        last_seen:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        mac:
          description: '`PRIMARY KEY`'
          type: string
        machine_account:
          nullable: true
          type: string
        notes:
          nullable: true
          type: string
        pid:
          type: string
        regdate:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        sessionid:
          nullable: true
          type: string
        status:
          type: string
        time_balance:
          nullable: true
          type: integer
        unregdate:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        user_agent:
          nullable: true
          type: string
        voip:
          enum:
          - no
          - yes
          type: string
      type: object
    NodeCategoriesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/NodeCategory'
            type: array
        type: object
    NodeCategory:
      properties:
        acls:
          type: string
        category_id:
          description: '`PRIMARY KEY`'
          type: integer
        fingerbank_dynamic_access_list:
          nullable: true
          type: string
        include_parent_acls:
          nullable: true
          type: string
        inherit_role:
          nullable: true
          type: string
        inherit_vlan:
          nullable: true
          type: string
        inherit_web_auth_url:
          nullable: true
          type: string
        max_nodes_per_pid:
          nullable: true
          type: integer
        name:
          type: string
        notes:
          nullable: true
          type: string
      type: object
    NodesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/Node'
            type: array
        type: object
    Password:
      properties:
        access_duration:
          description: The access duration that should be given to a node when this
            account is used is used to register a device
          type: string
        access_level:
          description: The administrative access level that should be given to the
            user when he logs into the administration interface
          type: string
        category:
          description: The node category ID that should be given to a node when this
            account is used to register a device
          type: integer
        expiration:
          description: The date at which the password expires (becomes invalid)
          type: string
        login_remaining:
          description: The amount of logins that the user has remaining. When null,
            the user has unlimited logins
          type: integer
        password:
          description: The password of the local account. When encrypted, it is prefixed
            by the encryption type surrounded by brackets. For example "{ntlm}iosnuiofsauionsfdioun"
          type: string
        pid:
          description: The username of the local account
          type: string
        sponsor:
          description: Whether or not this account can be used to sponsor other users
            via a SponsorEmail source
          type: boolean
        unregdate:
          description: The unregistration date that should be given to a node when
            this account is used to register a device
          type: string
        valid_from:
          description: The date at which the password becomes valid
          type: string
      type: object
    PfQueue:
      properties:
        item:
          description: The task response JSON object.
          type: object
        message:
          description: A descriptive message for the user.
          enum:
          - In Progress
          - Completed
          type: string
        progress:
          description: Task progress. "100" when completed.
          type: string
        status:
          description: Response code.
          enum:
          - 202
          - 200
          type: integer
      type: object
    PkiCa:
      properties:
        cert:
          type: string
        cn:
          type: string
        country:
          type: string
        days:
          type: string
        digest:
          $ref: '#/components/schemas/PkiDigest'
        extended_key_usage:
          $ref: '#/components/schemas/PkiExtendedKeyUsages'
        issuer_key_hash:
          type: string
        issuer_name_hash:
          type: string
        key_size:
          type: string
        key_type:
          $ref: '#/components/schemas/PkiKeyType'
        key_usage:
          $ref: '#/components/schemas/PkiKeyUsage'
        locality:
          type: string
        mail:
          type: string
        organisation:
          type: string
        organisational_unit:
          type: string
        state:
          type: string
        street_address:
          type: string
      type: object
    PkiCaCertOnly:
      properties:
        cert:
          type: string
      type: object
    PkiCaForm:
      allOf:
      - $ref: '#/components/schemas/PkiCa'
      - required:
        - cn
        - email
        - organisation
        - country
        - state
        - locality
        - key_type
        - key_size
        - digest
        - days
    PkiCaFormCertOnly:
      allOf:
      - $ref: '#/components/schemas/PkiCaCertOnly'
      - required:
        - cert
    PkiCasField:
      enum:
      - id
      - cert
      - cn
      - country
      - days
      - digest
      - extended_key_usage
      - issuer_key_hash
      - issuer_name_hash
      - key_size
      - key_type
      - key_usage
      - locality
      - mail
      - organisation
      - organisational_unit
      - state
      - street_address
      example: id
      type: string
    PkiCasFields:
      example:
      - id
      - cert
      - cn
      - country
      - days
      - digest
      - extended_key_usage
      - issuer_key_hash
      - issuer_name_hash
      - key_size
      - key_type
      - key_usage
      - locality
      - mail
      - organisation
      - organisational_unit
      - state
      - street_address
      items:
        $ref: '#/components/schemas/PkiCasField'
      type: array
    PkiCasList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - $ref: '#/components/schemas/Gorm'
      - properties:
          contentType:
            type: string
          error:
            type: string
          items:
            items:
              $ref: '#/components/schemas/PkiCa'
            nullable: true
            type: array
          password:
            type: string
          raw:
            nullable: true
            type: string
          serial:
            type: string
          status:
            $ref: '#/components/schemas/Status'
      type: object
    PkiCasQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/PkiCasQueryNested'
          between: '#/components/schemas/PkiCasQueryField'
          contains: '#/components/schemas/PkiCasQueryField'
          is: '#/components/schemas/PkiCasQueryField'
          is_not: '#/components/schemas/PkiCasQueryField'
          match: '#/components/schemas/PkiCasQueryField'
          not_between: '#/components/schemas/PkiCasQueryField'
          not_contains: '#/components/schemas/PkiCasQueryField'
          not_match: '#/components/schemas/PkiCasQueryField'
          or: '#/components/schemas/PkiCasQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/PkiCasQueryNested'
      - $ref: '#/components/schemas/PkiCasQueryField'
      type: object
    PkiCasQueryField:
      properties:
        field:
          $ref: '#/components/schemas/PkiCasField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    PkiCasQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/PkiCasQuery'
          type: array
      type: object
    PkiCasSearch:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - $ref: '#/components/schemas/Gorm'
      - properties:
          items:
            description: Certificate Authorities.
            items:
              $ref: '#/components/schemas/PkiCa'
            type: array
        type: object
    PkiCasSort:
      items:
        enum:
        - id ASC
        - id DESC
        - cert ASC
        - cert DESC
        - cn ASC
        - cn DESC
        - country ASC
        - country DESC
        - days ASC
        - days DESC
        - digest ASC
        - digest DESC
        - extended_key_usage ASC
        - extended_key_usage DESC
        - issuer_key_hash ASC
        - issuer_key_hash DESC
        - issuer_name_hash ASC
        - issuer_name_hash DESC
        - key_size ASC
        - key_size DESC
        - key_type ASC
        - key_type DESC
        - key_usage ASC
        - key_usage DESC
        - locality ASC
        - locality DESC
        - mail ASC
        - mail DESC
        - organisation ASC
        - organisation DESC
        - organisational_unit ASC
        - organisational_unit DESC
        - state ASC
        - state DESC
        - street_address ASC
        - street_address DESC
        example: id ASC
        type: string
      type: array
    PkiCert:
      properties:
        cn:
          type: string
        dns_names:
          type: string
        ip_addresses:
          type: string
        locality:
          type: string
        mail:
          type: string
        organisation:
          type: string
        organisational_unit:
          type: string
        profile_id:
          type: string
        state:
          type: string
        street_address:
          type: string
      type: object
    PkiCertDecorated:
      properties:
        alert:
          type: boolean
        ca_id:
          type: string
        ca_name:
          type: string
        cert:
          type: string
        cn:
          type: string
        country:
          type: string
        csr:
          type: boolean
        date:
          type: string
        dns_names:
          type: string
        ip_addresses:
          type: string
        locality:
          type: string
        mail:
          type: string
        not_before:
          format: date-time
          type: string
        organisation:
          type: string
        organisational_unit:
          type: string
        postal_code:
          type: string
        profile_id:
          type: string
        profile_name:
          type: string
        scep:
          type: boolean
        state:
          type: string
        street_address:
          type: string
        valid_until:
          format: date-time
          type: string
      type: object
    PkiCertForm:
      allOf:
      - $ref: '#/components/schemas/PkiCert'
      - required:
        - cn
        - mail
    PkiCertsField:
      enum:
      - id
      - cn
      - mail
      - ca_id
      - ca_name
      - cert
      - profile_id
      - profile_name
      - valid_until
      - not_before
      - date
      - serial_number
      - scep
      - csr
      - alert
      example: id
      type: string
    PkiCertsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - $ref: '#/components/schemas/Gorm'
      - properties:
          contentType:
            type: string
          error:
            type: string
          items:
            items:
              $ref: '#/components/schemas/PkiCertDecorated'
            type: array
          password:
            type: string
          raw:
            nullable: true
            type: string
          serial:
            type: string
          status:
            $ref: '#/components/schemas/Status'
      type: object
    PkiCertsQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/PkiCertsQueryNested'
          between: '#/components/schemas/PkiCertsQueryField'
          contains: '#/components/schemas/PkiCertsQueryField'
          is: '#/components/schemas/PkiCertsQueryField'
          is_not: '#/components/schemas/PkiCertsQueryField'
          match: '#/components/schemas/PkiCertsQueryField'
          not_between: '#/components/schemas/PkiCertsQueryField'
          not_contains: '#/components/schemas/PkiCertsQueryField'
          not_match: '#/components/schemas/PkiCertsQueryField'
          or: '#/components/schemas/PkiCertsQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/PkiCertsQueryNested'
      - $ref: '#/components/schemas/PkiCertsQueryField'
      type: object
    PkiCertsQueryField:
      properties:
        field:
          $ref: '#/components/schemas/PkiCertsField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    PkiCertsQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/PkiCertsQuery'
          type: array
      type: object
    PkiCertsSearch:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - $ref: '#/components/schemas/Gorm'
      - properties:
          items:
            description: Certs.
            items:
              $ref: '#/components/schemas/PkiCertDecorated'
            type: array
        type: object
    PkiCertsSort:
      items:
        enum:
        - id ASC
        - id DESC
        - cn ASC
        - cn DESC
        - mail ASC
        - mail DESC
        - ca_id ASC
        - ca_id DESC
        - ca_name ASC
        - ca_name DESC
        - cert ASC
        - cert DESC
        - profile_id ASC
        - profile_id DESC
        - profile_name ASC
        - profile_name DESC
        - valid_until ASC
        - valid_until DESC
        - not_before ASC
        - not_before DESC
        - date ASC
        - date DESC
        - serial_number ASC
        - serial_number DESC
        - scep ASC
        - scep DESC
        - csr ASC
        - csr DESC
        - alert ASC
        - alert DESC
        example: id ASC
        type: string
      type: array
    PkiDigest:
      description: |
        0: UnknownSignatureAlgorithm
        1: MD2WithRSA
        2: MD5WithRSA
        3: SHA1WithRSA
        4: SHA256WithRSA
        5: SHA384WithRSA
        6: SHA512WithRSA
        7: DSAWithSHA1
        8: DSAWithSHA256
        9: ECDSAWithSHA1
        10: ECDSAWithSHA256
        11: ECDSAWithSHA384
        12: ECDSAWithSHA512
        13: SHA256WithRSAPSS
        14: SHA384WithRSAPSS
        15: SHA512WithRSAPSS
        16: PureEd25519
      enum:
      - 0
      - 1
      - 2
      - 3
      - 4
      - 5
      - 6
      - 7
      - 8
      - 9
      - 10
      - 11
      - 12
      - 13
      - 14
      - 15
      - 16
      type: integer
    PkiExtendedKeyUsages:
      description: |
        ### pipe delimited list
        0: Any
        1: ServerAuth
        2: ClientAuth
        3: CodeSigning
        4: EmailProtection
        5: IPSECEndSystem
        6: IPSECTunnel
        7: IPSECUser
        8: TimeStamping
        9: OCSPSigning
        10: MicrosoftServerGatedCrypto
        11: NetscapeServerGatedCrypto
        12: MicrosoftCommercialCodeSigning
        13: MicrosoftKernelCodeSigning
      type: string
    PkiKeyType:
      description: |
        0: KEY_ECDSA
        1: KEY_RSA
        2: KEY_DSA
      enum:
      - 0
      - 1
      - 2
      type: integer
    PkiKeyUsage:
      description: |
        ### pipe delimited list
        1: DigitalSignature
        2: ContentCommitment
        4: KeyEncipherment
        8: DataEncipherment
        16: KeyAgreement
        32: CertSign
        64: CRLSign
        128: EncipherOnly
        256: DecipherOnly
      type: string
    PkiNull:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          contentType:
            type: string
          error:
            type: string
          items:
            nullable: true
            type: array
          password:
            type: string
          raw:
            nullable: true
            type: string
          serial:
            type: string
          status:
            $ref: '#/components/schemas/Status'
      type: object
    PkiProfile:
      properties:
        ca_id:
          type: string
        ca_name:
          type: string
        days_before_renewal:
          type: string
        days_before_renewal_mail:
          type: string
        digest:
          $ref: '#/components/schemas/PkiDigest'
        extended_key_usage:
          $ref: '#/components/schemas/PkiExtendedKeyUsages'
        key_size:
          type: string
        key_type:
          $ref: '#/components/schemas/PkiKeyType'
        key_usage:
          $ref: '#/components/schemas/PkiKeyUsage'
        mail:
          type: string
        name:
          type: string
        renewal_mail:
          type: string
        renewal_mail_subject:
          type: string
        revoked_valid_until:
          type: string
        scep_days_before_renewal:
          type: string
        validity:
          type: string
      type: object
    PkiProfileForm:
      allOf:
      - $ref: '#/components/schemas/PkiProfile'
      - required:
        - name
        - mail
        - validity
        - key_type
        - key_size
        - digest
    PkiProfilesField:
      enum:
      - id
      - ca_id
      - ca_name
      - days_before_renewal
      - days_before_renewal_mail
      - digest
      - extended_key_usage
      - key_size
      - key_type
      - key_usage
      - name
      - mail
      - renewal_mail_subject
      - revoked_valid_until
      - scep_days_before_renewal
      - renewal_mail
      - validity
      example: id
      type: string
    PkiProfilesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - $ref: '#/components/schemas/Gorm'
      - properties:
          contentType:
            type: string
          error:
            type: string
          items:
            items:
              $ref: '#/components/schemas/PkiProfile'
            type: array
          password:
            type: string
          raw:
            nullable: true
            type: string
          serial:
            type: string
          status:
            $ref: '#/components/schemas/Status'
      type: object
    PkiProfilesQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/PkiProfilesQueryNested'
          between: '#/components/schemas/PkiProfilesQueryField'
          contains: '#/components/schemas/PkiProfilesQueryField'
          is: '#/components/schemas/PkiProfilesQueryField'
          is_not: '#/components/schemas/PkiProfilesQueryField'
          match: '#/components/schemas/PkiProfilesQueryField'
          not_between: '#/components/schemas/PkiProfilesQueryField'
          not_contains: '#/components/schemas/PkiProfilesQueryField'
          not_match: '#/components/schemas/PkiProfilesQueryField'
          or: '#/components/schemas/PkiProfilesQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/PkiProfilesQueryNested'
      - $ref: '#/components/schemas/PkiProfilesQueryField'
      type: object
    PkiProfilesQueryField:
      properties:
        field:
          $ref: '#/components/schemas/PkiProfilesField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    PkiProfilesQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/PkiProfilesQuery'
          type: array
      type: object
    PkiProfilesSearch:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - $ref: '#/components/schemas/Gorm'
      - properties:
          items:
            description: Profiles.
            items:
              $ref: '#/components/schemas/PkiProfile'
            type: array
        type: object
    PkiProfilesSort:
      items:
        enum:
        - id ASC
        - id DESC
        - ca_id ASC
        - ca_id DESC
        - ca_name ASC
        - ca_name DESC
        - days_before_renewal ASC
        - days_before_renewal DESC
        - days_before_renewal_mail ASC
        - days_before_renewal_mail DESC
        - digest ASC
        - digest DESC
        - extended_key_usage ASC
        - extended_key_usage DESC
        - key_size ASC
        - key_size DESC
        - key_type ASC
        - key_type DESC
        - key_usage ASC
        - key_usage DESC
        - name ASC
        - name DESC
        - mail ASC
        - mail DESC
        - renewal_mail_subject ASC
        - renewal_mail_subject DESC
        - revoked_valid_until ASC
        - revoked_valid_until DESC
        - scep_days_before_renewal ASC
        - scep_days_before_renewal DESC
        - renewal_mail ASC
        - renewal_mail DESC
        - validity ASC
        - validity DESC
        example: id ASC
        type: string
      type: array
    PkiRevokeReasons:
      description: |
        0: Unspecified
        1: KeyCompromise
        2: CACompromise
        3: AffiliationChanged
        4: Superseded
        5: CessationOfOperation
        6: CertificateHold
        8: RemoveFromCRL
        9: PrivilegeWithdrawn
        10: AACompromise
      enum:
      - 0
      - 1
      - 2
      - 3
      - 4
      - 5
      - 6
      - 8
      - 9
      - 10
      type: integer
    PkiRevokedCert:
      properties:
        ca_id:
          type: string
        ca_name:
          type: string
        cert:
          type: string
        cn:
          type: string
        date:
          format: date-time
          type: string
        mail:
          type: string
        not_before:
          format: date-time
          type: string
        profile_id:
          type: string
        profile_name:
          type: string
        revoked:
          format: date-time
          type: string
        serial_number:
          type: string
        valid_until:
          format: date-time
          type: string
      type: object
    PkiRevokedCertsField:
      enum:
      - id
      - cn
      - mail
      - ca_id
      - ca_name
      - cert
      - profile_id
      - profile_name
      - valid_until
      - not_before
      - date
      - serial_number
      - revoked
      example: id
      type: string
    PkiRevokedCertsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - $ref: '#/components/schemas/Gorm'
      - properties:
          contentType:
            type: string
          error:
            type: string
          items:
            items:
              $ref: '#/components/schemas/PkiRevokedCert'
            type: array
          password:
            type: string
          raw:
            nullable: true
            type: string
          serial:
            type: string
          status:
            $ref: '#/components/schemas/Status'
      type: object
    PkiRevokedCertsQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/PkiRevokedCertsQueryNested'
          between: '#/components/schemas/PkiRevokedCertsQueryField'
          contains: '#/components/schemas/PkiRevokedCertsQueryField'
          is: '#/components/schemas/PkiRevokedCertsQueryField'
          is_not: '#/components/schemas/PkiRevokedCertsQueryField'
          match: '#/components/schemas/PkiRevokedCertsQueryField'
          not_between: '#/components/schemas/PkiRevokedCertsQueryField'
          not_contains: '#/components/schemas/PkiRevokedCertsQueryField'
          not_match: '#/components/schemas/PkiRevokedCertsQueryField'
          or: '#/components/schemas/PkiRevokedCertsQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/PkiRevokedCertsQueryNested'
      - $ref: '#/components/schemas/PkiRevokedCertsQueryField'
      type: object
    PkiRevokedCertsQueryField:
      properties:
        field:
          $ref: '#/components/schemas/PkiRevokedCertsField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    PkiRevokedCertsQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/PkiRevokedCertsQuery'
          type: array
      type: object
    PkiRevokedCertsSearch:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - $ref: '#/components/schemas/Gorm'
      - properties:
          items:
            description: Certs.
            items:
              $ref: '#/components/schemas/PkiRevokedCert'
            type: array
        type: object
    PkiRevokedCertsSort:
      items:
        enum:
        - id ASC
        - id DESC
        - cn ASC
        - cn DESC
        - mail ASC
        - mail DESC
        - ca_id ASC
        - ca_id DESC
        - ca_name ASC
        - ca_name DESC
        - cert ASC
        - cert DESC
        - profile_id ASC
        - profile_id DESC
        - profile_name ASC
        - profile_name DESC
        - valid_until ASC
        - valid_until DESC
        - not_before ASC
        - not_before DESC
        - date ASC
        - date DESC
        - serial_number ASC
        - serial_number DESC
        - revoked ASC
        - revoked DESC
        example: id ASC
        type: string
      type: array
    PkiScepServer:
      properties:
        name:
          type: string
        shared_secret:
          type: string
        url:
          type: string
      type: object
    PkiScepServerForm:
      allOf:
      - $ref: '#/components/schemas/PkiScepServer'
      - required:
        - name
        - url
        - shared_secret
    PkiScepServersField:
      enum:
      - id
      - name
      - url
      - shared_secret
      example: id
      type: string
    PkiScepServersFields:
      example:
      - id
      - name
      - url
      - shared_secret
      items:
        $ref: '#/components/schemas/PkiScepServersField'
      type: array
    PkiScepServersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - $ref: '#/components/schemas/Gorm'
      - properties:
          contentType:
            type: string
          error:
            type: string
          items:
            items:
              $ref: '#/components/schemas/PkiScepServer'
            nullable: true
            type: array
          password:
            type: string
          raw:
            nullable: true
            type: string
          serial:
            type: string
          status:
            $ref: '#/components/schemas/Status'
      type: object
    PkiScepServersQuery:
      discriminator:
        mapping:
          and: '#/components/schemas/PkiScepServersQueryNested'
          between: '#/components/schemas/PkiScepServersQueryField'
          contains: '#/components/schemas/PkiScepServersQueryField'
          is: '#/components/schemas/PkiScepServersQueryField'
          is_not: '#/components/schemas/PkiScepServersQueryField'
          match: '#/components/schemas/PkiScepServersQueryField'
          not_between: '#/components/schemas/PkiScepServersQueryField'
          not_contains: '#/components/schemas/PkiScepServersQueryField'
          not_match: '#/components/schemas/PkiScepServersQueryField'
          or: '#/components/schemas/PkiScepServersQueryNested'
        propertyName: op
      example:
        op: and
        values:
        - field: id
          op: contains
          value: ''
      oneOf:
      - $ref: '#/components/schemas/PkiScepServersQueryNested'
      - $ref: '#/components/schemas/PkiScepServersQueryField'
      type: object
    PkiScepServersQueryField:
      properties:
        field:
          $ref: '#/components/schemas/PkiScepServersField'
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    PkiScepServersQueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/PkiScepServersQuery'
          type: array
      type: object
    PkiScepServersSearch:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - $ref: '#/components/schemas/Gorm'
      - properties:
          items:
            description: SCEP Servers.
            items:
              $ref: '#/components/schemas/PkiScepServer'
            type: array
        type: object
    PkiScepServersSort:
      items:
        enum:
        - id ASC
        - id DESC
        - name ASC
        - name DESC
        - url ASC
        - url DESC
        example: id ASC
        type: string
      type: array
    Preference:
      properties:
        id:
          type: string
        value:
          type: string
      type: object
    Preferences:
      properties:
        items:
          items:
            $ref: '#/components/schemas/Preference'
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    Query:
      discriminator:
        mapping:
          and: '#/components/schemas/QueryNested'
          between: '#/components/schemas/QueryField'
          contains: '#/components/schemas/QueryField'
          is: '#/components/schemas/QueryField'
          is_not: '#/components/schemas/QueryField'
          match: '#/components/schemas/QueryField'
          not_between: '#/components/schemas/QueryField'
          not_contains: '#/components/schemas/QueryField'
          not_match: '#/components/schemas/QueryField'
          or: '#/components/schemas/QueryNested'
        propertyName: op
      oneOf:
      - $ref: '#/components/schemas/QueryNested'
      - $ref: '#/components/schemas/QueryField'
      type: object
    QueryField:
      properties:
        field:
          description: Search field.
          type: string
        op:
          description: Search operator.
          enum:
          - contains
          - not_contains
          - match
          - not_match
          - between
          - not_between
          - is
          - is_not
          type: string
        value:
          description: Search criteria.
          type: string
      type: object
    QueryNested:
      properties:
        op:
          description: Search operator.
          enum:
          - and
          - or
          type: string
        values:
          description: Nested child search criteria.
          items:
            $ref: '#/components/schemas/Query'
          type: array
      type: object
    QueueStats:
      description: The schema used for a collection of queue stats
      items:
        description: Statistics of the queue
        properties:
          queue:
            description: The name of the queue
            type: string
          stats:
            description: The statistics for the queue
            properties:
              count:
                description: The queue count
                type: integer
              expired:
                description: The collection of expired task counters
                items:
                  description: An expired task
                  properties:
                    count:
                      description: The expired task counter
                      type: integer
                    name:
                      description: The name of the expired task
                      type: string
                  type: object
                type: array
              outstanding:
                description: The collection of outstanding task counters
                items:
                  description: An outstanding task
                  properties:
                    count:
                      description: The outstanding task counter
                      type: integer
                    name:
                      description: The name of the outstanding task
                      type: string
                  type: object
                type: array
            type: object
        type: object
      type: array
    RadiusAttributes:
      allOf:
      - $ref: '#/components/schemas/Query'
      - example: ~
      type: object
    RadiusAttributesSearch:
      properties:
        items:
          items:
            properties:
              allowed_values:
                items:
                  properties:
                    name:
                      type: string
                    value:
                      type: string
                  type: object
                nullable: true
                type: array
              name:
                type: string
              vendor:
                type: string
            type: object
          type: array
        message:
          type: string
        status:
          $ref: '#/components/schemas/Status'
      type: object
    RadiusAuditLog:
      properties:
        auth_status:
          nullable: true
          type: string
        auth_type:
          nullable: true
          type: string
        auto_reg:
          nullable: true
          type: string
        called_station_id:
          nullable: true
          type: string
        calling_station_id:
          nullable: true
          type: string
        computer_name:
          nullable: true
          type: string
        connection_type:
          nullable: true
          type: string
        created_at:
          type: string
        eap_type:
          nullable: true
          type: string
        event_type:
          nullable: true
          type: string
        id:
          description: '`PRIMARY KEY`'
          type: integer
        ifindex:
          nullable: true
          type: string
        ip:
          nullable: true
          type: string
        is_phone:
          nullable: true
          type: string
        mac:
          type: string
        nas_identifier:
          nullable: true
          type: string
        nas_ip_address:
          nullable: true
          type: string
        nas_port:
          nullable: true
          type: string
        nas_port_id:
          nullable: true
          type: string
        nas_port_type:
          nullable: true
          type: string
        node_status:
          nullable: true
          type: string
        pf_domain:
          nullable: true
          type: string
        profile:
          nullable: true
          type: string
        radius_ip:
          nullable: true
          type: string
        radius_reply:
          nullable: true
          type: string
        radius_request:
          nullable: true
          type: string
        radius_source_ip_address:
          nullable: true
          type: string
        realm:
          nullable: true
          type: string
        reason:
          nullable: true
          type: string
        request_time:
          nullable: true
          type: integer
        role:
          nullable: true
          type: string
        source:
          nullable: true
          type: string
        ssid:
          nullable: true
          type: string
        stripped_user_name:
          nullable: true
          type: string
        switch_id:
          nullable: true
          type: string
        switch_ip_address:
          nullable: true
          type: string
        switch_mac:
          nullable: true
          type: string
        user_name:
          nullable: true
          type: string
        uuid:
          nullable: true
          type: string
      type: object
    RadiusAuditLogsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/RadiusAuditLog'
            type: array
        type: object
    SMSCarrier:
      properties:
        created:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        email_pattern:
          type: string
        id:
          description: '`PRIMARY KEY`'
          type: integer
        modified:
          type: string
        name:
          nullable: true
          type: string
      type: object
    SMSCarriersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/SMSCarrier'
            type: array
        type: object
    Search:
      properties:
        cursor:
          description: The cursor pointer to fetch paginated results (from `prevCursor`
            and `nextCursor`).
          type: string
        fields:
          description: Comma delimited fields to return from the results.
          type: string
        limit:
          description: The maximum amount of entries to get. Use `cursor` for pagination.
          type: string
        query:
          $ref: '#/components/schemas/Query'
        sort:
          description: A list of fields and ordering (`ASC` or `DESC`) to sort the
            results.
          type: string
        with_total_count:
          description: The total count for pagination.
          type: boolean
      type: object
    SecurityEvent:
      properties:
        id:
          description: '`PRIMARY KEY`'
          type: integer
        mac:
          type: string
        notes:
          nullable: true
          type: string
        release_date:
          example: 1970-01-01 00:00:00
          format: date-time
          nullable: true
          type: string
        security_event_id:
          type: integer
        start_date:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        status:
          nullable: true
          type: string
        ticket_ref:
          nullable: true
          type: string
      type: object
    SecurityEventsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/SecurityEvent'
            type: array
        type: object
    SecurityEventsPerDeviceClass:
      properties:
        items:
          items:
            properties:
              count:
                description: Total count
                type: integer
              device_class:
                description: Device class
                type: string
            type: object
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    SecurityEventsPerId:
      properties:
        items:
          items:
            properties:
              count:
                description: Total count
                type: integer
              security_event_id:
                description: Security Event
                type: integer
            type: object
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    SecurityEventsSearch:
      type: object
    SecurityEventsTotal:
      properties:
        items:
          items:
            properties:
              count:
                description: Total count
                type: integer
            type: object
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    Service:
      description: Service unique identifier.
      type: string
    ServiceAsync:
      properties:
        status:
          description: Response code for item.
          type: integer
        task_id:
          description: A unique identifier for the asyncronous task.
          type: string
      type: object
    ServiceDisable:
      properties:
        disable:
          description: Whether the service was disabled or not.
          enum:
          - 0
          - 1
          type: integer
        status:
          $ref: '#/components/schemas/Status'
      type: object
    ServiceEnable:
      properties:
        enable:
          description: Whether the service was enabled or not.
          enum:
          - 0
          - 1
          type: integer
        status:
          $ref: '#/components/schemas/Status'
      type: object
    ServiceRestart:
      properties:
        pid:
          description: The service PID.
          type: integer
        restart:
          description: Whether the service was restarted or not.
          enum:
          - 0
          - 1
          type: integer
        status:
          $ref: '#/components/schemas/Status'
      type: object
    ServiceStart:
      properties:
        pid:
          description: The service PID.
          type: integer
        start:
          description: Whether the service was started or not.
          enum:
          - 0
          - 1
          type: integer
        status:
          $ref: '#/components/schemas/Status'
      type: object
    ServiceStatus:
      properties:
        alive:
          description: Service is running.
          enum:
          - 0
          - 1
          type: integer
        enabled:
          description: Service is enabled.
          enum:
          - 0
          - 1
          type: integer
        id:
          description: Unique identifier.
          type: string
        managed:
          description: Service is managed.
          enum:
          - 0
          - 1
          type: integer
        pid:
          description: Process identifier.
          type: integer
      type: object
    ServiceStop:
      properties:
        status:
          $ref: '#/components/schemas/Status'
        stop:
          description: Whether the service was stopped or not.
          enum:
          - 0
          - 1
          type: integer
      type: object
    ServicesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/Service'
            type: array
        type: object
    ServicesStatus:
      properties:
        items:
          items:
            $ref: '#/components/schemas/ServiceStatus'
          type: array
        status:
          $ref: '#/components/schemas/Status'
      type: object
    SsoStatus:
      properties:
        is_enabled:
          enum:
          - false
          - true
          type: boolean
        login_text:
          description: SSO login button text.
          type: string
        login_url:
          description: SSO login callback URL.
          type: string
      type: object
    Status:
      default: 200
      description: Response code.
      type: integer
    SystemSummary:
      properties:
        db_version:
          description: SQL database version.
          type: string
        git_commit_id:
          description: GIT commit id.
          type: string
        hostname:
          description: System hostname.
          type: string
        is_inline_configured:
          description: PacketFence inline.
          type: boolean
        os:
          description: Operating system.
          type: string
        readonly_mode:
          description: PacketFence is read-only.
          type: boolean
        saas:
          description: PacketFence NACaaS.
          type: boolean
        send_anonynmous_stats:
          description: Track user events.
          type: boolean
        status:
          $ref: '#/components/schemas/Status'
        uptime:
          description: System uptime.
          type: string
        version:
          description: PacketFence version.
          type: string
      type: object
    TokenInfo:
      properties:
        item:
          properties:
            admin_actions:
              description: User admin actions using [noun]_[verb] format.
              items:
                type: string
              type: array
            admin_roles:
              description: PacketFence admin roles.
              items:
                type: string
              type: array
            expires_at:
              description: Session expiration.
              type: string
            username:
              description: Session username.
              type: string
          type: object
      type: object
    User:
      properties:
        address:
          nullable: true
          type: string
        anniversary:
          nullable: true
          type: string
        apartment_number:
          nullable: true
          type: string
        birthday:
          nullable: true
          type: string
        building_number:
          nullable: true
          type: string
        cell_phone:
          nullable: true
          type: string
        company:
          nullable: true
          type: string
        custom_field_1:
          nullable: true
          type: string
        custom_field_2:
          nullable: true
          type: string
        custom_field_3:
          nullable: true
          type: string
        custom_field_4:
          nullable: true
          type: string
        custom_field_5:
          nullable: true
          type: string
        custom_field_6:
          nullable: true
          type: string
        custom_field_7:
          nullable: true
          type: string
        custom_field_8:
          nullable: true
          type: string
        custom_field_9:
          nullable: true
          type: string
        email:
          description: Email of the user.
          nullable: true
          type: string
        firstname:
          description: First name of the user.
          nullable: true
          type: string
        gender:
          nullable: true
          type: string
        lang:
          nullable: true
          type: string
        lastname:
          description: Last name of the user.
          nullable: true
          type: string
        nickname:
          nullable: true
          type: string
        notes:
          nullable: true
          type: string
        otp:
          nullable: true
          type: string
        pid:
          description: '`PRIMARY KEY`'
          type: string
        portal:
          nullable: true
          type: string
        potd:
          enum:
          - no
          - yes
          type: string
        psk:
          nullable: true
          type: string
        room_number:
          nullable: true
          type: string
        source:
          nullable: true
          type: string
        sponsor:
          nullable: true
          type: string
        sponsored_date:
          example: 1970-01-01 00:00:00
          format: date-time
          nullable: true
          type: string
        telephone:
          nullable: true
          type: string
        title:
          nullable: true
          type: string
        work_phone:
          nullable: true
          type: string
      type: object
    UserWithLinks:
      allOf:
      - $ref: '#/components/schemas/User'
      - properties:
          nodes_url:
            description: URL to the nodes of this user
            type: string
          password_url:
            description: URL to the password (local account) of this user. If there
              is none, the value will be empty.
            type: string
        type: object
    UsersList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/User'
            type: array
        type: object
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            items:
              $ref: '#/components/schemas/UserWithLinks'
            type: array
        type: object
    UsersNode:
      properties:
        autoreg:
          enum:
          - no
          - yes
          type: string
        bandwidth_balance:
          nullable: true
          type: integer
        bypass_acls:
          nullable: true
          type: string
        bypass_role_id:
          nullable: true
          type: integer
        bypass_vlan:
          nullable: true
          type: string
        category_id:
          nullable: true
          type: integer
        computername:
          nullable: true
          type: string
        detect_date:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        device_class:
          nullable: true
          type: string
        device_manufacturer:
          nullable: true
          type: string
        device_score:
          nullable: true
          type: integer
        device_type:
          nullable: true
          type: string
        device_version:
          nullable: true
          type: string
        dhcp6_enterprise:
          nullable: true
          type: string
        dhcp6_fingerprint:
          nullable: true
          type: string
        dhcp_fingerprint:
          nullable: true
          type: string
        dhcp_vendor:
          nullable: true
          type: string
        last_arp:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        last_dhcp:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        last_seen:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        mac:
          description: '`PRIMARY KEY`'
          type: string
        machine_account:
          nullable: true
          type: string
        notes:
          nullable: true
          type: string
        pid:
          type: string
        regdate:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        sessionid:
          nullable: true
          type: string
        status:
          type: string
        time_balance:
          nullable: true
          type: integer
        unregdate:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        user_agent:
          nullable: true
          type: string
        voip:
          enum:
          - no
          - yes
          type: string
      type: object
    UsersNodesList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/UsersNode'
            type: array
        type: object
    UsersNodesLocationlog:
      properties:
        connection_sub_type:
          type: string
        connection_type:
          type: string
        dot1x_username:
          type: string
        end_time:
          type: string
        id:
          type: integer
        ifDesc:
          type: string
        mac:
          type: string
        port:
          type: string
        realm:
          type: string
        role:
          type: string
        session_id:
          type: string
        ssid:
          type: string
        start_time:
          type: string
        stripped_user_name:
          type: string
        switch:
          type: string
        switch_ip:
          type: string
        switch_mac:
          type: string
        vlan:
          type: string
      type: object
    UsersNodesLocationlogsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items
            items:
              $ref: '#/components/schemas/UsersNodesLocationlog'
            type: array
        type: object
    UsersPassword:
      properties:
        access_duration:
          nullable: true
          type: string
        access_level:
          nullable: true
          type: string
        category:
          nullable: true
          type: integer
        expiration:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        login_remaining:
          nullable: true
          type: integer
        password:
          type: string
        pid:
          description: '`PRIMARY KEY`'
          type: string
        sponsor:
          type: integer
        unregdate:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
        valid_from:
          example: 1970-01-01 00:00:00
          format: date-time
          type: string
      type: object
    UsersPasswordList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/UsersPassword'
            type: array
        type: object
    WrixLocation:
      properties:
        Client_Support:
          nullable: true
          type: string
        Coverage_Area:
          nullable: true
          type: string
        English_Location_City:
          nullable: true
          type: string
        English_Location_Name:
          nullable: true
          type: string
        Latitude:
          nullable: true
          type: string
        Location_Address1:
          nullable: true
          type: string
        Location_Address2:
          nullable: true
          type: string
        Location_Country_Name:
          nullable: true
          type: string
        Location_Identifier:
          nullable: true
          type: string
        Location_Phone_Number:
          nullable: true
          type: string
        Location_State_Province_Name:
          nullable: true
          type: string
        Location_Type:
          nullable: true
          type: string
        Location_URL:
          nullable: true
          type: string
        Location_Zip_Postal_Code:
          nullable: true
          type: string
        Longitude:
          nullable: true
          type: string
        MAC_Address:
          nullable: true
          type: string
        Open_Friday:
          nullable: true
          type: string
        Open_Monday:
          nullable: true
          type: string
        Open_Saturday:
          nullable: true
          type: string
        Open_Sunday:
          nullable: true
          type: string
        Open_Thursday:
          nullable: true
          type: string
        Open_Tuesday:
          nullable: true
          type: string
        Open_Wednesday:
          nullable: true
          type: string
        Provider_Identifier:
          nullable: true
          type: string
        Restricted_Access:
          nullable: true
          type: string
        SSID_1X:
          nullable: true
          type: string
        SSID_1X_Broadcasted:
          nullable: true
          type: string
        SSID_Broadcasted:
          nullable: true
          type: string
        SSID_Open_Auth:
          nullable: true
          type: string
        Security_Protocol_1X:
          nullable: true
          type: string
        Service_Provider_Brand:
          nullable: true
          type: string
        Sub_Location_Type:
          nullable: true
          type: string
        UTC_Timezone:
          nullable: true
          type: string
        WEP_Key:
          nullable: true
          type: string
        WEP_Key_Entry_Method:
          nullable: true
          type: string
        WEP_Key_Size:
          nullable: true
          type: string
        id:
          description: '`PRIMARY KEY`'
          type: string
      type: object
    WrixLocationsList:
      allOf:
      - $ref: '#/components/schemas/Iterable'
      - properties:
          items:
            description: Items.
            items:
              $ref: '#/components/schemas/WrixLocation'
            type: array
        type: object
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: http
info:
  contact:
    name: PacketFence
    url: https://packetfence.org
  description: A JSON HTTP API to access and manage PacketFence resources.
  license:
    name: GNU General Public License v2.0
  title: PacketFence API
  version: 1.2.0
openapi: 3.1.0
paths:
  /api/v1.1/report/{report_id}:
    description: |-
      pf::UnifiedApi::Controller::DynamicReports

        configStore
          Get the dynamic reports config store

        search
          Execute a search on a specific dynamic report

        list
          List all the dynamic reports

        resource
          Get a dynamic report

        resource
          Get a dynamic report

        options
          options
    get:
      description: Get a report
      operationId: api.v1.1.DynamicReports.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: report_id
        required: true
        schema:
          enum:
          - Accounting::Bandwidth
          - Accounting::Node
          - Accounting::Operating System Class
          - Accounting::User
          - Authentication::All
          - Authentication::All Failures
          - Authentication::All Successes
          - Authentication::Top Failures::Connection Profile to Source
          - Authentication::Top Failures::By Connection Profile
          - Authentication::Top Failures::By Source
          - Authentication::Top Successes::By Connection Profile
          - Authentication::Top Successes::By Source
          - Authentication::Top Successes::Connection Profile to Source
          - Connection Types::Active
          - Connection Types::All
          - Connection Types::Date Range
          - Connection Types::Registered Active
          - Connection Types::Registered All
          - Fingerbank::Unknown Fingerprints::Active
          - Fingerbank::Unknown Fingerprints::All
          - Ip4Log::Archive
          - Ip4Log::History
          - Node::Active
          - Node::Inactive
          - Node::Registered::Active
          - Node::Registered::All
          - Node::Unregistered::Active
          - Node::Unregistered::All
          - Operating System Class::Active
          - Operating System Class::All
          - Operating Systems::Active
          - Operating Systems::All
          - RADIUS Authentication::Top Failures::By MAC
          - RADIUS Authentication::Top Failures::By SSID
          - RADIUS Authentication::Top Failures::By Username
          - RADIUS Authentication::Top Successes::By Computername
          - RADIUS Authentication::Top Successes::By MAC
          - RADIUS Authentication::Top Successes::By SSID
          - RADIUS Authentication::Top Successes::By Username
          - Roles::Active
          - Roles::Active per device class
          - Roles::Active per device manufacturer
          - Roles::Active per device type
          - Roles::All
          - Security Events::Closed
          - Security Events::Open
          - Security Events::Open Active
          - Security Events::Open All
          - SSID::Active
          - SSID::All
          - Top Sponsors::All
          - User::Registration::Email
          - User::Registration::SMS
          - User::Registration::Sponsor
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - DynamicReports
    options:
      description: Get meta of a report
      operationId: api.v1.1.DynamicReports.resource.options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: report_id
        required: true
        schema:
          enum:
          - Accounting::Bandwidth
          - Accounting::Node
          - Accounting::Operating System Class
          - Accounting::User
          - Authentication::All
          - Authentication::All Failures
          - Authentication::All Successes
          - Authentication::Top Failures::Connection Profile to Source
          - Authentication::Top Failures::By Connection Profile
          - Authentication::Top Failures::By Source
          - Authentication::Top Successes::By Connection Profile
          - Authentication::Top Successes::By Source
          - Authentication::Top Successes::Connection Profile to Source
          - Connection Types::Active
          - Connection Types::All
          - Connection Types::Date Range
          - Connection Types::Registered Active
          - Connection Types::Registered All
          - Fingerbank::Unknown Fingerprints::Active
          - Fingerbank::Unknown Fingerprints::All
          - Ip4Log::Archive
          - Ip4Log::History
          - Node::Active
          - Node::Inactive
          - Node::Registered::Active
          - Node::Registered::All
          - Node::Unregistered::Active
          - Node::Unregistered::All
          - Operating System Class::Active
          - Operating System Class::All
          - Operating Systems::Active
          - Operating Systems::All
          - RADIUS Authentication::Top Failures::By MAC
          - RADIUS Authentication::Top Failures::By SSID
          - RADIUS Authentication::Top Failures::By Username
          - RADIUS Authentication::Top Successes::By Computername
          - RADIUS Authentication::Top Successes::By MAC
          - RADIUS Authentication::Top Successes::By SSID
          - RADIUS Authentication::Top Successes::By Username
          - Roles::Active
          - Roles::Active per device class
          - Roles::Active per device manufacturer
          - Roles::Active per device type
          - Roles::All
          - Security Events::Closed
          - Security Events::Open
          - Security Events::Open Active
          - Security Events::Open All
          - SSID::Active
          - SSID::All
          - Top Sponsors::All
          - User::Registration::Email
          - User::Registration::SMS
          - User::Registration::Sponsor
          type: string
      responses:
        '200':
          $ref: '#/components/responses/DynamicReportMeta'
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - DynamicReports
  /api/v1.1/report/{report_id}/search:
    description: |-
      pf::UnifiedApi::Controller::DynamicReports

        configStore
          Get the dynamic reports config store

        search
          Execute a search on a specific dynamic report

        list
          List all the dynamic reports

        resource
          Get a dynamic report

        resource
          Get a dynamic report

        options
          options
    post:
      description: Search a report
      operationId: api.v1.1.DynamicReports.resource.search
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: report_id
        required: true
        schema:
          enum:
          - Accounting::Bandwidth
          - Accounting::Node
          - Accounting::Operating System Class
          - Accounting::User
          - Authentication::All
          - Authentication::All Failures
          - Authentication::All Successes
          - Authentication::Top Failures::Connection Profile to Source
          - Authentication::Top Failures::By Connection Profile
          - Authentication::Top Failures::By Source
          - Authentication::Top Successes::By Connection Profile
          - Authentication::Top Successes::By Source
          - Authentication::Top Successes::Connection Profile to Source
          - Connection Types::Active
          - Connection Types::All
          - Connection Types::Date Range
          - Connection Types::Registered Active
          - Connection Types::Registered All
          - Fingerbank::Unknown Fingerprints::Active
          - Fingerbank::Unknown Fingerprints::All
          - Ip4Log::Archive
          - Ip4Log::History
          - Node::Active
          - Node::Inactive
          - Node::Registered::Active
          - Node::Registered::All
          - Node::Unregistered::Active
          - Node::Unregistered::All
          - Operating System Class::Active
          - Operating System Class::All
          - Operating Systems::Active
          - Operating Systems::All
          - RADIUS Authentication::Top Failures::By MAC
          - RADIUS Authentication::Top Failures::By SSID
          - RADIUS Authentication::Top Failures::By Username
          - RADIUS Authentication::Top Successes::By Computername
          - RADIUS Authentication::Top Successes::By MAC
          - RADIUS Authentication::Top Successes::By SSID
          - RADIUS Authentication::Top Successes::By Username
          - Roles::Active
          - Roles::Active per device class
          - Roles::Active per device manufacturer
          - Roles::Active per device type
          - Roles::All
          - Security Events::Closed
          - Security Events::Open
          - Security Events::Open Active
          - Security Events::Open All
          - SSID::Active
          - SSID::All
          - Top Sponsors::All
          - User::Registration::Email
          - User::Registration::SMS
          - User::Registration::Sponsor
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DynamicReportSearchRequest'
      responses:
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DynamicReports
  /api/v1.1/reports:
    description: |-
      pf::UnifiedApi::Controller::DynamicReports

        configStore
          Get the dynamic reports config store

        search
          Execute a search on a specific dynamic report

        list
          List all the dynamic reports

        resource
          Get a dynamic report

        resource
          Get a dynamic report

        options
          options
    get:
      description: List reports
      operationId: api.v1.1.DynamicReports.list
      parameters: []
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - DynamicReports
  /api/v1/admin_api_audit_log/{admin_api_audit_log_id}:
    description: pf::UnifiedApi::Controller::AdminApiAuditLogs
    get:
      description: Get an item.
      operationId: api.v1.AdminApiAuditLogs.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: admin_api_audit_log_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/AdminApiAuditLog'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - AdminApiAuditLogs
  /api/v1/admin_api_audit_logs:
    description: pf::UnifiedApi::Controller::AdminApiAuditLogs
    get:
      description: List all items.
      operationId: api.v1.AdminApiAuditLogs.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - action
          - created_at
          - id
          - method
          - object_id
          - request
          - status
          - url
          - user_name
          items:
            enum:
            - action
            - created_at
            - id
            - method
            - object_id
            - request
            - status
            - url
            - user_name
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ id ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - id ASC
          items:
            enum:
            - action ASC
            - action DESC
            - created_at ASC
            - created_at DESC
            - id ASC
            - id DESC
            - method ASC
            - method DESC
            - object_id ASC
            - object_id DESC
            - request ASC
            - request DESC
            - status ASC
            - status DESC
            - url ASC
            - url DESC
            - user_name ASC
            - user_name DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminApiAuditLogsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - AdminApiAuditLogs
  /api/v1/admin_api_audit_logs/search:
    description: pf::UnifiedApi::Controller::AdminApiAuditLogs
    post:
      description: Search all items.
      operationId: api.v1.AdminApiAuditLogs.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - action
              - created_at
              - id
              - method
              - object_id
              - request
              - status
              - url
              - user_name
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: action
                    op: contains
                    value: foo
                  - field: created_at
                    op: contains
                    value: foo
                  - field: id
                    op: contains
                    value: foo
                  - field: method
                    op: contains
                    value: foo
                  - field: object_id
                    op: contains
                    value: foo
                  - field: request
                    op: contains
                    value: foo
                  - field: status
                    op: contains
                    value: foo
                  - field: url
                    op: contains
                    value: foo
                  - field: user_name
                    op: contains
                    value: foo
              sort:
              - id ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - action
                      - created_at
                      - id
                      - method
                      - object_id
                      - request
                      - status
                      - url
                      - user_name
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - action ASC
                      - action DESC
                      - created_at ASC
                      - created_at DESC
                      - id ASC
                      - id DESC
                      - method ASC
                      - method DESC
                      - object_id ASC
                      - object_id DESC
                      - request ASC
                      - request DESC
                      - status ASC
                      - status DESC
                      - url ASC
                      - url DESC
                      - user_name ASC
                      - user_name DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminApiAuditLogsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - AdminApiAuditLogs
  /api/v1/auth_log/{auth_log_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.AuthLogs.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: auth_log_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - AuthLogs
    description: pf::UnifiedApi::Controller::AuthLogs
    get:
      description: Get an item.
      operationId: api.v1.AuthLogs.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: auth_log_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/AuthLog'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - AuthLogs
    patch:
      description: Update an item.
      operationId: api.v1.AuthLogs.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: auth_log_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthLog'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - AuthLogs
    put:
      description: Replace an item.
      operationId: api.v1.AuthLogs.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: auth_log_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthLog'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - AuthLogs
  /api/v1/auth_logs:
    description: pf::UnifiedApi::Controller::AuthLogs
    get:
      description: List all items.
      operationId: api.v1.AuthLogs.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - attempted_at
          - completed_at
          - id
          - mac
          - pid
          - process_name
          - profile
          - source
          - status
          items:
            enum:
            - attempted_at
            - completed_at
            - id
            - mac
            - pid
            - process_name
            - profile
            - source
            - status
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ id ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - id ASC
          items:
            enum:
            - attempted_at ASC
            - attempted_at DESC
            - completed_at ASC
            - completed_at DESC
            - id ASC
            - id DESC
            - mac ASC
            - mac DESC
            - pid ASC
            - pid DESC
            - process_name ASC
            - process_name DESC
            - profile ASC
            - profile DESC
            - source ASC
            - source DESC
            - status ASC
            - status DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthLogsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - AuthLogs
    post:
      description: Create a new item.
      operationId: api.v1.AuthLogs.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AuthLog'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - AuthLogs
  /api/v1/auth_logs/search:
    description: pf::UnifiedApi::Controller::AuthLogs
    post:
      description: Search all items.
      operationId: api.v1.AuthLogs.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - attempted_at
              - completed_at
              - id
              - mac
              - pid
              - process_name
              - profile
              - source
              - status
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: attempted_at
                    op: contains
                    value: foo
                  - field: completed_at
                    op: contains
                    value: foo
                  - field: id
                    op: contains
                    value: foo
                  - field: mac
                    op: contains
                    value: foo
                  - field: pid
                    op: contains
                    value: foo
                  - field: process_name
                    op: contains
                    value: foo
                  - field: profile
                    op: contains
                    value: foo
                  - field: source
                    op: contains
                    value: foo
                  - field: status
                    op: contains
                    value: foo
              sort:
              - id ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - attempted_at
                      - completed_at
                      - id
                      - mac
                      - pid
                      - process_name
                      - profile
                      - source
                      - status
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - attempted_at ASC
                      - attempted_at DESC
                      - completed_at ASC
                      - completed_at DESC
                      - id ASC
                      - id DESC
                      - mac ASC
                      - mac DESC
                      - pid ASC
                      - pid DESC
                      - process_name ASC
                      - process_name DESC
                      - profile ASC
                      - profile DESC
                      - source ASC
                      - source DESC
                      - status ASC
                      - status DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthLogsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - AuthLogs
  /api/v1/class/{class_id}:
    description: pf::UnifiedApi::Controller::Classes
    get:
      description: Get an item.
      operationId: api.v1.Classes.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: class_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/Class'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Classes
  /api/v1/classes:
    description: pf::UnifiedApi::Controller::Classes
    get:
      description: List all items.
      operationId: api.v1.Classes.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - auto_enable
          - button_text
          - delay_by
          - description
          - enabled
          - external_command
          - grace_period
          - max_enable_url
          - max_enables
          - priority
          - redirect_url
          - security_event_id
          - target_category
          - template
          - vclose
          - vlan
          - window
          items:
            enum:
            - auto_enable
            - button_text
            - delay_by
            - description
            - enabled
            - external_command
            - grace_period
            - max_enable_url
            - max_enables
            - priority
            - redirect_url
            - security_event_id
            - target_category
            - template
            - vclose
            - vlan
            - window
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ security_event_id ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - security_event_id ASC
          items:
            enum:
            - auto_enable ASC
            - auto_enable DESC
            - button_text ASC
            - button_text DESC
            - delay_by ASC
            - delay_by DESC
            - description ASC
            - description DESC
            - enabled ASC
            - enabled DESC
            - external_command ASC
            - external_command DESC
            - grace_period ASC
            - grace_period DESC
            - max_enable_url ASC
            - max_enable_url DESC
            - max_enables ASC
            - max_enables DESC
            - priority ASC
            - priority DESC
            - redirect_url ASC
            - redirect_url DESC
            - security_event_id ASC
            - security_event_id DESC
            - target_category ASC
            - target_category DESC
            - template ASC
            - template DESC
            - vclose ASC
            - vclose DESC
            - vlan ASC
            - vlan DESC
            - window ASC
            - window DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassesList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Classes
  /api/v1/classes/search:
    description: pf::UnifiedApi::Controller::Classes
    post:
      description: Search all items.
      operationId: api.v1.Classes.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - auto_enable
              - button_text
              - delay_by
              - description
              - enabled
              - external_command
              - grace_period
              - max_enable_url
              - max_enables
              - priority
              - redirect_url
              - security_event_id
              - target_category
              - template
              - vclose
              - vlan
              - window
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: auto_enable
                    op: contains
                    value: foo
                  - field: button_text
                    op: contains
                    value: foo
                  - field: delay_by
                    op: contains
                    value: foo
                  - field: description
                    op: contains
                    value: foo
                  - field: enabled
                    op: contains
                    value: foo
                  - field: external_command
                    op: contains
                    value: foo
                  - field: grace_period
                    op: contains
                    value: foo
                  - field: max_enable_url
                    op: contains
                    value: foo
                  - field: max_enables
                    op: contains
                    value: foo
                  - field: priority
                    op: contains
                    value: foo
                  - field: redirect_url
                    op: contains
                    value: foo
                  - field: security_event_id
                    op: contains
                    value: foo
                  - field: target_category
                    op: contains
                    value: foo
                  - field: template
                    op: contains
                    value: foo
                  - field: vclose
                    op: contains
                    value: foo
                  - field: vlan
                    op: contains
                    value: foo
                  - field: window
                    op: contains
                    value: foo
              sort:
              - security_event_id ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - auto_enable
                      - button_text
                      - delay_by
                      - description
                      - enabled
                      - external_command
                      - grace_period
                      - max_enable_url
                      - max_enables
                      - priority
                      - redirect_url
                      - security_event_id
                      - target_category
                      - template
                      - vclose
                      - vlan
                      - window
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - auto_enable ASC
                      - auto_enable DESC
                      - button_text ASC
                      - button_text DESC
                      - delay_by ASC
                      - delay_by DESC
                      - description ASC
                      - description DESC
                      - enabled ASC
                      - enabled DESC
                      - external_command ASC
                      - external_command DESC
                      - grace_period ASC
                      - grace_period DESC
                      - max_enable_url ASC
                      - max_enable_url DESC
                      - max_enables ASC
                      - max_enables DESC
                      - priority ASC
                      - priority DESC
                      - redirect_url ASC
                      - redirect_url DESC
                      - security_event_id ASC
                      - security_event_id DESC
                      - target_category ASC
                      - target_category DESC
                      - template ASC
                      - template DESC
                      - vclose ASC
                      - vclose DESC
                      - vlan ASC
                      - vlan DESC
                      - window ASC
                      - window DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClassesList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Classes
  /api/v1/cluster/config:
    get:
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClusterConfig'
          description: Request successful. Response contains the cluster configuration.
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Cluster configuration.
      tags:
      - Cluster
  /api/v1/cluster/servers:
    get:
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ClusterServers'
          description: Request successful. Response contains the cluster members.
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Cluster members.
      tags:
      - Cluster
  /api/v1/config/admin_role/{admin_role_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.AdminRoles.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: admin_role_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/AdminRoles
    description: pf::UnifiedApi::Controller::Config::AdminRoles
    get:
      description: Get an item.
      operationId: api.v1.Config.AdminRoles.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: admin_role_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigAdminRoleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/AdminRoles
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.AdminRoles.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: admin_role_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigAdminRolesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/AdminRoles
    patch:
      description: Update an item.
      operationId: api.v1.Config.AdminRoles.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: admin_role_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigAdminRole'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/AdminRoles
    put:
      description: Replace an item.
      operationId: api.v1.Config.AdminRoles.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: admin_role_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigAdminRole'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/AdminRoles
  /api/v1/config/admin_roles:
    description: pf::UnifiedApi::Controller::Config::AdminRoles
    get:
      description: List all items.
      operationId: api.v1.Config.AdminRoles.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigAdminRolesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/AdminRoles
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.AdminRoles.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigAdminRolesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/AdminRoles
    post:
      description: Create a new item.
      operationId: api.v1.Config.AdminRoles.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigAdminRole'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/AdminRoles
  /api/v1/config/admin_roles/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::AdminRoles
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.AdminRoles.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigAdminRoleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/AdminRoles
  /api/v1/config/admin_roles/bulk_import:
    description: pf::UnifiedApi::Controller::Config::AdminRoles
    post:
      description: Create one or more items.
      operationId: api.v1.Config.AdminRoles.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigAdminRole'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigAdminRoleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/AdminRoles
  /api/v1/config/admin_roles/bulk_update:
    description: pf::UnifiedApi::Controller::Config::AdminRoles
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.AdminRoles.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigAdminRole'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigAdminRoleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/AdminRoles
  /api/v1/config/admin_roles/search:
    description: pf::UnifiedApi::Controller::Config::AdminRoles
    post:
      description: Search all items.
      operationId: api.v1.Config.AdminRoles.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigAdminRolesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/AdminRoles
  /api/v1/config/admin_roles/sort_items:
    description: pf::UnifiedApi::Controller::Config::AdminRoles
    patch:
      description: Sort items.
      operationId: api.v1.Config.AdminRoles.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigAdminRoleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/AdminRoles
  /api/v1/config/base/{base_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Bases.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: base_id
        required: true
        schema:
          enum:
          - active_active
          - admin_login
          - advanced
          - alerting
          - captive_portal
          - database
          - database_advanced
          - database_proxysql
          - dns_configuration
          - fencing
          - fingerbank_device_change
          - fleetdm
          - general
          - guests_admin_registration
          - inline
          - lets_encrypt
          - monit
          - mse_tab
          - network
          - node_import
          - parking
          - pfconnector
          - pfdhcp
          - ports
          - provisioning
          - radius_configuration
          - services
          - services_url
          - snmp_traps
          - webservices
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    get:
      description: Get an item.
      operationId: api.v1.Config.Bases.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: base_id
        required: true
        schema:
          enum:
          - active_active
          - admin_login
          - advanced
          - alerting
          - captive_portal
          - database
          - database_advanced
          - database_proxysql
          - dns_configuration
          - fencing
          - fingerbank_device_change
          - fleetdm
          - general
          - guests_admin_registration
          - inline
          - lets_encrypt
          - monit
          - mse_tab
          - network
          - node_import
          - parking
          - pfconnector
          - pfdhcp
          - ports
          - provisioning
          - radius_configuration
          - services
          - services_url
          - snmp_traps
          - webservices
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBaseWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Bases.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: base_id
        required: true
        schema:
          enum:
          - active_active
          - admin_login
          - advanced
          - alerting
          - captive_portal
          - database
          - database_advanced
          - database_proxysql
          - dns_configuration
          - fencing
          - fingerbank_device_change
          - fleetdm
          - general
          - guests_admin_registration
          - inline
          - lets_encrypt
          - monit
          - mse_tab
          - network
          - node_import
          - parking
          - pfconnector
          - pfdhcp
          - ports
          - provisioning
          - radius_configuration
          - services
          - services_url
          - snmp_traps
          - webservices
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBasesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
    patch:
      description: Update an item.
      operationId: api.v1.Config.Bases.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: base_id
        required: true
        schema:
          enum:
          - active_active
          - admin_login
          - advanced
          - alerting
          - captive_portal
          - database
          - database_advanced
          - database_proxysql
          - dns_configuration
          - fencing
          - fingerbank_device_change
          - fleetdm
          - general
          - guests_admin_registration
          - inline
          - lets_encrypt
          - monit
          - mse_tab
          - network
          - node_import
          - parking
          - pfconnector
          - pfdhcp
          - ports
          - provisioning
          - radius_configuration
          - services
          - services_url
          - snmp_traps
          - webservices
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigBase'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Bases
    put:
      description: Replace an item.
      operationId: api.v1.Config.Bases.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: base_id
        required: true
        schema:
          enum:
          - active_active
          - admin_login
          - advanced
          - alerting
          - captive_portal
          - database
          - database_advanced
          - database_proxysql
          - dns_configuration
          - fencing
          - fingerbank_device_change
          - fleetdm
          - general
          - guests_admin_registration
          - inline
          - lets_encrypt
          - monit
          - mse_tab
          - network
          - node_import
          - parking
          - pfconnector
          - pfdhcp
          - ports
          - provisioning
          - radius_configuration
          - services
          - services_url
          - snmp_traps
          - webservices
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigBase'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Bases
  /api/v1/config/bases:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    get:
      description: List all items.
      operationId: api.v1.Config.Bases.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBasesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Bases
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Bases.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBasesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
    post:
      description: Create a new item.
      operationId: api.v1.Config.Bases.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigBase'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Bases
  /api/v1/config/bases/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Bases.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBaseWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
  /api/v1/config/bases/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Bases.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigBase'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBaseWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
  /api/v1/config/bases/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Bases.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigBase'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBaseWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
  /api/v1/config/bases/search:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    post:
      description: Search all items.
      operationId: api.v1.Config.Bases.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBasesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Bases
  /api/v1/config/bases/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    patch:
      description: Sort items.
      operationId: api.v1.Config.Bases.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBaseWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
  /api/v1/config/billing_tier/{billing_tier_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.BillingTiers.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: billing_tier_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/BillingTiers
    description: pf::UnifiedApi::Controller::Config::BillingTiers
    get:
      description: Get an item.
      operationId: api.v1.Config.BillingTiers.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: billing_tier_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBillingTierWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/BillingTiers
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.BillingTiers.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: billing_tier_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBillingTiersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/BillingTiers
    patch:
      description: Update an item.
      operationId: api.v1.Config.BillingTiers.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: billing_tier_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigBillingTier'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/BillingTiers
    put:
      description: Replace an item.
      operationId: api.v1.Config.BillingTiers.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: billing_tier_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigBillingTier'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/BillingTiers
  /api/v1/config/billing_tiers:
    description: pf::UnifiedApi::Controller::Config::BillingTiers
    get:
      description: List all items.
      operationId: api.v1.Config.BillingTiers.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBillingTiersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/BillingTiers
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.BillingTiers.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBillingTiersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/BillingTiers
    post:
      description: Create a new item.
      operationId: api.v1.Config.BillingTiers.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigBillingTier'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/BillingTiers
  /api/v1/config/billing_tiers/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::BillingTiers
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.BillingTiers.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBillingTierWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/BillingTiers
  /api/v1/config/billing_tiers/bulk_import:
    description: pf::UnifiedApi::Controller::Config::BillingTiers
    post:
      description: Create one or more items.
      operationId: api.v1.Config.BillingTiers.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigBillingTier'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBillingTierWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/BillingTiers
  /api/v1/config/billing_tiers/bulk_update:
    description: pf::UnifiedApi::Controller::Config::BillingTiers
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.BillingTiers.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigBillingTier'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBillingTierWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/BillingTiers
  /api/v1/config/billing_tiers/search:
    description: pf::UnifiedApi::Controller::Config::BillingTiers
    post:
      description: Search all items.
      operationId: api.v1.Config.BillingTiers.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBillingTiersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/BillingTiers
  /api/v1/config/billing_tiers/sort_items:
    description: pf::UnifiedApi::Controller::Config::BillingTiers
    patch:
      description: Sort items.
      operationId: api.v1.Config.BillingTiers.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBillingTierWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/BillingTiers
  /api/v1/config/certificate/{certificate_id}:
    description: pf::UnifiedApi::Controller::Config::Certificates
    get:
      description: Get an item
      operationId: api.v1.Config::Certificates.get
      parameters:
      - in: path
        name: certificate_id
        required: true
        schema:
          enum:
          - http
          - radius
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCertificate'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Certificates
    put:
      description: Replace an item
      operationId: api.v1.Config::Certificates.replace
      parameters:
      - in: path
        name: certificate_id
        required: true
        schema:
          enum:
          - http
          - radius
          type: string
      - in: query
        name: check_chain
        required: true
        schema:
          enum:
          - enabled
          - disabled
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigCertificate'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/ErrorsWithMessage'
      tags:
      - Config/Certificates
  /api/v1/config/certificate/{certificate_id}/generate_csr:
    description: pf::UnifiedApi::Controller::Config::Certificates
    post:
      description: Generate a CSR for a certificate resource
      operationId: api.v1.Config::Certificates.generate_csr
      parameters:
      - in: path
        name: certificate_id
        required: true
        schema:
          enum:
          - http
          - radius
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigCertificateCSR'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Certificates
  /api/v1/config/certificate/{certificate_id}/info:
    description: pf::UnifiedApi::Controller::Config::Certificates
    get:
      description: Get an item
      operationId: api.v1.Config::Certificates.get
      parameters:
      - in: path
        name: certificate_id
        required: true
        schema:
          enum:
          - http
          - radius
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCertificateInfo'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Certificates
  /api/v1/config/certificate/{certificate_id}/lets_encrypt:
    description: pf::UnifiedApi::Controller::Config::Certificates
    put:
      description: Configure Let's Encrypt for a certificate resource
      operationId: api.v1.Config::Certificates.lets_encrypt_update
      parameters:
      - in: path
        name: certificate_id
        required: true
        schema:
          enum:
          - http
          - radius
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigCertificateLetsEncrypt'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Certificates
  /api/v1/config/certificates/lets_encrypt/test:
    description: pf::UnifiedApi::Controller::Config::Certificates
    get:
      description: Test if a specific domain is available for a Let's Encrypt HTTP
        challenge through PacketFence
      operationId: api.v1.Config::Certificates.lets_encrypt_test
      parameters:
      - in: query
        name: domain
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCertificateReturnValue'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Certificates
  /api/v1/config/cloud/{cloud_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Clouds.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: cloud_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Clouds
    description: pf::UnifiedApi::Controller::Config::Clouds
    get:
      description: Get an item.
      operationId: api.v1.Config.Clouds.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: cloud_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCloudWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Clouds
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Clouds.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: cloud_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCloudsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Clouds
    patch:
      description: Update an item.
      operationId: api.v1.Config.Clouds.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: cloud_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigCloud'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Clouds
    put:
      description: Replace an item.
      operationId: api.v1.Config.Clouds.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: cloud_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigCloud'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Clouds
  /api/v1/config/clouds:
    description: pf::UnifiedApi::Controller::Config::Clouds
    get:
      description: List all items.
      operationId: api.v1.Config.Clouds.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCloudsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Clouds
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Clouds.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCloudsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Clouds
    post:
      description: Create a new item.
      operationId: api.v1.Config.Clouds.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigCloud'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Clouds
  /api/v1/config/clouds/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::Clouds
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Clouds.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCloudWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Clouds
  /api/v1/config/clouds/bulk_import:
    description: pf::UnifiedApi::Controller::Config::Clouds
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Clouds.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigCloud'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCloudWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Clouds
  /api/v1/config/clouds/bulk_update:
    description: pf::UnifiedApi::Controller::Config::Clouds
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Clouds.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigCloud'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCloudWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Clouds
  /api/v1/config/clouds/search:
    description: pf::UnifiedApi::Controller::Config::Clouds
    post:
      description: Search all items.
      operationId: api.v1.Config.Clouds.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCloudsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Clouds
  /api/v1/config/clouds/sort_items:
    description: pf::UnifiedApi::Controller::Config::Clouds
    patch:
      description: Sort items.
      operationId: api.v1.Config.Clouds.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigCloudWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Clouds
  /api/v1/config/connection_profile/{connection_profile_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.ConnectionProfiles.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: connection_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
    description: |-
      pf::UnifiedApi::Controller::Config::ConnectionProfiles

        files
          files

        build_compare_functions
          build_compare_functions

        file_listing_info
          file_listing_info

        get_file
          get_file

        new_file
          new_file

        replace_file
          replace_file

        valid_file_path
          valid_file_path

        delete_path
          delete_path

        profileFilePath
          profileFilePath

        make_compare_functions
          make_compare_functions

        make_compare_function
          make_compare_function

        profileFileListing
          profileFileListing

        pathLookup
          parent paths

        standardPlaceholder
          standardPlaceholder

        mergePaths
          mergePaths

        file_excluded
          file_excluded

        isFileRevertible
          isFileRevertible

        _sync_files
          sync_files

        _sync_delete_files
          _sync_delete_files

        notDeletable
          notDeletable

        sortEntry
          Sorts the dir entries by name

        create_response
          create_response
    get:
      description: Get an item.
      operationId: api.v1.Config.ConnectionProfiles.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: connection_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectionProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.ConnectionProfiles.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: connection_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectionProfilesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
    patch:
      description: Update an item.
      operationId: api.v1.Config.ConnectionProfiles.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: connection_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigConnectionProfile'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/ConnectionProfiles
    put:
      description: Replace an item.
      operationId: api.v1.Config.ConnectionProfiles.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: connection_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigConnectionProfile'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/ConnectionProfiles
  /api/v1/config/connection_profile/{connection_profile_id}/files:
    get:
      description: Get files for a connection profile
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: connection_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          $ref: '#/components/responses/ConfigConnectionProfileFilesRoot'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
  /api/v1/config/connection_profile/{connection_profile_id}/files/{file_name}:
    delete:
      description: Delete a file for a connection profile
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
    parameters:
    - description: '`PRIMARY KEY`'
      in: path
      name: connection_profile_id
      required: true
      schema:
        enum:
        - default
        type: string
    - description: File name
      in: path
      name: file_name
      required: true
      schema:
        type: string
    patch:
      description: Replace a file for a connection profile
      requestBody:
        $ref: '#/components/requestBodies/ConfigConnectionProfileFile'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
    put:
      description: Upload a file for a connection profile
      requestBody:
        $ref: '#/components/requestBodies/ConfigConnectionProfileFile'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
  /api/v1/config/connection_profiles:
    description: |-
      pf::UnifiedApi::Controller::Config::ConnectionProfiles

        files
          files

        build_compare_functions
          build_compare_functions

        file_listing_info
          file_listing_info

        get_file
          get_file

        new_file
          new_file

        replace_file
          replace_file

        valid_file_path
          valid_file_path

        delete_path
          delete_path

        profileFilePath
          profileFilePath

        make_compare_functions
          make_compare_functions

        make_compare_function
          make_compare_function

        profileFileListing
          profileFileListing

        pathLookup
          parent paths

        standardPlaceholder
          standardPlaceholder

        mergePaths
          mergePaths

        file_excluded
          file_excluded

        isFileRevertible
          isFileRevertible

        _sync_files
          sync_files

        _sync_delete_files
          _sync_delete_files

        notDeletable
          notDeletable

        sortEntry
          Sorts the dir entries by name

        create_response
          create_response
    get:
      description: List all items.
      operationId: api.v1.Config.ConnectionProfiles.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectionProfilesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/ConnectionProfiles
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.ConnectionProfiles.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectionProfilesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
    post:
      description: Create a new item.
      operationId: api.v1.Config.ConnectionProfiles.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigConnectionProfile'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/ConnectionProfiles
  /api/v1/config/connection_profiles/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::ConnectionProfiles

        files
          files

        build_compare_functions
          build_compare_functions

        file_listing_info
          file_listing_info

        get_file
          get_file

        new_file
          new_file

        replace_file
          replace_file

        valid_file_path
          valid_file_path

        delete_path
          delete_path

        profileFilePath
          profileFilePath

        make_compare_functions
          make_compare_functions

        make_compare_function
          make_compare_function

        profileFileListing
          profileFileListing

        pathLookup
          parent paths

        standardPlaceholder
          standardPlaceholder

        mergePaths
          mergePaths

        file_excluded
          file_excluded

        isFileRevertible
          isFileRevertible

        _sync_files
          sync_files

        _sync_delete_files
          _sync_delete_files

        notDeletable
          notDeletable

        sortEntry
          Sorts the dir entries by name

        create_response
          create_response
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.ConnectionProfiles.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectionProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
  /api/v1/config/connection_profiles/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::ConnectionProfiles

        files
          files

        build_compare_functions
          build_compare_functions

        file_listing_info
          file_listing_info

        get_file
          get_file

        new_file
          new_file

        replace_file
          replace_file

        valid_file_path
          valid_file_path

        delete_path
          delete_path

        profileFilePath
          profileFilePath

        make_compare_functions
          make_compare_functions

        make_compare_function
          make_compare_function

        profileFileListing
          profileFileListing

        pathLookup
          parent paths

        standardPlaceholder
          standardPlaceholder

        mergePaths
          mergePaths

        file_excluded
          file_excluded

        isFileRevertible
          isFileRevertible

        _sync_files
          sync_files

        _sync_delete_files
          _sync_delete_files

        notDeletable
          notDeletable

        sortEntry
          Sorts the dir entries by name

        create_response
          create_response
    post:
      description: Create one or more items.
      operationId: api.v1.Config.ConnectionProfiles.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigConnectionProfile'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectionProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
  /api/v1/config/connection_profiles/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::ConnectionProfiles

        files
          files

        build_compare_functions
          build_compare_functions

        file_listing_info
          file_listing_info

        get_file
          get_file

        new_file
          new_file

        replace_file
          replace_file

        valid_file_path
          valid_file_path

        delete_path
          delete_path

        profileFilePath
          profileFilePath

        make_compare_functions
          make_compare_functions

        make_compare_function
          make_compare_function

        profileFileListing
          profileFileListing

        pathLookup
          parent paths

        standardPlaceholder
          standardPlaceholder

        mergePaths
          mergePaths

        file_excluded
          file_excluded

        isFileRevertible
          isFileRevertible

        _sync_files
          sync_files

        _sync_delete_files
          _sync_delete_files

        notDeletable
          notDeletable

        sortEntry
          Sorts the dir entries by name

        create_response
          create_response
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.ConnectionProfiles.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigConnectionProfile'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectionProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
  /api/v1/config/connection_profiles/search:
    description: |-
      pf::UnifiedApi::Controller::Config::ConnectionProfiles

        files
          files

        build_compare_functions
          build_compare_functions

        file_listing_info
          file_listing_info

        get_file
          get_file

        new_file
          new_file

        replace_file
          replace_file

        valid_file_path
          valid_file_path

        delete_path
          delete_path

        profileFilePath
          profileFilePath

        make_compare_functions
          make_compare_functions

        make_compare_function
          make_compare_function

        profileFileListing
          profileFileListing

        pathLookup
          parent paths

        standardPlaceholder
          standardPlaceholder

        mergePaths
          mergePaths

        file_excluded
          file_excluded

        isFileRevertible
          isFileRevertible

        _sync_files
          sync_files

        _sync_delete_files
          _sync_delete_files

        notDeletable
          notDeletable

        sortEntry
          Sorts the dir entries by name

        create_response
          create_response
    post:
      description: Search all items.
      operationId: api.v1.Config.ConnectionProfiles.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectionProfilesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/ConnectionProfiles
  /api/v1/config/connection_profiles/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::ConnectionProfiles

        files
          files

        build_compare_functions
          build_compare_functions

        file_listing_info
          file_listing_info

        get_file
          get_file

        new_file
          new_file

        replace_file
          replace_file

        valid_file_path
          valid_file_path

        delete_path
          delete_path

        profileFilePath
          profileFilePath

        make_compare_functions
          make_compare_functions

        make_compare_function
          make_compare_function

        profileFileListing
          profileFileListing

        pathLookup
          parent paths

        standardPlaceholder
          standardPlaceholder

        mergePaths
          mergePaths

        file_excluded
          file_excluded

        isFileRevertible
          isFileRevertible

        _sync_files
          sync_files

        _sync_delete_files
          _sync_delete_files

        notDeletable
          notDeletable

        sortEntry
          Sorts the dir entries by name

        create_response
          create_response
    patch:
      description: Sort items.
      operationId: api.v1.Config.ConnectionProfiles.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectionProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/ConnectionProfiles
  /api/v1/config/connector/{connector_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Connectors.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: connector_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Connectors
    description: pf::UnifiedApi::Controller::Config::Connectors
    get:
      description: Get an item.
      operationId: api.v1.Config.Connectors.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: connector_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectorWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Connectors
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Connectors.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: connector_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectorsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Connectors
    patch:
      description: Update an item.
      operationId: api.v1.Config.Connectors.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: connector_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigConnector'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Connectors
    put:
      description: Replace an item.
      operationId: api.v1.Config.Connectors.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: connector_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigConnector'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Connectors
  /api/v1/config/connectors:
    description: pf::UnifiedApi::Controller::Config::Connectors
    get:
      description: List all items.
      operationId: api.v1.Config.Connectors.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectorsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Connectors
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Connectors.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectorsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Connectors
    post:
      description: Create a new item.
      operationId: api.v1.Config.Connectors.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigConnector'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Connectors
  /api/v1/config/connectors/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::Connectors
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Connectors.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectorWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Connectors
  /api/v1/config/connectors/bulk_import:
    description: pf::UnifiedApi::Controller::Config::Connectors
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Connectors.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigConnector'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectorWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Connectors
  /api/v1/config/connectors/bulk_update:
    description: pf::UnifiedApi::Controller::Config::Connectors
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Connectors.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigConnector'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectorWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Connectors
  /api/v1/config/connectors/search:
    description: pf::UnifiedApi::Controller::Config::Connectors
    post:
      description: Search all items.
      operationId: api.v1.Config.Connectors.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectorsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Connectors
  /api/v1/config/connectors/sort_items:
    description: pf::UnifiedApi::Controller::Config::Connectors
    patch:
      description: Sort items.
      operationId: api.v1.Config.Connectors.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigConnectorWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Connectors
  /api/v1/config/domain/{domain_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Domains.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: domain_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Domains
    description: |-
      pf::UnifiedApi::Controller::Config::Domains

        get
          get a domain config, and strip host_id prefix.

        validate_input
          validate_input

        fields_to_mask
          fields_to_mask
    get:
      description: Get an item.
      operationId: api.v1.Config.Domains.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: domain_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigDomainWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Domains
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Domains.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: domain_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigDomainsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Domains
    patch:
      description: Update an item.
      operationId: api.v1.Config.Domains.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: domain_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigDomain'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Domains
    put:
      description: Replace an item.
      operationId: api.v1.Config.Domains.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: domain_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigDomain'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Domains
  /api/v1/config/domain/{domain_id}/join:
    post:
      deprecated: true
      description: Uses [Async](#/Async).
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: domain_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/ConfigDomainJoin'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Join Domain.
      tags:
      - Config/Domains
  /api/v1/config/domain/{domain_id}/rejoin:
    post:
      deprecated: true
      description: Uses [Async](#/Async).
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: domain_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/ConfigDomainJoin'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Rejoin Domain.
      tags:
      - Config/Domains
  /api/v1/config/domain/{domain_id}/test_join:
    get:
      deprecated: true
      description: Uses [Async](#/Async).
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: domain_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Test Domain Join.
      tags:
      - Config/Domains
  /api/v1/config/domain/{domain_id}/unjoin:
    post:
      deprecated: true
      description: Uses [Async](#/Async).
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: domain_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/ConfigDomainJoin'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Unjoin Domain.
      tags:
      - Config/Domains
  /api/v1/config/domains:
    description: |-
      pf::UnifiedApi::Controller::Config::Domains

        get
          get a domain config, and strip host_id prefix.

        validate_input
          validate_input

        fields_to_mask
          fields_to_mask
    get:
      description: List all items.
      operationId: api.v1.Config.Domains.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigDomainsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Domains
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Domains.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigDomainsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Domains
    post:
      description: Create a new item.
      operationId: api.v1.Config.Domains.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigDomain'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Domains
  /api/v1/config/domains/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::Domains

        get
          get a domain config, and strip host_id prefix.

        validate_input
          validate_input

        fields_to_mask
          fields_to_mask
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Domains.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigDomainWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Domains
  /api/v1/config/domains/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::Domains

        get
          get a domain config, and strip host_id prefix.

        validate_input
          validate_input

        fields_to_mask
          fields_to_mask
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Domains.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigDomain'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigDomainWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Domains
  /api/v1/config/domains/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::Domains

        get
          get a domain config, and strip host_id prefix.

        validate_input
          validate_input

        fields_to_mask
          fields_to_mask
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Domains.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigDomain'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigDomainWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Domains
  /api/v1/config/domains/search:
    description: |-
      pf::UnifiedApi::Controller::Config::Domains

        get
          get a domain config, and strip host_id prefix.

        validate_input
          validate_input

        fields_to_mask
          fields_to_mask
    post:
      description: Search all items.
      operationId: api.v1.Config.Domains.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigDomainsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Domains
  /api/v1/config/domains/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::Domains

        get
          get a domain config, and strip host_id prefix.

        validate_input
          validate_input

        fields_to_mask
          fields_to_mask
    patch:
      description: Sort items.
      operationId: api.v1.Config.Domains.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigDomainWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Domains
  /api/v1/config/event_handler/{event_handler_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.EventHandlers.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: event_handler_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventHandlers
    description: |-
      pf::UnifiedApi::Controller::Config::EventHandlers

        dry_run
          Dry run a regex parser configuration
    get:
      description: Get an item.
      operationId: api.v1.Config.EventHandlers.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: event_handler_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventHandlerWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventHandlers
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.EventHandlers.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: event_handler_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventHandlersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventHandlers
    patch:
      description: Update an item.
      operationId: api.v1.Config.EventHandlers.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: event_handler_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigEventHandler'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/EventHandlers
    put:
      description: Replace an item.
      operationId: api.v1.Config.EventHandlers.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: event_handler_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigEventHandler'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/EventHandlers
  /api/v1/config/event_handlers:
    description: |-
      pf::UnifiedApi::Controller::Config::EventHandlers

        dry_run
          Dry run a regex parser configuration
    get:
      description: List all items.
      operationId: api.v1.Config.EventHandlers.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventHandlersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/EventHandlers
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.EventHandlers.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventHandlersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventHandlers
    post:
      description: Create a new item.
      operationId: api.v1.Config.EventHandlers.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigEventHandler'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/EventHandlers
  /api/v1/config/event_handlers/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::EventHandlers

        dry_run
          Dry run a regex parser configuration
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.EventHandlers.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventHandlerWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventHandlers
  /api/v1/config/event_handlers/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::EventHandlers

        dry_run
          Dry run a regex parser configuration
    post:
      description: Create one or more items.
      operationId: api.v1.Config.EventHandlers.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigEventHandler'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventHandlerWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventHandlers
  /api/v1/config/event_handlers/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::EventHandlers

        dry_run
          Dry run a regex parser configuration
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.EventHandlers.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigEventHandler'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventHandlerWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventHandlers
  /api/v1/config/event_handlers/search:
    description: |-
      pf::UnifiedApi::Controller::Config::EventHandlers

        dry_run
          Dry run a regex parser configuration
    post:
      description: Search all items.
      operationId: api.v1.Config.EventHandlers.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventHandlersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/EventHandlers
  /api/v1/config/event_handlers/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::EventHandlers

        dry_run
          Dry run a regex parser configuration
    patch:
      description: Sort items.
      operationId: api.v1.Config.EventHandlers.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventHandlerWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventHandlers
  /api/v1/config/event_logger/{event_logger_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.EventLoggers.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: event_logger_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventLoggers
    description: Configure event loggers
    get:
      description: Get an item.
      operationId: api.v1.Config.EventLoggers.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: event_logger_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventLoggerWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventLoggers
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.EventLoggers.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: event_logger_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventLoggersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventLoggers
    patch:
      description: Update an item.
      operationId: api.v1.Config.EventLoggers.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: event_logger_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigEventLogger'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/EventLoggers
    put:
      description: Replace an item.
      operationId: api.v1.Config.EventLoggers.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: event_logger_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigEventLogger'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/EventLoggers
  /api/v1/config/event_loggers:
    description: Configure event loggers
    get:
      description: List all items.
      operationId: api.v1.Config.EventLoggers.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventLoggersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/EventLoggers
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.EventLoggers.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventLoggersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventLoggers
    post:
      description: Create a new item.
      operationId: api.v1.Config.EventLoggers.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigEventLogger'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/EventLoggers
  /api/v1/config/event_loggers/bulk_delete:
    description: Configure event loggers
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.EventLoggers.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventLoggerWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventLoggers
  /api/v1/config/event_loggers/bulk_import:
    description: Configure event loggers
    post:
      description: Create one or more items.
      operationId: api.v1.Config.EventLoggers.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigEventLogger'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventLoggerWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventLoggers
  /api/v1/config/event_loggers/bulk_update:
    description: Configure event loggers
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.EventLoggers.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigEventLogger'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventLoggerWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventLoggers
  /api/v1/config/event_loggers/search:
    description: Configure event loggers
    post:
      description: Search all items.
      operationId: api.v1.Config.EventLoggers.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventLoggersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/EventLoggers
  /api/v1/config/event_loggers/sort_items:
    description: Configure event loggers
    patch:
      description: Sort items.
      operationId: api.v1.Config.EventLoggers.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigEventLoggerWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/EventLoggers
  /api/v1/config/filter_engines/dhcp_filter/{dhcp_filter_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.FilterEngines.DHCP.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dhcp_filter_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DHCPFilters
    description: Configure dhcp filters
    get:
      description: Get an item.
      operationId: api.v1.Config.FilterEngines.DHCP.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dhcp_filter_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DHCPFilters
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.FilterEngines.DHCP.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dhcp_filter_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDHCPFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DHCPFilters
    patch:
      description: Update an item.
      operationId: api.v1.Config.FilterEngines.DHCP.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dhcp_filter_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilter'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/DHCPFilters
    put:
      description: Replace an item.
      operationId: api.v1.Config.FilterEngines.DHCP.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dhcp_filter_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/DHCPFilters
  /api/v1/config/filter_engines/dhcp_filters:
    description: Configure dhcp filters
    get:
      description: List all items.
      operationId: api.v1.Config.FilterEngines.DHCP.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDHCPFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/DHCPFilters
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.FilterEngines.DHCP.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDHCPFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DHCPFilters
    post:
      description: Create a new item.
      operationId: api.v1.Config.FilterEngines.DHCP.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/DHCPFilters
  /api/v1/config/filter_engines/dhcp_filters/bulk_delete:
    description: Configure dhcp filters
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.FilterEngines.DHCP.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DHCPFilters
  /api/v1/config/filter_engines/dhcp_filters/bulk_import:
    description: Configure dhcp filters
    post:
      description: Create one or more items.
      operationId: api.v1.Config.FilterEngines.DHCP.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DHCPFilters
  /api/v1/config/filter_engines/dhcp_filters/bulk_update:
    description: Configure dhcp filters
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.FilterEngines.DHCP.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DHCPFilters
  /api/v1/config/filter_engines/dhcp_filters/search:
    description: Configure dhcp filters
    post:
      description: Search all items.
      operationId: api.v1.Config.FilterEngines.DHCP.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDHCPFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/DHCPFilters
  /api/v1/config/filter_engines/dhcp_filters/sort_items:
    description: Configure dhcp filters
    patch:
      description: Sort items.
      operationId: api.v1.Config.FilterEngines.DHCP.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDHCPFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DHCPFilters
  /api/v1/config/filter_engines/dns_filter/{dns_filter_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.FilterEngines.DNS.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dns_filter_id
        required: true
        schema:
          enum:
          - pfdns
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DNSFilters
    description: Configure dns filters
    get:
      description: Get an item.
      operationId: api.v1.Config.FilterEngines.DNS.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dns_filter_id
        required: true
        schema:
          enum:
          - pfdns
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDNSFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DNSFilters
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.FilterEngines.DNS.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dns_filter_id
        required: true
        schema:
          enum:
          - pfdns
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDNSFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DNSFilters
    patch:
      description: Update an item.
      operationId: api.v1.Config.FilterEngines.DNS.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dns_filter_id
        required: true
        schema:
          enum:
          - pfdns
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesDNSFilter'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/DNSFilters
    put:
      description: Replace an item.
      operationId: api.v1.Config.FilterEngines.DNS.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dns_filter_id
        required: true
        schema:
          enum:
          - pfdns
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesDNSFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/DNSFilters
  /api/v1/config/filter_engines/dns_filters:
    description: Configure dns filters
    get:
      description: List all items.
      operationId: api.v1.Config.FilterEngines.DNS.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDNSFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/DNSFilters
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.FilterEngines.DNS.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDNSFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DNSFilters
    post:
      description: Create a new item.
      operationId: api.v1.Config.FilterEngines.DNS.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesDNSFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/DNSFilters
  /api/v1/config/filter_engines/dns_filters/bulk_delete:
    description: Configure dns filters
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.FilterEngines.DNS.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDNSFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DNSFilters
  /api/v1/config/filter_engines/dns_filters/bulk_import:
    description: Configure dns filters
    post:
      description: Create one or more items.
      operationId: api.v1.Config.FilterEngines.DNS.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesDNSFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDNSFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DNSFilters
  /api/v1/config/filter_engines/dns_filters/bulk_update:
    description: Configure dns filters
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.FilterEngines.DNS.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesDNSFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDNSFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DNSFilters
  /api/v1/config/filter_engines/dns_filters/search:
    description: Configure dns filters
    post:
      description: Search all items.
      operationId: api.v1.Config.FilterEngines.DNS.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDNSFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/DNSFilters
  /api/v1/config/filter_engines/dns_filters/sort_items:
    description: Configure dns filters
    patch:
      description: Sort items.
      operationId: api.v1.Config.FilterEngines.DNS.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesDNSFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/DNSFilters
  /api/v1/config/filter_engines/provisioning_filter/{provisioning_filter_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.FilterEngines.Provisioning.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: provisioning_filter_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/ProvisioningFilters
    description: Configure vlan filters
    get:
      description: Get an item.
      operationId: api.v1.Config.FilterEngines.Provisioning.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: provisioning_filter_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/ProvisioningFilters
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.FilterEngines.Provisioning.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: provisioning_filter_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/ProvisioningFilters
    patch:
      description: Update an item.
      operationId: api.v1.Config.FilterEngines.Provisioning.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: provisioning_filter_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilter'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/ProvisioningFilters
    put:
      description: Replace an item.
      operationId: api.v1.Config.FilterEngines.Provisioning.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: provisioning_filter_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/ProvisioningFilters
  /api/v1/config/filter_engines/provisioning_filters:
    description: Configure vlan filters
    get:
      description: List all items.
      operationId: api.v1.Config.FilterEngines.Provisioning.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/ProvisioningFilters
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.FilterEngines.Provisioning.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/ProvisioningFilters
    post:
      description: Create a new item.
      operationId: api.v1.Config.FilterEngines.Provisioning.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/ProvisioningFilters
  /api/v1/config/filter_engines/provisioning_filters/bulk_delete:
    description: Configure vlan filters
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.FilterEngines.Provisioning.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/ProvisioningFilters
  /api/v1/config/filter_engines/provisioning_filters/bulk_import:
    description: Configure vlan filters
    post:
      description: Create one or more items.
      operationId: api.v1.Config.FilterEngines.Provisioning.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/ProvisioningFilters
  /api/v1/config/filter_engines/provisioning_filters/bulk_update:
    description: Configure vlan filters
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.FilterEngines.Provisioning.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/ProvisioningFilters
  /api/v1/config/filter_engines/provisioning_filters/search:
    description: Configure vlan filters
    post:
      description: Search all items.
      operationId: api.v1.Config.FilterEngines.Provisioning.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/ProvisioningFilters
  /api/v1/config/filter_engines/provisioning_filters/sort_items:
    description: Configure vlan filters
    patch:
      description: Sort items.
      operationId: api.v1.Config.FilterEngines.Provisioning.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesProvisioningFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/ProvisioningFilters
  /api/v1/config/filter_engines/radius_filter/{radius_filter_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.FilterEngines.RADIUS.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: radius_filter_id
        required: true
        schema:
          enum:
          - EXAMPLE_Ethernet-EAP-Accept
          - EXAMPLE_Session-timeout_Idle-Timeout_Terminate_action
          - EXAMPLE_eap-tls-preProcess
          - EXAMPLE_ipad_by_name
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/RADIUSFilters
    description: Configure dns filters
    get:
      description: Get an item.
      operationId: api.v1.Config.FilterEngines.RADIUS.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: radius_filter_id
        required: true
        schema:
          enum:
          - EXAMPLE_Ethernet-EAP-Accept
          - EXAMPLE_Session-timeout_Idle-Timeout_Terminate_action
          - EXAMPLE_eap-tls-preProcess
          - EXAMPLE_ipad_by_name
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/RADIUSFilters
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.FilterEngines.RADIUS.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: radius_filter_id
        required: true
        schema:
          enum:
          - EXAMPLE_Ethernet-EAP-Accept
          - EXAMPLE_Session-timeout_Idle-Timeout_Terminate_action
          - EXAMPLE_eap-tls-preProcess
          - EXAMPLE_ipad_by_name
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/RADIUSFilters
    patch:
      description: Update an item.
      operationId: api.v1.Config.FilterEngines.RADIUS.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: radius_filter_id
        required: true
        schema:
          enum:
          - EXAMPLE_Ethernet-EAP-Accept
          - EXAMPLE_Session-timeout_Idle-Timeout_Terminate_action
          - EXAMPLE_eap-tls-preProcess
          - EXAMPLE_ipad_by_name
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilter'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/RADIUSFilters
    put:
      description: Replace an item.
      operationId: api.v1.Config.FilterEngines.RADIUS.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: radius_filter_id
        required: true
        schema:
          enum:
          - EXAMPLE_Ethernet-EAP-Accept
          - EXAMPLE_Session-timeout_Idle-Timeout_Terminate_action
          - EXAMPLE_eap-tls-preProcess
          - EXAMPLE_ipad_by_name
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/RADIUSFilters
  /api/v1/config/filter_engines/radius_filters:
    description: Configure dns filters
    get:
      description: List all items.
      operationId: api.v1.Config.FilterEngines.RADIUS.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/RADIUSFilters
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.FilterEngines.RADIUS.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/RADIUSFilters
    post:
      description: Create a new item.
      operationId: api.v1.Config.FilterEngines.RADIUS.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/RADIUSFilters
  /api/v1/config/filter_engines/radius_filters/bulk_delete:
    description: Configure dns filters
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.FilterEngines.RADIUS.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/RADIUSFilters
  /api/v1/config/filter_engines/radius_filters/bulk_import:
    description: Configure dns filters
    post:
      description: Create one or more items.
      operationId: api.v1.Config.FilterEngines.RADIUS.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/RADIUSFilters
  /api/v1/config/filter_engines/radius_filters/bulk_update:
    description: Configure dns filters
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.FilterEngines.RADIUS.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/RADIUSFilters
  /api/v1/config/filter_engines/radius_filters/search:
    description: Configure dns filters
    post:
      description: Search all items.
      operationId: api.v1.Config.FilterEngines.RADIUS.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/RADIUSFilters
  /api/v1/config/filter_engines/radius_filters/sort_items:
    description: Configure dns filters
    patch:
      description: Sort items.
      operationId: api.v1.Config.FilterEngines.RADIUS.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesRADIUSFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/RADIUSFilters
  /api/v1/config/filter_engines/switch_filter/{switch_filter_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.FilterEngines.Switch.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_filter_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/SwitchFilters
    description: Configure dns filters
    get:
      description: Get an item.
      operationId: api.v1.Config.FilterEngines.Switch.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_filter_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/SwitchFilters
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.FilterEngines.Switch.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_filter_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesSwitchFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/SwitchFilters
    patch:
      description: Update an item.
      operationId: api.v1.Config.FilterEngines.Switch.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_filter_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilter'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/SwitchFilters
    put:
      description: Replace an item.
      operationId: api.v1.Config.FilterEngines.Switch.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_filter_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/SwitchFilters
  /api/v1/config/filter_engines/switch_filters:
    description: Configure dns filters
    get:
      description: List all items.
      operationId: api.v1.Config.FilterEngines.Switch.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesSwitchFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/SwitchFilters
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.FilterEngines.Switch.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesSwitchFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/SwitchFilters
    post:
      description: Create a new item.
      operationId: api.v1.Config.FilterEngines.Switch.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/SwitchFilters
  /api/v1/config/filter_engines/switch_filters/bulk_delete:
    description: Configure dns filters
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.FilterEngines.Switch.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/SwitchFilters
  /api/v1/config/filter_engines/switch_filters/bulk_import:
    description: Configure dns filters
    post:
      description: Create one or more items.
      operationId: api.v1.Config.FilterEngines.Switch.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/SwitchFilters
  /api/v1/config/filter_engines/switch_filters/bulk_update:
    description: Configure dns filters
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.FilterEngines.Switch.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/SwitchFilters
  /api/v1/config/filter_engines/switch_filters/search:
    description: Configure dns filters
    post:
      description: Search all items.
      operationId: api.v1.Config.FilterEngines.Switch.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesSwitchFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/SwitchFilters
  /api/v1/config/filter_engines/switch_filters/sort_items:
    description: Configure dns filters
    patch:
      description: Sort items.
      operationId: api.v1.Config.FilterEngines.Switch.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesSwitchFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/SwitchFilters
  /api/v1/config/filter_engines/vlan_filter/{vlan_filter_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.FilterEngines.Vlan.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: vlan_filter_id
        required: true
        schema:
          enum:
          - EXAMPLE_Autoregister_Printer_Scanner
          - EXAMPLE_Autoregister_if_user
          - EXAMPLE_Autoregister_windows_devices
          - EXAMPLE_Detect_VOIP
          - EXAMPLE_No_Internet_for_lunch
          - EXAMPLE_Reject_User_Unless_Machine
          - EXAMPLE_Reject_specific_MAC
          - EXAMPLE_Trigger_event_if_user
          - pf_deauth_from_wireless_secure
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/VlanFilters
    description: Configure vlan filters
    get:
      description: Get an item.
      operationId: api.v1.Config.FilterEngines.Vlan.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: vlan_filter_id
        required: true
        schema:
          enum:
          - EXAMPLE_Autoregister_Printer_Scanner
          - EXAMPLE_Autoregister_if_user
          - EXAMPLE_Autoregister_windows_devices
          - EXAMPLE_Detect_VOIP
          - EXAMPLE_No_Internet_for_lunch
          - EXAMPLE_Reject_User_Unless_Machine
          - EXAMPLE_Reject_specific_MAC
          - EXAMPLE_Trigger_event_if_user
          - pf_deauth_from_wireless_secure
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesVlanFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/VlanFilters
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.FilterEngines.Vlan.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: vlan_filter_id
        required: true
        schema:
          enum:
          - EXAMPLE_Autoregister_Printer_Scanner
          - EXAMPLE_Autoregister_if_user
          - EXAMPLE_Autoregister_windows_devices
          - EXAMPLE_Detect_VOIP
          - EXAMPLE_No_Internet_for_lunch
          - EXAMPLE_Reject_User_Unless_Machine
          - EXAMPLE_Reject_specific_MAC
          - EXAMPLE_Trigger_event_if_user
          - pf_deauth_from_wireless_secure
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesVlanFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/VlanFilters
    patch:
      description: Update an item.
      operationId: api.v1.Config.FilterEngines.Vlan.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: vlan_filter_id
        required: true
        schema:
          enum:
          - EXAMPLE_Autoregister_Printer_Scanner
          - EXAMPLE_Autoregister_if_user
          - EXAMPLE_Autoregister_windows_devices
          - EXAMPLE_Detect_VOIP
          - EXAMPLE_No_Internet_for_lunch
          - EXAMPLE_Reject_User_Unless_Machine
          - EXAMPLE_Reject_specific_MAC
          - EXAMPLE_Trigger_event_if_user
          - pf_deauth_from_wireless_secure
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesVlanFilter'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/VlanFilters
    put:
      description: Replace an item.
      operationId: api.v1.Config.FilterEngines.Vlan.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: vlan_filter_id
        required: true
        schema:
          enum:
          - EXAMPLE_Autoregister_Printer_Scanner
          - EXAMPLE_Autoregister_if_user
          - EXAMPLE_Autoregister_windows_devices
          - EXAMPLE_Detect_VOIP
          - EXAMPLE_No_Internet_for_lunch
          - EXAMPLE_Reject_User_Unless_Machine
          - EXAMPLE_Reject_specific_MAC
          - EXAMPLE_Trigger_event_if_user
          - pf_deauth_from_wireless_secure
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesVlanFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/VlanFilters
  /api/v1/config/filter_engines/vlan_filters:
    description: Configure vlan filters
    get:
      description: List all items.
      operationId: api.v1.Config.FilterEngines.Vlan.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesVlanFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/VlanFilters
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.FilterEngines.Vlan.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesVlanFiltersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/VlanFilters
    post:
      description: Create a new item.
      operationId: api.v1.Config.FilterEngines.Vlan.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFilterEnginesVlanFilter'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FilterEngines/VlanFilters
  /api/v1/config/filter_engines/vlan_filters/bulk_delete:
    description: Configure vlan filters
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.FilterEngines.Vlan.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesVlanFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/VlanFilters
  /api/v1/config/filter_engines/vlan_filters/bulk_import:
    description: Configure vlan filters
    post:
      description: Create one or more items.
      operationId: api.v1.Config.FilterEngines.Vlan.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesVlanFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesVlanFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/VlanFilters
  /api/v1/config/filter_engines/vlan_filters/bulk_update:
    description: Configure vlan filters
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.FilterEngines.Vlan.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFilterEnginesVlanFilter'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesVlanFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/VlanFilters
  /api/v1/config/filter_engines/vlan_filters/search:
    description: Configure vlan filters
    post:
      description: Search all items.
      operationId: api.v1.Config.FilterEngines.Vlan.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesVlanFiltersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FilterEngines/VlanFilters
  /api/v1/config/filter_engines/vlan_filters/sort_items:
    description: Configure vlan filters
    patch:
      description: Sort items.
      operationId: api.v1.Config.FilterEngines.Vlan.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFilterEnginesVlanFilterWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FilterEngines/VlanFilters
  /api/v1/config/fingerbank_setting/{fingerbank_setting_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.FingerbankSettings.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fingerbank_setting_id
        required: true
        schema:
          enum:
          - collector
          - proxy
          - query
          - upstream
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    get:
      description: Get an item.
      operationId: api.v1.Config.FingerbankSettings.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fingerbank_setting_id
        required: true
        schema:
          enum:
          - collector
          - proxy
          - query
          - upstream
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.FingerbankSettings.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fingerbank_setting_id
        required: true
        schema:
          enum:
          - collector
          - proxy
          - query
          - upstream
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
    patch:
      description: Update an item.
      operationId: api.v1.Config.FingerbankSettings.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fingerbank_setting_id
        required: true
        schema:
          enum:
          - collector
          - proxy
          - query
          - upstream
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFingerbankSetting'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FingerbankSettings
    put:
      description: Replace an item.
      operationId: api.v1.Config.FingerbankSettings.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fingerbank_setting_id
        required: true
        schema:
          enum:
          - collector
          - proxy
          - query
          - upstream
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFingerbankSetting'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FingerbankSettings
  /api/v1/config/fingerbank_settings:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    get:
      description: List all items.
      operationId: api.v1.Config.FingerbankSettings.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FingerbankSettings
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.FingerbankSettings.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
    post:
      description: Create a new item.
      operationId: api.v1.Config.FingerbankSettings.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFingerbankSetting'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FingerbankSettings
  /api/v1/config/fingerbank_settings/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.FingerbankSettings.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
  /api/v1/config/fingerbank_settings/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    post:
      description: Create one or more items.
      operationId: api.v1.Config.FingerbankSettings.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFingerbankSetting'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
  /api/v1/config/fingerbank_settings/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.FingerbankSettings.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFingerbankSetting'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
  /api/v1/config/fingerbank_settings/search:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    post:
      description: Search all items.
      operationId: api.v1.Config.FingerbankSettings.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FingerbankSettings
  /api/v1/config/fingerbank_settings/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    patch:
      description: Sort items.
      operationId: api.v1.Config.FingerbankSettings.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
  /api/v1/config/firewall/{firewall_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Firewalls.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: firewall_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Firewalls
    description: pf::UnifiedApi::Controller::Config::Firewalls
    get:
      description: Get an item.
      operationId: api.v1.Config.Firewalls.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: firewall_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFirewallWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Firewalls
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Firewalls.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: firewall_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFirewallsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Firewalls
    patch:
      description: Update an item.
      operationId: api.v1.Config.Firewalls.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: firewall_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFirewall'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Firewalls
    put:
      description: Replace an item.
      operationId: api.v1.Config.Firewalls.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: firewall_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFirewall'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Firewalls
  /api/v1/config/firewalls:
    description: pf::UnifiedApi::Controller::Config::Firewalls
    get:
      description: List all items.
      operationId: api.v1.Config.Firewalls.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFirewallsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Firewalls
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Firewalls.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFirewallsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Firewalls
    post:
      description: Create a new item.
      operationId: api.v1.Config.Firewalls.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFirewall'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Firewalls
  /api/v1/config/firewalls/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::Firewalls
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Firewalls.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFirewallWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Firewalls
  /api/v1/config/firewalls/bulk_import:
    description: pf::UnifiedApi::Controller::Config::Firewalls
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Firewalls.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFirewall'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFirewallWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Firewalls
  /api/v1/config/firewalls/bulk_update:
    description: pf::UnifiedApi::Controller::Config::Firewalls
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Firewalls.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFirewall'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFirewallWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Firewalls
  /api/v1/config/firewalls/search:
    description: pf::UnifiedApi::Controller::Config::Firewalls
    post:
      description: Search all items.
      operationId: api.v1.Config.Firewalls.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFirewallsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Firewalls
  /api/v1/config/firewalls/sort_items:
    description: pf::UnifiedApi::Controller::Config::Firewalls
    patch:
      description: Sort items.
      operationId: api.v1.Config.Firewalls.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFirewallWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Firewalls
  /api/v1/config/flatten_condition:
    post:
      requestBody:
        $ref: '#/components/requestBodies/ConfigConditionFlatten'
      responses:
        '200':
          $ref: '#/components/responses/ConfigConditionFlatten'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Flatten condition object to string.
      tags:
      - Config/FilterEngines/DHCPFilters
      - Config/FilterEngines/DNSFilters
      - Config/FilterEngines/RADIUSFilters
      - Config/FilterEngines/SwitchFilters
      - Config/FilterEngines/VlanFilters
  /api/v1/config/floating_device/{floating_device_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.FloatingDevices.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: floating_device_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FloatingDevices
    description: Configure floating devices
    get:
      description: Get an item.
      operationId: api.v1.Config.FloatingDevices.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: floating_device_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFloatingDeviceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FloatingDevices
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.FloatingDevices.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: floating_device_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFloatingDevicesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FloatingDevices
    patch:
      description: Update an item.
      operationId: api.v1.Config.FloatingDevices.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: floating_device_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFloatingDevice'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FloatingDevices
    put:
      description: Replace an item.
      operationId: api.v1.Config.FloatingDevices.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: floating_device_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFloatingDevice'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FloatingDevices
  /api/v1/config/floating_devices:
    description: Configure floating devices
    get:
      description: List all items.
      operationId: api.v1.Config.FloatingDevices.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFloatingDevicesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FloatingDevices
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.FloatingDevices.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFloatingDevicesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FloatingDevices
    post:
      description: Create a new item.
      operationId: api.v1.Config.FloatingDevices.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFloatingDevice'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FloatingDevices
  /api/v1/config/floating_devices/bulk_delete:
    description: Configure floating devices
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.FloatingDevices.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFloatingDeviceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FloatingDevices
  /api/v1/config/floating_devices/bulk_import:
    description: Configure floating devices
    post:
      description: Create one or more items.
      operationId: api.v1.Config.FloatingDevices.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFloatingDevice'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFloatingDeviceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FloatingDevices
  /api/v1/config/floating_devices/bulk_update:
    description: Configure floating devices
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.FloatingDevices.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFloatingDevice'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFloatingDeviceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FloatingDevices
  /api/v1/config/floating_devices/search:
    description: Configure floating devices
    post:
      description: Search all items.
      operationId: api.v1.Config.FloatingDevices.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFloatingDevicesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FloatingDevices
  /api/v1/config/floating_devices/sort_items:
    description: Configure floating devices
    patch:
      description: Sort items.
      operationId: api.v1.Config.FloatingDevices.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFloatingDeviceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FloatingDevices
  /api/v1/config/interface/{interface_id}:
    delete:
      description: Remove a virtual interface
      parameters:
      - in: path
        name: interface_id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Deleted an interface
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '412':
          $ref: '#/components/responses/Message'
          description: Failed to respect precondition to delete interface
      tags:
      - Config/Interfaces
    get:
      description: Get an item
      parameters:
      - in: path
        name: interface_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigInterfaceGet'
          description: Item
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Interfaces
    put:
      description: Update the configuration of an interface
      parameters:
      - in: path
        name: interface_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigInterfaceUpdate'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Interfaces
  /api/v1/config/interface/{interface_id}/down:
    post:
      description: Put an interface down
      parameters:
      - in: path
        name: interface_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '412':
          $ref: '#/components/responses/Message'
          description: Failed to respect precondition to put interface down
      tags:
      - Config/Interfaces
  /api/v1/config/interface/{interface_id}/up:
    post:
      description: Put an interface up
      parameters:
      - in: path
        name: interface_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '412':
          $ref: '#/components/responses/Message'
          description: Failed to respect precondition to put interface up
      tags:
      - Config/Interfaces
  /api/v1/config/interfaces:
    get:
      description: List all interfaces
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigInterfacesList'
          description: Item
        '401':
          $ref: '#/components/responses/Unauthorized'
      tags:
      - Config/Interfaces
    post:
      description: Create a virtual interface
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigInterfaceCreate'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Interfaces
  /api/v1/config/l2_network/{network_id}:
    description: pf::UnifiedApi::Controller::Config::L2Networks
    get:
      description: Get an item.
      operationId: api.v1.Config.L2Networks.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigL2NetworkWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/L2Networks
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.L2Networks.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigL2NetworksMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/L2Networks
    patch:
      description: Update an item.
      operationId: api.v1.Config.L2Networks.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigL2Network'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/L2Networks
    put:
      description: Replace an item.
      operationId: api.v1.Config.L2Networks.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigL2Network'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/L2Networks
  /api/v1/config/l2_networks:
    description: pf::UnifiedApi::Controller::Config::L2Networks
    get:
      description: List all items.
      operationId: api.v1.Config.L2Networks.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigL2NetworksList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/L2Networks
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.L2Networks.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigL2NetworksMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/L2Networks
  /api/v1/config/maintenance_task/{maintenance_task_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.MaintenanceTasks.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: maintenance_task_id
        required: true
        schema:
          enum:
          - acct_cleanup
          - acct_maintenance
          - admin_api_audit_log_cleanup
          - auth_log_cleanup
          - bandwidth_maintenance
          - certificates_check
          - cleanup_chi_database_cache
          - cluster_check
          - dns_audit_log_cleanup
          - fingerbank_data_update
          - flush_dns_audit_log
          - flush_radius_audit_log
          - ip4log_cleanup
          - ip6log_cleanup
          - locationlog_cleanup
          - node_cleanup
          - node_current_session_cleanup
          - nodes_maintenance
          - option82_query
          - password_of_the_day
          - person_cleanup
          - pfflow
          - pki_certificates_check
          - provisioning_compliance_poll
          - purge_binary_logs
          - radius_audit_log_cleanup
          - security_event_maintenance
          - switch_cache_lldpLocalPort_description
          - ubiquiti_ap_mac_to_ip
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/MaintenanceTasks
    description: |-
      pf::UnifiedApi::Controller::Config::MaintenanceTasks

        form_process_parameters_for_cleanup
          form_process_parameters_for_cleanup
    get:
      description: Get an item.
      operationId: api.v1.Config.MaintenanceTasks.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: maintenance_task_id
        required: true
        schema:
          enum:
          - acct_cleanup
          - acct_maintenance
          - admin_api_audit_log_cleanup
          - auth_log_cleanup
          - bandwidth_maintenance
          - certificates_check
          - cleanup_chi_database_cache
          - cluster_check
          - dns_audit_log_cleanup
          - fingerbank_data_update
          - flush_dns_audit_log
          - flush_radius_audit_log
          - ip4log_cleanup
          - ip6log_cleanup
          - locationlog_cleanup
          - node_cleanup
          - node_current_session_cleanup
          - nodes_maintenance
          - option82_query
          - password_of_the_day
          - person_cleanup
          - pfflow
          - pki_certificates_check
          - provisioning_compliance_poll
          - purge_binary_logs
          - radius_audit_log_cleanup
          - security_event_maintenance
          - switch_cache_lldpLocalPort_description
          - ubiquiti_ap_mac_to_ip
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMaintenanceTaskWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/MaintenanceTasks
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.MaintenanceTasks.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: maintenance_task_id
        required: true
        schema:
          enum:
          - acct_cleanup
          - acct_maintenance
          - admin_api_audit_log_cleanup
          - auth_log_cleanup
          - bandwidth_maintenance
          - certificates_check
          - cleanup_chi_database_cache
          - cluster_check
          - dns_audit_log_cleanup
          - fingerbank_data_update
          - flush_dns_audit_log
          - flush_radius_audit_log
          - ip4log_cleanup
          - ip6log_cleanup
          - locationlog_cleanup
          - node_cleanup
          - node_current_session_cleanup
          - nodes_maintenance
          - option82_query
          - password_of_the_day
          - person_cleanup
          - pfflow
          - pki_certificates_check
          - provisioning_compliance_poll
          - purge_binary_logs
          - radius_audit_log_cleanup
          - security_event_maintenance
          - switch_cache_lldpLocalPort_description
          - ubiquiti_ap_mac_to_ip
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMaintenanceTasksMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/MaintenanceTasks
    patch:
      description: Update an item.
      operationId: api.v1.Config.MaintenanceTasks.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: maintenance_task_id
        required: true
        schema:
          enum:
          - acct_cleanup
          - acct_maintenance
          - admin_api_audit_log_cleanup
          - auth_log_cleanup
          - bandwidth_maintenance
          - certificates_check
          - cleanup_chi_database_cache
          - cluster_check
          - dns_audit_log_cleanup
          - fingerbank_data_update
          - flush_dns_audit_log
          - flush_radius_audit_log
          - ip4log_cleanup
          - ip6log_cleanup
          - locationlog_cleanup
          - node_cleanup
          - node_current_session_cleanup
          - nodes_maintenance
          - option82_query
          - password_of_the_day
          - person_cleanup
          - pfflow
          - pki_certificates_check
          - provisioning_compliance_poll
          - purge_binary_logs
          - radius_audit_log_cleanup
          - security_event_maintenance
          - switch_cache_lldpLocalPort_description
          - ubiquiti_ap_mac_to_ip
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigMaintenanceTask'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/MaintenanceTasks
    put:
      description: Replace an item.
      operationId: api.v1.Config.MaintenanceTasks.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: maintenance_task_id
        required: true
        schema:
          enum:
          - acct_cleanup
          - acct_maintenance
          - admin_api_audit_log_cleanup
          - auth_log_cleanup
          - bandwidth_maintenance
          - certificates_check
          - cleanup_chi_database_cache
          - cluster_check
          - dns_audit_log_cleanup
          - fingerbank_data_update
          - flush_dns_audit_log
          - flush_radius_audit_log
          - ip4log_cleanup
          - ip6log_cleanup
          - locationlog_cleanup
          - node_cleanup
          - node_current_session_cleanup
          - nodes_maintenance
          - option82_query
          - password_of_the_day
          - person_cleanup
          - pfflow
          - pki_certificates_check
          - provisioning_compliance_poll
          - purge_binary_logs
          - radius_audit_log_cleanup
          - security_event_maintenance
          - switch_cache_lldpLocalPort_description
          - ubiquiti_ap_mac_to_ip
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigMaintenanceTask'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/MaintenanceTasks
  /api/v1/config/maintenance_tasks:
    description: |-
      pf::UnifiedApi::Controller::Config::MaintenanceTasks

        form_process_parameters_for_cleanup
          form_process_parameters_for_cleanup
    get:
      description: List all items.
      operationId: api.v1.Config.MaintenanceTasks.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMaintenanceTasksList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/MaintenanceTasks
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.MaintenanceTasks.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMaintenanceTasksMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/MaintenanceTasks
    post:
      description: Create a new item.
      operationId: api.v1.Config.MaintenanceTasks.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigMaintenanceTask'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/MaintenanceTasks
  /api/v1/config/maintenance_tasks/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::MaintenanceTasks

        form_process_parameters_for_cleanup
          form_process_parameters_for_cleanup
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.MaintenanceTasks.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMaintenanceTaskWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/MaintenanceTasks
  /api/v1/config/maintenance_tasks/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::MaintenanceTasks

        form_process_parameters_for_cleanup
          form_process_parameters_for_cleanup
    post:
      description: Create one or more items.
      operationId: api.v1.Config.MaintenanceTasks.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigMaintenanceTask'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMaintenanceTaskWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/MaintenanceTasks
  /api/v1/config/maintenance_tasks/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::MaintenanceTasks

        form_process_parameters_for_cleanup
          form_process_parameters_for_cleanup
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.MaintenanceTasks.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigMaintenanceTask'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMaintenanceTaskWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/MaintenanceTasks
  /api/v1/config/maintenance_tasks/search:
    description: |-
      pf::UnifiedApi::Controller::Config::MaintenanceTasks

        form_process_parameters_for_cleanup
          form_process_parameters_for_cleanup
    post:
      description: Search all items.
      operationId: api.v1.Config.MaintenanceTasks.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMaintenanceTasksList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/MaintenanceTasks
  /api/v1/config/maintenance_tasks/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::MaintenanceTasks

        form_process_parameters_for_cleanup
          form_process_parameters_for_cleanup
    patch:
      description: Sort items.
      operationId: api.v1.Config.MaintenanceTasks.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMaintenanceTaskWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/MaintenanceTasks
  /api/v1/config/mfa/{mfa_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Mfas.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: mfa_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Mfas
    description: pf::UnifiedApi::Controller::Config::Mfas
    get:
      description: Get an item.
      operationId: api.v1.Config.Mfas.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: mfa_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMfaWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Mfas
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Mfas.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: mfa_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMfasMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Mfas
    patch:
      description: Update an item.
      operationId: api.v1.Config.Mfas.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: mfa_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigMfa'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Mfas
    put:
      description: Replace an item.
      operationId: api.v1.Config.Mfas.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: mfa_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigMfa'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Mfas
  /api/v1/config/mfas:
    description: pf::UnifiedApi::Controller::Config::Mfas
    get:
      description: List all items.
      operationId: api.v1.Config.Mfas.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMfasList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Mfas
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Mfas.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMfasMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Mfas
    post:
      description: Create a new item.
      operationId: api.v1.Config.Mfas.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigMfa'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Mfas
  /api/v1/config/mfas/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::Mfas
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Mfas.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMfaWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Mfas
  /api/v1/config/mfas/bulk_import:
    description: pf::UnifiedApi::Controller::Config::Mfas
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Mfas.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigMfa'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMfaWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Mfas
  /api/v1/config/mfas/bulk_update:
    description: pf::UnifiedApi::Controller::Config::Mfas
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Mfas.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigMfa'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMfaWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Mfas
  /api/v1/config/mfas/search:
    description: pf::UnifiedApi::Controller::Config::Mfas
    post:
      description: Search all items.
      operationId: api.v1.Config.Mfas.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMfasList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Mfas
  /api/v1/config/mfas/sort_items:
    description: pf::UnifiedApi::Controller::Config::Mfas
    patch:
      description: Sort items.
      operationId: api.v1.Config.Mfas.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigMfaWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Mfas
  /api/v1/config/network_behavior_policies:
    description: pf::UnifiedApi::Controller::Config::NetworkBehaviorPolicies
    get:
      description: List all items.
      operationId: api.v1.Config.NetworkBehaviorPolicies.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigNetworkBehaviorPoliciesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/NetworkBehaviorPolicies
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.NetworkBehaviorPolicies.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigNetworkBehaviorPoliciesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/NetworkBehaviorPolicies
    post:
      description: Create a new item.
      operationId: api.v1.Config.NetworkBehaviorPolicies.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigNetworkBehaviorPolicy'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/NetworkBehaviorPolicies
  /api/v1/config/network_behavior_policies/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::NetworkBehaviorPolicies
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.NetworkBehaviorPolicies.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigNetworkBehaviorPolicyWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/NetworkBehaviorPolicies
  /api/v1/config/network_behavior_policies/bulk_import:
    description: pf::UnifiedApi::Controller::Config::NetworkBehaviorPolicies
    post:
      description: Create one or more items.
      operationId: api.v1.Config.NetworkBehaviorPolicies.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigNetworkBehaviorPolicy'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigNetworkBehaviorPolicyWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/NetworkBehaviorPolicies
  /api/v1/config/network_behavior_policies/bulk_update:
    description: pf::UnifiedApi::Controller::Config::NetworkBehaviorPolicies
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.NetworkBehaviorPolicies.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigNetworkBehaviorPolicy'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigNetworkBehaviorPolicyWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/NetworkBehaviorPolicies
  /api/v1/config/network_behavior_policies/search:
    description: pf::UnifiedApi::Controller::Config::NetworkBehaviorPolicies
    post:
      description: Search all items.
      operationId: api.v1.Config.NetworkBehaviorPolicies.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigNetworkBehaviorPoliciesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/NetworkBehaviorPolicies
  /api/v1/config/network_behavior_policies/sort_items:
    description: pf::UnifiedApi::Controller::Config::NetworkBehaviorPolicies
    patch:
      description: Sort items.
      operationId: api.v1.Config.NetworkBehaviorPolicies.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigNetworkBehaviorPolicyWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/NetworkBehaviorPolicies
  /api/v1/config/network_behavior_policy/{network_behavior_policy_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.NetworkBehaviorPolicies.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_behavior_policy_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/NetworkBehaviorPolicies
    description: pf::UnifiedApi::Controller::Config::NetworkBehaviorPolicies
    get:
      description: Get an item.
      operationId: api.v1.Config.NetworkBehaviorPolicies.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_behavior_policy_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigNetworkBehaviorPolicyWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/NetworkBehaviorPolicies
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.NetworkBehaviorPolicies.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_behavior_policy_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigNetworkBehaviorPoliciesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/NetworkBehaviorPolicies
    patch:
      description: Update an item.
      operationId: api.v1.Config.NetworkBehaviorPolicies.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_behavior_policy_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigNetworkBehaviorPolicy'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/NetworkBehaviorPolicies
    put:
      description: Replace an item.
      operationId: api.v1.Config.NetworkBehaviorPolicies.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_behavior_policy_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigNetworkBehaviorPolicy'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/NetworkBehaviorPolicies
  /api/v1/config/parse_condition:
    post:
      requestBody:
        $ref: '#/components/requestBodies/ConfigConditionParse'
      responses:
        '200':
          $ref: '#/components/responses/ConfigConditionParse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Parse condition string to object.
      tags:
      - Config/FilterEngines/DHCPFilters
      - Config/FilterEngines/DNSFilters
      - Config/FilterEngines/RADIUSFilters
      - Config/FilterEngines/SwitchFilters
      - Config/FilterEngines/VlanFilters
  /api/v1/config/pki_provider/{pki_provider_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.PkiProviders.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: pki_provider_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PkiProviders
    description: pf::UnifiedApi::Controller::Config::PkiProviders
    get:
      description: Get an item.
      operationId: api.v1.Config.PkiProviders.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: pki_provider_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPkiProviderWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PkiProviders
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.PkiProviders.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: pki_provider_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPkiProvidersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PkiProviders
    patch:
      description: Update an item.
      operationId: api.v1.Config.PkiProviders.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: pki_provider_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigPkiProvider'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/PkiProviders
    put:
      description: Replace an item.
      operationId: api.v1.Config.PkiProviders.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: pki_provider_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigPkiProvider'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/PkiProviders
  /api/v1/config/pki_providers:
    description: pf::UnifiedApi::Controller::Config::PkiProviders
    get:
      description: List all items.
      operationId: api.v1.Config.PkiProviders.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPkiProvidersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/PkiProviders
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.PkiProviders.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPkiProvidersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PkiProviders
    post:
      description: Create a new item.
      operationId: api.v1.Config.PkiProviders.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigPkiProvider'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/PkiProviders
  /api/v1/config/pki_providers/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::PkiProviders
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.PkiProviders.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPkiProviderWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PkiProviders
  /api/v1/config/pki_providers/bulk_import:
    description: pf::UnifiedApi::Controller::Config::PkiProviders
    post:
      description: Create one or more items.
      operationId: api.v1.Config.PkiProviders.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigPkiProvider'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPkiProviderWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PkiProviders
  /api/v1/config/pki_providers/bulk_update:
    description: pf::UnifiedApi::Controller::Config::PkiProviders
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.PkiProviders.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigPkiProvider'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPkiProviderWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PkiProviders
  /api/v1/config/pki_providers/search:
    description: pf::UnifiedApi::Controller::Config::PkiProviders
    post:
      description: Search all items.
      operationId: api.v1.Config.PkiProviders.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPkiProvidersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/PkiProviders
  /api/v1/config/pki_providers/sort_items:
    description: pf::UnifiedApi::Controller::Config::PkiProviders
    patch:
      description: Sort items.
      operationId: api.v1.Config.PkiProviders.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPkiProviderWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PkiProviders
  /api/v1/config/portal_module/{portal_module_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.PortalModules.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: portal_module_id
        required: true
        schema:
          enum:
          - default_admin_sso_policy
          - default_billing_policy
          - default_blackhole_policy
          - default_guest_policy
          - default_login_policy
          - default_mfa_policy
          - default_oauth_policy
          - default_pending_policy
          - default_policy
          - default_provisioning_policy
          - default_registration_policy
          - default_saml_policy
          - default_show_local_account
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PortalModules
    description: pf::UnifiedApi::Controller::Config::PortalModules
    get:
      description: Get an item.
      operationId: api.v1.Config.PortalModules.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: portal_module_id
        required: true
        schema:
          enum:
          - default_admin_sso_policy
          - default_billing_policy
          - default_blackhole_policy
          - default_guest_policy
          - default_login_policy
          - default_mfa_policy
          - default_oauth_policy
          - default_pending_policy
          - default_policy
          - default_provisioning_policy
          - default_registration_policy
          - default_saml_policy
          - default_show_local_account
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPortalModuleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PortalModules
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.PortalModules.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: portal_module_id
        required: true
        schema:
          enum:
          - default_admin_sso_policy
          - default_billing_policy
          - default_blackhole_policy
          - default_guest_policy
          - default_login_policy
          - default_mfa_policy
          - default_oauth_policy
          - default_pending_policy
          - default_policy
          - default_provisioning_policy
          - default_registration_policy
          - default_saml_policy
          - default_show_local_account
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPortalModulesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PortalModules
    patch:
      description: Update an item.
      operationId: api.v1.Config.PortalModules.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: portal_module_id
        required: true
        schema:
          enum:
          - default_admin_sso_policy
          - default_billing_policy
          - default_blackhole_policy
          - default_guest_policy
          - default_login_policy
          - default_mfa_policy
          - default_oauth_policy
          - default_pending_policy
          - default_policy
          - default_provisioning_policy
          - default_registration_policy
          - default_saml_policy
          - default_show_local_account
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigPortalModule'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/PortalModules
    put:
      description: Replace an item.
      operationId: api.v1.Config.PortalModules.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: portal_module_id
        required: true
        schema:
          enum:
          - default_admin_sso_policy
          - default_billing_policy
          - default_blackhole_policy
          - default_guest_policy
          - default_login_policy
          - default_mfa_policy
          - default_oauth_policy
          - default_pending_policy
          - default_policy
          - default_provisioning_policy
          - default_registration_policy
          - default_saml_policy
          - default_show_local_account
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigPortalModule'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/PortalModules
  /api/v1/config/portal_modules:
    description: pf::UnifiedApi::Controller::Config::PortalModules
    get:
      description: List all items.
      operationId: api.v1.Config.PortalModules.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPortalModulesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/PortalModules
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.PortalModules.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPortalModulesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PortalModules
    post:
      description: Create a new item.
      operationId: api.v1.Config.PortalModules.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigPortalModule'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/PortalModules
  /api/v1/config/portal_modules/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::PortalModules
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.PortalModules.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPortalModuleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PortalModules
  /api/v1/config/portal_modules/bulk_import:
    description: pf::UnifiedApi::Controller::Config::PortalModules
    post:
      description: Create one or more items.
      operationId: api.v1.Config.PortalModules.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigPortalModule'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPortalModuleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PortalModules
  /api/v1/config/portal_modules/bulk_update:
    description: pf::UnifiedApi::Controller::Config::PortalModules
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.PortalModules.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigPortalModule'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPortalModuleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PortalModules
  /api/v1/config/portal_modules/search:
    description: pf::UnifiedApi::Controller::Config::PortalModules
    post:
      description: Search all items.
      operationId: api.v1.Config.PortalModules.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPortalModulesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/PortalModules
  /api/v1/config/portal_modules/sort_items:
    description: pf::UnifiedApi::Controller::Config::PortalModules
    patch:
      description: Sort items.
      operationId: api.v1.Config.PortalModules.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigPortalModuleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/PortalModules
  /api/v1/config/provisioning/{provisioning_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Provisionings.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: provisioning_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Provisionings
    description: |-
      pf::UnifiedApi::Controller::Config::Provisionings

        fields_to_mask
          fields_to_mask
    get:
      description: Get an item.
      operationId: api.v1.Config.Provisionings.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: provisioning_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigProvisioningWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Provisionings
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Provisionings.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: provisioning_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigProvisioningsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Provisionings
    patch:
      description: Update an item.
      operationId: api.v1.Config.Provisionings.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: provisioning_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigProvisioning'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Provisionings
    put:
      description: Replace an item.
      operationId: api.v1.Config.Provisionings.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: provisioning_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigProvisioning'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Provisionings
  /api/v1/config/provisionings:
    description: |-
      pf::UnifiedApi::Controller::Config::Provisionings

        fields_to_mask
          fields_to_mask
    get:
      description: List all items.
      operationId: api.v1.Config.Provisionings.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigProvisioningsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Provisionings
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Provisionings.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigProvisioningsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Provisionings
    post:
      description: Create a new item.
      operationId: api.v1.Config.Provisionings.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigProvisioning'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Provisionings
  /api/v1/config/provisionings/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::Provisionings

        fields_to_mask
          fields_to_mask
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Provisionings.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigProvisioningWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Provisionings
  /api/v1/config/provisionings/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::Provisionings

        fields_to_mask
          fields_to_mask
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Provisionings.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigProvisioning'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigProvisioningWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Provisionings
  /api/v1/config/provisionings/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::Provisionings

        fields_to_mask
          fields_to_mask
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Provisionings.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigProvisioning'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigProvisioningWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Provisionings
  /api/v1/config/provisionings/search:
    description: |-
      pf::UnifiedApi::Controller::Config::Provisionings

        fields_to_mask
          fields_to_mask
    post:
      description: Search all items.
      operationId: api.v1.Config.Provisionings.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigProvisioningsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Provisionings
  /api/v1/config/provisionings/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::Provisionings

        fields_to_mask
          fields_to_mask
    patch:
      description: Sort items.
      operationId: api.v1.Config.Provisionings.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigProvisioningWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Provisionings
  /api/v1/config/radiusd/eap_profile/{eap_profile_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Radiusd.EAPProfiles.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: eap_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/EAPProfiles
    description: Configure floating devices
    get:
      description: Get an item.
      operationId: api.v1.Config.Radiusd.EAPProfiles.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: eap_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdEAPProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/EAPProfiles
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Radiusd.EAPProfiles.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: eap_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdEAPProfilesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/EAPProfiles
    patch:
      description: Update an item.
      operationId: api.v1.Config.Radiusd.EAPProfiles.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: eap_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdEAPProfile'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/EAPProfiles
    put:
      description: Replace an item.
      operationId: api.v1.Config.Radiusd.EAPProfiles.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: eap_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdEAPProfile'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/EAPProfiles
  /api/v1/config/radiusd/eap_profiles:
    description: Configure floating devices
    get:
      description: List all items.
      operationId: api.v1.Config.Radiusd.EAPProfiles.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdEAPProfilesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Radiusd/EAPProfiles
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Radiusd.EAPProfiles.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdEAPProfilesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/EAPProfiles
    post:
      description: Create a new item.
      operationId: api.v1.Config.Radiusd.EAPProfiles.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdEAPProfile'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/EAPProfiles
  /api/v1/config/radiusd/eap_profiles/bulk_delete:
    description: Configure floating devices
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Radiusd.EAPProfiles.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdEAPProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/EAPProfiles
  /api/v1/config/radiusd/eap_profiles/bulk_import:
    description: Configure floating devices
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Radiusd.EAPProfiles.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRadiusdEAPProfile'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdEAPProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/EAPProfiles
  /api/v1/config/radiusd/eap_profiles/bulk_update:
    description: Configure floating devices
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Radiusd.EAPProfiles.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRadiusdEAPProfile'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdEAPProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/EAPProfiles
  /api/v1/config/radiusd/eap_profiles/search:
    description: Configure floating devices
    post:
      description: Search all items.
      operationId: api.v1.Config.Radiusd.EAPProfiles.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdEAPProfilesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Radiusd/EAPProfiles
  /api/v1/config/radiusd/eap_profiles/sort_items:
    description: Configure floating devices
    patch:
      description: Sort items.
      operationId: api.v1.Config.Radiusd.EAPProfiles.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdEAPProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/EAPProfiles
  /api/v1/config/radiusd/fast_profile/{fast_profile_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Radiusd.FastProfiles.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fast_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/FastProfiles
    description: Configure floating devices
    get:
      description: Get an item.
      operationId: api.v1.Config.Radiusd.FastProfiles.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fast_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdFastProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/FastProfiles
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Radiusd.FastProfiles.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fast_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdFastProfilesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/FastProfiles
    patch:
      description: Update an item.
      operationId: api.v1.Config.Radiusd.FastProfiles.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fast_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdFastProfile'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/FastProfiles
    put:
      description: Replace an item.
      operationId: api.v1.Config.Radiusd.FastProfiles.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fast_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdFastProfile'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/FastProfiles
  /api/v1/config/radiusd/fast_profiles:
    description: Configure floating devices
    get:
      description: List all items.
      operationId: api.v1.Config.Radiusd.FastProfiles.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdFastProfilesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Radiusd/FastProfiles
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Radiusd.FastProfiles.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdFastProfilesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/FastProfiles
    post:
      description: Create a new item.
      operationId: api.v1.Config.Radiusd.FastProfiles.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdFastProfile'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/FastProfiles
  /api/v1/config/radiusd/fast_profiles/bulk_delete:
    description: Configure floating devices
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Radiusd.FastProfiles.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdFastProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/FastProfiles
  /api/v1/config/radiusd/fast_profiles/bulk_import:
    description: Configure floating devices
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Radiusd.FastProfiles.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRadiusdFastProfile'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdFastProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/FastProfiles
  /api/v1/config/radiusd/fast_profiles/bulk_update:
    description: Configure floating devices
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Radiusd.FastProfiles.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRadiusdFastProfile'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdFastProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/FastProfiles
  /api/v1/config/radiusd/fast_profiles/search:
    description: Configure floating devices
    post:
      description: Search all items.
      operationId: api.v1.Config.Radiusd.FastProfiles.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdFastProfilesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Radiusd/FastProfiles
  /api/v1/config/radiusd/fast_profiles/sort_items:
    description: Configure floating devices
    patch:
      description: Sort items.
      operationId: api.v1.Config.Radiusd.FastProfiles.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdFastProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/FastProfiles
  /api/v1/config/radiusd/ocsp_profile/{ocsp_profile_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ocsp_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/OCSPProfiles
    description: Configure floating devices
    get:
      description: Get an item.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ocsp_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdOCSPProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/OCSPProfiles
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ocsp_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdOCSPProfilesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/OCSPProfiles
    patch:
      description: Update an item.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ocsp_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdOCSPProfile'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/OCSPProfiles
    put:
      description: Replace an item.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ocsp_profile_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdOCSPProfile'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/OCSPProfiles
  /api/v1/config/radiusd/ocsp_profiles:
    description: Configure floating devices
    get:
      description: List all items.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdOCSPProfilesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Radiusd/OCSPProfiles
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdOCSPProfilesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/OCSPProfiles
    post:
      description: Create a new item.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdOCSPProfile'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/OCSPProfiles
  /api/v1/config/radiusd/ocsp_profiles/bulk_delete:
    description: Configure floating devices
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdOCSPProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/OCSPProfiles
  /api/v1/config/radiusd/ocsp_profiles/bulk_import:
    description: Configure floating devices
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRadiusdOCSPProfile'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdOCSPProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/OCSPProfiles
  /api/v1/config/radiusd/ocsp_profiles/bulk_update:
    description: Configure floating devices
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRadiusdOCSPProfile'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdOCSPProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/OCSPProfiles
  /api/v1/config/radiusd/ocsp_profiles/search:
    description: Configure floating devices
    post:
      description: Search all items.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdOCSPProfilesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Radiusd/OCSPProfiles
  /api/v1/config/radiusd/ocsp_profiles/sort_items:
    description: Configure floating devices
    patch:
      description: Sort items.
      operationId: api.v1.Config.Radiusd.OCSPProfiles.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdOCSPProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/OCSPProfiles
  /api/v1/config/radiusd/tls_profile/{tls_profile_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Radiusd.TLSProfiles.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: tls_profile_id
        required: true
        schema:
          enum:
          - tls-common
          - tls-eap-fast
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/TLSProfiles
    description: Configure floating devices
    get:
      description: Get an item.
      operationId: api.v1.Config.Radiusd.TLSProfiles.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: tls_profile_id
        required: true
        schema:
          enum:
          - tls-common
          - tls-eap-fast
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdTLSProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/TLSProfiles
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Radiusd.TLSProfiles.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: tls_profile_id
        required: true
        schema:
          enum:
          - tls-common
          - tls-eap-fast
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdTLSProfilesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/TLSProfiles
    patch:
      description: Update an item.
      operationId: api.v1.Config.Radiusd.TLSProfiles.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: tls_profile_id
        required: true
        schema:
          enum:
          - tls-common
          - tls-eap-fast
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdTLSProfile'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/TLSProfiles
    put:
      description: Replace an item.
      operationId: api.v1.Config.Radiusd.TLSProfiles.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: tls_profile_id
        required: true
        schema:
          enum:
          - tls-common
          - tls-eap-fast
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdTLSProfile'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/TLSProfiles
  /api/v1/config/radiusd/tls_profiles:
    description: Configure floating devices
    get:
      description: List all items.
      operationId: api.v1.Config.Radiusd.TLSProfiles.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdTLSProfilesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Radiusd/TLSProfiles
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Radiusd.TLSProfiles.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdTLSProfilesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/TLSProfiles
    post:
      description: Create a new item.
      operationId: api.v1.Config.Radiusd.TLSProfiles.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRadiusdTLSProfile'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Radiusd/TLSProfiles
  /api/v1/config/radiusd/tls_profiles/bulk_delete:
    description: Configure floating devices
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Radiusd.TLSProfiles.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdTLSProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/TLSProfiles
  /api/v1/config/radiusd/tls_profiles/bulk_import:
    description: Configure floating devices
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Radiusd.TLSProfiles.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRadiusdTLSProfile'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdTLSProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/TLSProfiles
  /api/v1/config/radiusd/tls_profiles/bulk_update:
    description: Configure floating devices
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Radiusd.TLSProfiles.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRadiusdTLSProfile'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdTLSProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/TLSProfiles
  /api/v1/config/radiusd/tls_profiles/search:
    description: Configure floating devices
    post:
      description: Search all items.
      operationId: api.v1.Config.Radiusd.TLSProfiles.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdTLSProfilesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Radiusd/TLSProfiles
  /api/v1/config/radiusd/tls_profiles/sort_items:
    description: Configure floating devices
    patch:
      description: Sort items.
      operationId: api.v1.Config.Radiusd.TLSProfiles.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRadiusdTLSProfileWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Radiusd/TLSProfiles
  /api/v1/config/realm/{realm_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Realms.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: realm_id
        required: true
        schema:
          enum:
          - DEFAULT
          - LOCAL
          - NULL
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Realms
    description: pf::UnifiedApi::Controller::Config::Realms
    get:
      description: Get an item.
      operationId: api.v1.Config.Realms.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: realm_id
        required: true
        schema:
          enum:
          - DEFAULT
          - LOCAL
          - NULL
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRealmWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Realms
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Realms.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: realm_id
        required: true
        schema:
          enum:
          - DEFAULT
          - LOCAL
          - NULL
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRealmsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Realms
    patch:
      description: Update an item.
      operationId: api.v1.Config.Realms.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: realm_id
        required: true
        schema:
          enum:
          - DEFAULT
          - LOCAL
          - NULL
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRealm'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Realms
    put:
      description: Replace an item.
      operationId: api.v1.Config.Realms.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: realm_id
        required: true
        schema:
          enum:
          - DEFAULT
          - LOCAL
          - NULL
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRealm'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Realms
  /api/v1/config/realms:
    description: pf::UnifiedApi::Controller::Config::Realms
    get:
      description: List all items.
      operationId: api.v1.Config.Realms.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRealmsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Realms
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Realms.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRealmsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Realms
    post:
      description: Create a new item.
      operationId: api.v1.Config.Realms.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRealm'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Realms
  /api/v1/config/realms/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::Realms
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Realms.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRealmWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Realms
  /api/v1/config/realms/bulk_import:
    description: pf::UnifiedApi::Controller::Config::Realms
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Realms.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRealm'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRealmWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Realms
  /api/v1/config/realms/bulk_update:
    description: pf::UnifiedApi::Controller::Config::Realms
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Realms.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRealm'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRealmWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Realms
  /api/v1/config/realms/search:
    description: pf::UnifiedApi::Controller::Config::Realms
    post:
      description: Search all items.
      operationId: api.v1.Config.Realms.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRealmsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Realms
  /api/v1/config/realms/sort_items:
    description: pf::UnifiedApi::Controller::Config::Realms
    patch:
      description: Sort items.
      operationId: api.v1.Config.Realms.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRealmWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Realms
  /api/v1/config/role/{role_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Roles.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: role_id
        required: true
        schema:
          enum:
          - Machine
          - REJECT
          - User
          - default
          - gaming
          - guest
          - voice
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Roles
    description: pf::UnifiedApi::Controller::Config::Roles
    get:
      description: Get an item.
      operationId: api.v1.Config.Roles.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: role_id
        required: true
        schema:
          enum:
          - Machine
          - REJECT
          - User
          - default
          - gaming
          - guest
          - voice
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Roles
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Roles.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: role_id
        required: true
        schema:
          enum:
          - Machine
          - REJECT
          - User
          - default
          - gaming
          - guest
          - voice
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRolesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Roles
    patch:
      description: Update an item.
      operationId: api.v1.Config.Roles.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: role_id
        required: true
        schema:
          enum:
          - Machine
          - REJECT
          - User
          - default
          - gaming
          - guest
          - voice
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRole'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Roles
    put:
      description: Replace an item.
      operationId: api.v1.Config.Roles.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: role_id
        required: true
        schema:
          enum:
          - Machine
          - REJECT
          - User
          - default
          - gaming
          - guest
          - voice
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRole'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Roles
  /api/v1/config/roles:
    description: pf::UnifiedApi::Controller::Config::Roles
    get:
      description: List all items.
      operationId: api.v1.Config.Roles.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRolesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Roles
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Roles.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRolesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Roles
    post:
      description: Create a new item.
      operationId: api.v1.Config.Roles.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRole'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Roles
  /api/v1/config/roles/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::Roles
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Roles.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Roles
  /api/v1/config/roles/bulk_import:
    description: pf::UnifiedApi::Controller::Config::Roles
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Roles.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRole'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Roles
  /api/v1/config/roles/bulk_update:
    description: pf::UnifiedApi::Controller::Config::Roles
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Roles.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRole'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Roles
  /api/v1/config/roles/search:
    description: pf::UnifiedApi::Controller::Config::Roles
    post:
      description: Search all items.
      operationId: api.v1.Config.Roles.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRolesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Roles
  /api/v1/config/roles/sort_items:
    description: pf::UnifiedApi::Controller::Config::Roles
    patch:
      description: Sort items.
      operationId: api.v1.Config.Roles.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoleWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Roles
  /api/v1/config/routed_network/{network_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.RoutedNetworks.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/RoutedNetworks
    description: |-
      pf::UnifiedApi::Controller::Config::RoutedNetworks

        get_json
          Override parent method to set the id to the network value as it is
          required for validation in pf::UnifiedApi::Controller::Config

        form
          Override to add the network ID in the form args if its defined

        cleanup_item
          Override to remove the network key from the items in favor of id
    get:
      description: Get an item.
      operationId: api.v1.Config.RoutedNetworks.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoutedNetworkWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/RoutedNetworks
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.RoutedNetworks.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoutedNetworksMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/RoutedNetworks
    patch:
      description: Update an item.
      operationId: api.v1.Config.RoutedNetworks.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRoutedNetwork'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/RoutedNetworks
    put:
      description: Replace an item.
      operationId: api.v1.Config.RoutedNetworks.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: network_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRoutedNetwork'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/RoutedNetworks
  /api/v1/config/routed_networks:
    description: |-
      pf::UnifiedApi::Controller::Config::RoutedNetworks

        get_json
          Override parent method to set the id to the network value as it is
          required for validation in pf::UnifiedApi::Controller::Config

        form
          Override to add the network ID in the form args if its defined

        cleanup_item
          Override to remove the network key from the items in favor of id
    get:
      description: List all items.
      operationId: api.v1.Config.RoutedNetworks.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoutedNetworksList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/RoutedNetworks
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.RoutedNetworks.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoutedNetworksMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/RoutedNetworks
    post:
      description: Create a new item.
      operationId: api.v1.Config.RoutedNetworks.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigRoutedNetwork'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/RoutedNetworks
  /api/v1/config/routed_networks/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::RoutedNetworks

        get_json
          Override parent method to set the id to the network value as it is
          required for validation in pf::UnifiedApi::Controller::Config

        form
          Override to add the network ID in the form args if its defined

        cleanup_item
          Override to remove the network key from the items in favor of id
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.RoutedNetworks.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoutedNetworkWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/RoutedNetworks
  /api/v1/config/routed_networks/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::RoutedNetworks

        get_json
          Override parent method to set the id to the network value as it is
          required for validation in pf::UnifiedApi::Controller::Config

        form
          Override to add the network ID in the form args if its defined

        cleanup_item
          Override to remove the network key from the items in favor of id
    post:
      description: Create one or more items.
      operationId: api.v1.Config.RoutedNetworks.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRoutedNetwork'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoutedNetworkWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/RoutedNetworks
  /api/v1/config/routed_networks/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::RoutedNetworks

        get_json
          Override parent method to set the id to the network value as it is
          required for validation in pf::UnifiedApi::Controller::Config

        form
          Override to add the network ID in the form args if its defined

        cleanup_item
          Override to remove the network key from the items in favor of id
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.RoutedNetworks.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigRoutedNetwork'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoutedNetworkWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/RoutedNetworks
  /api/v1/config/routed_networks/search:
    description: |-
      pf::UnifiedApi::Controller::Config::RoutedNetworks

        get_json
          Override parent method to set the id to the network value as it is
          required for validation in pf::UnifiedApi::Controller::Config

        form
          Override to add the network ID in the form args if its defined

        cleanup_item
          Override to remove the network key from the items in favor of id
    post:
      description: Search all items.
      operationId: api.v1.Config.RoutedNetworks.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoutedNetworksList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/RoutedNetworks
  /api/v1/config/routed_networks/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::RoutedNetworks

        get_json
          Override parent method to set the id to the network value as it is
          required for validation in pf::UnifiedApi::Controller::Config

        form
          Override to add the network ID in the form args if its defined

        cleanup_item
          Override to remove the network key from the items in favor of id
    patch:
      description: Sort items.
      operationId: api.v1.Config.RoutedNetworks.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigRoutedNetworkWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/RoutedNetworks
  /api/v1/config/scan/{scan_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Scans.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: scan_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Scans
    description: pf::UnifiedApi::Controller::Config::Scans
    get:
      description: Get an item.
      operationId: api.v1.Config.Scans.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: scan_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigScanWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Scans
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Scans.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: scan_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigScansMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Scans
    patch:
      description: Update an item.
      operationId: api.v1.Config.Scans.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: scan_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigScan'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Scans
    put:
      description: Replace an item.
      operationId: api.v1.Config.Scans.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: scan_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigScan'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Scans
  /api/v1/config/scans:
    description: pf::UnifiedApi::Controller::Config::Scans
    get:
      description: List all items.
      operationId: api.v1.Config.Scans.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigScansList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Scans
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Scans.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigScansMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Scans
    post:
      description: Create a new item.
      operationId: api.v1.Config.Scans.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigScan'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Scans
  /api/v1/config/scans/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::Scans
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Scans.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigScanWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Scans
  /api/v1/config/scans/bulk_import:
    description: pf::UnifiedApi::Controller::Config::Scans
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Scans.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigScan'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigScanWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Scans
  /api/v1/config/scans/bulk_update:
    description: pf::UnifiedApi::Controller::Config::Scans
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Scans.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigScan'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigScanWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Scans
  /api/v1/config/scans/search:
    description: pf::UnifiedApi::Controller::Config::Scans
    post:
      description: Search all items.
      operationId: api.v1.Config.Scans.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigScansList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Scans
  /api/v1/config/scans/sort_items:
    description: pf::UnifiedApi::Controller::Config::Scans
    patch:
      description: Sort items.
      operationId: api.v1.Config.Scans.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigScanWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Scans
  /api/v1/config/security_event/{security_event_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.SecurityEvents.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: security_event_id
        required: true
        schema:
          enum:
          - '1100001'
          - '1100002'
          - '1100003'
          - '1100004'
          - '1100006'
          - '1100007'
          - '1100008'
          - '1100009'
          - '1100010'
          - '1100011'
          - '1100012'
          - '1100013'
          - '1100014'
          - '1100020'
          - '1100021'
          - '1100022'
          - '1100023'
          - '1200001'
          - '1200002'
          - '1200003'
          - '1200004'
          - '1200005'
          - '1300000'
          - '1300001'
          - '1300002'
          - '1300003'
          - '1300004'
          - '1300005'
          - '1300006'
          - '1300007'
          - '1300008'
          - '2000000'
          - '2000032'
          - '2001569'
          - '2001904'
          - '2001972'
          - '2002030'
          - '2002201'
          - '3000001'
          - '3000002'
          - '3000003'
          - '3000004'
          - '3000005'
          - '3000006'
          - '3000007'
          - '3000008'
          - '3500001'
          - '3500002'
          - '3500003'
          - defaults
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SecurityEvents
    description: |-
      pf::UnifiedApi::Controller::Config::SecurityEvents

        id_field_default
          id_field_default

        form_parameters
          form_parameters
    get:
      description: Get an item.
      operationId: api.v1.Config.SecurityEvents.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: security_event_id
        required: true
        schema:
          enum:
          - '1100001'
          - '1100002'
          - '1100003'
          - '1100004'
          - '1100006'
          - '1100007'
          - '1100008'
          - '1100009'
          - '1100010'
          - '1100011'
          - '1100012'
          - '1100013'
          - '1100014'
          - '1100020'
          - '1100021'
          - '1100022'
          - '1100023'
          - '1200001'
          - '1200002'
          - '1200003'
          - '1200004'
          - '1200005'
          - '1300000'
          - '1300001'
          - '1300002'
          - '1300003'
          - '1300004'
          - '1300005'
          - '1300006'
          - '1300007'
          - '1300008'
          - '2000000'
          - '2000032'
          - '2001569'
          - '2001904'
          - '2001972'
          - '2002030'
          - '2002201'
          - '3000001'
          - '3000002'
          - '3000003'
          - '3000004'
          - '3000005'
          - '3000006'
          - '3000007'
          - '3000008'
          - '3500001'
          - '3500002'
          - '3500003'
          - defaults
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSecurityEventWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SecurityEvents
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.SecurityEvents.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: security_event_id
        required: true
        schema:
          enum:
          - '1100001'
          - '1100002'
          - '1100003'
          - '1100004'
          - '1100006'
          - '1100007'
          - '1100008'
          - '1100009'
          - '1100010'
          - '1100011'
          - '1100012'
          - '1100013'
          - '1100014'
          - '1100020'
          - '1100021'
          - '1100022'
          - '1100023'
          - '1200001'
          - '1200002'
          - '1200003'
          - '1200004'
          - '1200005'
          - '1300000'
          - '1300001'
          - '1300002'
          - '1300003'
          - '1300004'
          - '1300005'
          - '1300006'
          - '1300007'
          - '1300008'
          - '2000000'
          - '2000032'
          - '2001569'
          - '2001904'
          - '2001972'
          - '2002030'
          - '2002201'
          - '3000001'
          - '3000002'
          - '3000003'
          - '3000004'
          - '3000005'
          - '3000006'
          - '3000007'
          - '3000008'
          - '3500001'
          - '3500002'
          - '3500003'
          - defaults
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSecurityEventsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SecurityEvents
    patch:
      description: Update an item.
      operationId: api.v1.Config.SecurityEvents.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: security_event_id
        required: true
        schema:
          enum:
          - '1100001'
          - '1100002'
          - '1100003'
          - '1100004'
          - '1100006'
          - '1100007'
          - '1100008'
          - '1100009'
          - '1100010'
          - '1100011'
          - '1100012'
          - '1100013'
          - '1100014'
          - '1100020'
          - '1100021'
          - '1100022'
          - '1100023'
          - '1200001'
          - '1200002'
          - '1200003'
          - '1200004'
          - '1200005'
          - '1300000'
          - '1300001'
          - '1300002'
          - '1300003'
          - '1300004'
          - '1300005'
          - '1300006'
          - '1300007'
          - '1300008'
          - '2000000'
          - '2000032'
          - '2001569'
          - '2001904'
          - '2001972'
          - '2002030'
          - '2002201'
          - '3000001'
          - '3000002'
          - '3000003'
          - '3000004'
          - '3000005'
          - '3000006'
          - '3000007'
          - '3000008'
          - '3500001'
          - '3500002'
          - '3500003'
          - defaults
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSecurityEvent'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SecurityEvents
    put:
      description: Replace an item.
      operationId: api.v1.Config.SecurityEvents.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: security_event_id
        required: true
        schema:
          enum:
          - '1100001'
          - '1100002'
          - '1100003'
          - '1100004'
          - '1100006'
          - '1100007'
          - '1100008'
          - '1100009'
          - '1100010'
          - '1100011'
          - '1100012'
          - '1100013'
          - '1100014'
          - '1100020'
          - '1100021'
          - '1100022'
          - '1100023'
          - '1200001'
          - '1200002'
          - '1200003'
          - '1200004'
          - '1200005'
          - '1300000'
          - '1300001'
          - '1300002'
          - '1300003'
          - '1300004'
          - '1300005'
          - '1300006'
          - '1300007'
          - '1300008'
          - '2000000'
          - '2000032'
          - '2001569'
          - '2001904'
          - '2001972'
          - '2002030'
          - '2002201'
          - '3000001'
          - '3000002'
          - '3000003'
          - '3000004'
          - '3000005'
          - '3000006'
          - '3000007'
          - '3000008'
          - '3500001'
          - '3500002'
          - '3500003'
          - defaults
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSecurityEvent'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SecurityEvents
  /api/v1/config/security_events:
    description: |-
      pf::UnifiedApi::Controller::Config::SecurityEvents

        id_field_default
          id_field_default

        form_parameters
          form_parameters
    get:
      description: List all items.
      operationId: api.v1.Config.SecurityEvents.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSecurityEventsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/SecurityEvents
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.SecurityEvents.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSecurityEventsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SecurityEvents
    post:
      description: Create a new item.
      operationId: api.v1.Config.SecurityEvents.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSecurityEvent'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SecurityEvents
  /api/v1/config/security_events/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::SecurityEvents

        id_field_default
          id_field_default

        form_parameters
          form_parameters
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.SecurityEvents.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSecurityEventWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SecurityEvents
  /api/v1/config/security_events/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::SecurityEvents

        id_field_default
          id_field_default

        form_parameters
          form_parameters
    post:
      description: Create one or more items.
      operationId: api.v1.Config.SecurityEvents.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSecurityEvent'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSecurityEventWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SecurityEvents
  /api/v1/config/security_events/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::SecurityEvents

        id_field_default
          id_field_default

        form_parameters
          form_parameters
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.SecurityEvents.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSecurityEvent'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSecurityEventWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SecurityEvents
  /api/v1/config/security_events/search:
    description: |-
      pf::UnifiedApi::Controller::Config::SecurityEvents

        id_field_default
          id_field_default

        form_parameters
          form_parameters
    post:
      description: Search all items.
      operationId: api.v1.Config.SecurityEvents.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSecurityEventsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/SecurityEvents
  /api/v1/config/security_events/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::SecurityEvents

        id_field_default
          id_field_default

        form_parameters
          form_parameters
    patch:
      description: Sort items.
      operationId: api.v1.Config.SecurityEvents.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSecurityEventWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SecurityEvents
  /api/v1/config/self_service/{self_service_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.SelfServices.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: self_service_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SelfServices
    description: pf::UnifiedApi::Controller::Config::SelfServices
    get:
      description: Get an item.
      operationId: api.v1.Config.SelfServices.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: self_service_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSelfServiceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SelfServices
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.SelfServices.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: self_service_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSelfServicesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SelfServices
    patch:
      description: Update an item.
      operationId: api.v1.Config.SelfServices.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: self_service_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSelfService'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SelfServices
    put:
      description: Replace an item.
      operationId: api.v1.Config.SelfServices.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: self_service_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSelfService'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SelfServices
  /api/v1/config/self_services:
    description: pf::UnifiedApi::Controller::Config::SelfServices
    get:
      description: List all items.
      operationId: api.v1.Config.SelfServices.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSelfServicesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/SelfServices
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.SelfServices.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSelfServicesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SelfServices
    post:
      description: Create a new item.
      operationId: api.v1.Config.SelfServices.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSelfService'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SelfServices
  /api/v1/config/self_services/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::SelfServices
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.SelfServices.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSelfServiceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SelfServices
  /api/v1/config/self_services/bulk_import:
    description: pf::UnifiedApi::Controller::Config::SelfServices
    post:
      description: Create one or more items.
      operationId: api.v1.Config.SelfServices.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSelfService'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSelfServiceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SelfServices
  /api/v1/config/self_services/bulk_update:
    description: pf::UnifiedApi::Controller::Config::SelfServices
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.SelfServices.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSelfService'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSelfServiceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SelfServices
  /api/v1/config/self_services/search:
    description: pf::UnifiedApi::Controller::Config::SelfServices
    post:
      description: Search all items.
      operationId: api.v1.Config.SelfServices.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSelfServicesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/SelfServices
  /api/v1/config/self_services/sort_items:
    description: pf::UnifiedApi::Controller::Config::SelfServices
    patch:
      description: Sort items.
      operationId: api.v1.Config.SelfServices.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSelfServiceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SelfServices
  /api/v1/config/source/{source_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Source.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: source_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Sources
    description: |-
      pf::UnifiedApi::Controller::Config::Sources

        test
          test a source configuration

        saml_metadata
          saml_metadata

        form_parameters
          The form parameters should be overridded

        type_meta_info
          type_meta_info

        field_default
          Get the default value of a field

        fields_to_mask
          fields_to_mask
    get:
      description: Get an item.
      operationId: api.v1.Config.Source.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: source_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSourceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Sources
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Source.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: source_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSourcesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Sources
    patch:
      description: Update an item.
      operationId: api.v1.Config.Source.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: source_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSource'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Sources
    put:
      description: Replace an item.
      operationId: api.v1.Config.Source.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: source_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSource'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Sources
  /api/v1/config/sources:
    description: |-
      pf::UnifiedApi::Controller::Config::Sources

        test
          test a source configuration

        saml_metadata
          saml_metadata

        form_parameters
          The form parameters should be overridded

        type_meta_info
          type_meta_info

        field_default
          Get the default value of a field

        fields_to_mask
          fields_to_mask
    get:
      description: List all items.
      operationId: api.v1.Config.Source.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSourcesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Sources
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Source.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSourcesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Sources
    post:
      description: Create a new item.
      operationId: api.v1.Config.Source.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSource'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Sources
  /api/v1/config/sources/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::Sources

        test
          test a source configuration

        saml_metadata
          saml_metadata

        form_parameters
          The form parameters should be overridded

        type_meta_info
          type_meta_info

        field_default
          Get the default value of a field

        fields_to_mask
          fields_to_mask
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Source.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSourceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Sources
  /api/v1/config/sources/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::Sources

        test
          test a source configuration

        saml_metadata
          saml_metadata

        form_parameters
          The form parameters should be overridded

        type_meta_info
          type_meta_info

        field_default
          Get the default value of a field

        fields_to_mask
          fields_to_mask
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Source.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSource'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSourceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Sources
  /api/v1/config/sources/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::Sources

        test
          test a source configuration

        saml_metadata
          saml_metadata

        form_parameters
          The form parameters should be overridded

        type_meta_info
          type_meta_info

        field_default
          Get the default value of a field

        fields_to_mask
          fields_to_mask
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Source.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSource'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSourceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Sources
  /api/v1/config/sources/search:
    description: |-
      pf::UnifiedApi::Controller::Config::Sources

        test
          test a source configuration

        saml_metadata
          saml_metadata

        form_parameters
          The form parameters should be overridded

        type_meta_info
          type_meta_info

        field_default
          Get the default value of a field

        fields_to_mask
          fields_to_mask
    post:
      description: Search all items.
      operationId: api.v1.Config.Source.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSourcesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Sources
  /api/v1/config/sources/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::Sources

        test
          test a source configuration

        saml_metadata
          saml_metadata

        form_parameters
          The form parameters should be overridded

        type_meta_info
          type_meta_info

        field_default
          Get the default value of a field

        fields_to_mask
          fields_to_mask
    patch:
      description: Sort items.
      operationId: api.v1.Config.Source.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSourceWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Sources
  /api/v1/config/sources/test:
    description: pf::UnifiedApi::Controller::Config::Sources
    post:
      description: Test Source
      operationId: api.v1.Config::Sources.test
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSource'
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  status:
                    type: integer
          description: Request successful.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Sources
  /api/v1/config/ssl_certificate/{ssl_certificate_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.SSLCertificates.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ssl_certificate_id
        required: true
        schema:
          enum:
          - radius
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SSLCertificates
    description: Configure floating devices
    get:
      description: Get an item.
      operationId: api.v1.Config.SSLCertificates.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ssl_certificate_id
        required: true
        schema:
          enum:
          - radius
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSSLCertificateWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SSLCertificates
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.SSLCertificates.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ssl_certificate_id
        required: true
        schema:
          enum:
          - radius
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSSLCertificatesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SSLCertificates
    patch:
      description: Update an item.
      operationId: api.v1.Config.SSLCertificates.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ssl_certificate_id
        required: true
        schema:
          enum:
          - radius
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSSLCertificate'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SSLCertificates
    put:
      description: Replace an item.
      operationId: api.v1.Config.SSLCertificates.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ssl_certificate_id
        required: true
        schema:
          enum:
          - radius
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSSLCertificate'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SSLCertificates
  /api/v1/config/ssl_certificates:
    description: Configure floating devices
    get:
      description: List all items.
      operationId: api.v1.Config.SSLCertificates.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSSLCertificatesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/SSLCertificates
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.SSLCertificates.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSSLCertificatesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SSLCertificates
    post:
      description: Create a new item.
      operationId: api.v1.Config.SSLCertificates.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSSLCertificate'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SSLCertificates
  /api/v1/config/ssl_certificates/bulk_delete:
    description: Configure floating devices
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.SSLCertificates.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSSLCertificateWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SSLCertificates
  /api/v1/config/ssl_certificates/bulk_import:
    description: Configure floating devices
    post:
      description: Create one or more items.
      operationId: api.v1.Config.SSLCertificates.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSSLCertificate'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSSLCertificateWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SSLCertificates
  /api/v1/config/ssl_certificates/bulk_update:
    description: Configure floating devices
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.SSLCertificates.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSSLCertificate'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSSLCertificateWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SSLCertificates
  /api/v1/config/ssl_certificates/search:
    description: Configure floating devices
    post:
      description: Search all items.
      operationId: api.v1.Config.SSLCertificates.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSSLCertificatesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/SSLCertificates
  /api/v1/config/ssl_certificates/sort_items:
    description: Configure floating devices
    patch:
      description: Sort items.
      operationId: api.v1.Config.SSLCertificates.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSSLCertificateWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SSLCertificates
  /api/v1/config/switch/{switch_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Switches.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Switches
    description: |-
      pf::UnifiedApi::Controller::Config::Switches

        invalidate_cache
          invalidate switch cache

        precreate_acls
          precreate switch ACLs

        standardPlaceholder
          standardPlaceholder
    get:
      description: Get an item.
      operationId: api.v1.Config.Switches.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Switches
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Switches.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Switches
    patch:
      description: Update an item.
      operationId: api.v1.Config.Switches.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSwitch'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Switches
    put:
      description: Replace an item.
      operationId: api.v1.Config.Switches.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSwitch'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Switches
  /api/v1/config/switch/{switch_id}/invalidate_cache:
    post:
      description: Invalidate cache for a specific switch
      parameters:
      - in: path
        name: switch_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  status:
                    $ref: '#/components/schemas/Status'
                type: object
          description: Request successful. Switch cache is invalidated.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Switches
  /api/v1/config/switch_group/{switch_group_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.SwitchGroups.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_group_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SwitchGroups
    description: |-
      pf::UnifiedApi::Controller::Config::SwitchGroups

        members
          members

        fields_to_mask
          fields_to_mask
    get:
      description: Get an item.
      operationId: api.v1.Config.SwitchGroups.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_group_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchGroupWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SwitchGroups
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.SwitchGroups.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_group_id
        required: true
        schema:
          enum:
          - default
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchGroupsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SwitchGroups
    patch:
      description: Update an item.
      operationId: api.v1.Config.SwitchGroups.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_group_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSwitchGroup'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SwitchGroups
    put:
      description: Replace an item.
      operationId: api.v1.Config.SwitchGroups.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: switch_group_id
        required: true
        schema:
          enum:
          - default
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSwitchGroup'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SwitchGroups
  /api/v1/config/switch_group/{switch_group_id}/members:
    get:
      description: Get the members of a switch group
      parameters:
      - in: path
        name: switch_group_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchGroupMembers'
          description: Request successful. Response contains a list of resources.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SwitchGroups
  /api/v1/config/switch_groups:
    description: |-
      pf::UnifiedApi::Controller::Config::SwitchGroups

        members
          members

        fields_to_mask
          fields_to_mask
    get:
      description: List all items.
      operationId: api.v1.Config.SwitchGroups.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchGroupsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/SwitchGroups
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.SwitchGroups.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchGroupsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SwitchGroups
    post:
      description: Create a new item.
      operationId: api.v1.Config.SwitchGroups.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSwitchGroup'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SwitchGroups
  /api/v1/config/switch_groups/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::SwitchGroups

        members
          members

        fields_to_mask
          fields_to_mask
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.SwitchGroups.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchGroupWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SwitchGroups
  /api/v1/config/switch_groups/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::SwitchGroups

        members
          members

        fields_to_mask
          fields_to_mask
    post:
      description: Create one or more items.
      operationId: api.v1.Config.SwitchGroups.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSwitchGroup'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchGroupWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SwitchGroups
  /api/v1/config/switch_groups/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::SwitchGroups

        members
          members

        fields_to_mask
          fields_to_mask
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.SwitchGroups.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSwitchGroup'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchGroupWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SwitchGroups
  /api/v1/config/switch_groups/search:
    description: |-
      pf::UnifiedApi::Controller::Config::SwitchGroups

        members
          members

        fields_to_mask
          fields_to_mask
    post:
      description: Search all items.
      operationId: api.v1.Config.SwitchGroups.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchGroupsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/SwitchGroups
  /api/v1/config/switch_groups/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::SwitchGroups

        members
          members

        fields_to_mask
          fields_to_mask
    patch:
      description: Sort items.
      operationId: api.v1.Config.SwitchGroups.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchGroupWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SwitchGroups
  /api/v1/config/switches:
    description: |-
      pf::UnifiedApi::Controller::Config::Switches

        invalidate_cache
          invalidate switch cache

        precreate_acls
          precreate switch ACLs

        standardPlaceholder
          standardPlaceholder
    get:
      description: List all items.
      operationId: api.v1.Config.Switches.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Switches
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Switches.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Switches
    post:
      description: Create a new item.
      operationId: api.v1.Config.Switches.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSwitch'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Switches
  /api/v1/config/switches/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::Switches

        invalidate_cache
          invalidate switch cache

        precreate_acls
          precreate switch ACLs

        standardPlaceholder
          standardPlaceholder
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Switches.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Switches
  /api/v1/config/switches/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::Switches

        invalidate_cache
          invalidate switch cache

        precreate_acls
          precreate switch ACLs

        standardPlaceholder
          standardPlaceholder
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Switches.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSwitch'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Switches
  /api/v1/config/switches/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::Switches

        invalidate_cache
          invalidate switch cache

        precreate_acls
          precreate switch ACLs

        standardPlaceholder
          standardPlaceholder
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Switches.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSwitch'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Switches
  /api/v1/config/switches/search:
    description: |-
      pf::UnifiedApi::Controller::Config::Switches

        invalidate_cache
          invalidate switch cache

        precreate_acls
          precreate switch ACLs

        standardPlaceholder
          standardPlaceholder
    post:
      description: Search all items.
      operationId: api.v1.Config.Switches.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Switches
  /api/v1/config/switches/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::Switches

        invalidate_cache
          invalidate switch cache

        precreate_acls
          precreate switch ACLs

        standardPlaceholder
          standardPlaceholder
    patch:
      description: Sort items.
      operationId: api.v1.Config.Switches.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSwitchWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Switches
  /api/v1/config/syslog_forwarder/{syslog_forwarder_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.SyslogForwarders.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: syslog_forwarder_id
        required: true
        schema:
          enum:
          - local
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SyslogForwarders
    description: pf::UnifiedApi::Controller::Config::SyslogForwarders
    get:
      description: Get an item.
      operationId: api.v1.Config.SyslogForwarders.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: syslog_forwarder_id
        required: true
        schema:
          enum:
          - local
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogForwarderWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SyslogForwarders
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.SyslogForwarders.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: syslog_forwarder_id
        required: true
        schema:
          enum:
          - local
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogForwardersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SyslogForwarders
    patch:
      description: Update an item.
      operationId: api.v1.Config.SyslogForwarders.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: syslog_forwarder_id
        required: true
        schema:
          enum:
          - local
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSyslogForwarder'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SyslogForwarders
    put:
      description: Replace an item.
      operationId: api.v1.Config.SyslogForwarders.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: syslog_forwarder_id
        required: true
        schema:
          enum:
          - local
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSyslogForwarder'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SyslogForwarders
  /api/v1/config/syslog_forwarders:
    description: pf::UnifiedApi::Controller::Config::SyslogForwarders
    get:
      description: List all items.
      operationId: api.v1.Config.SyslogForwarders.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogForwardersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/SyslogForwarders
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.SyslogForwarders.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogForwardersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SyslogForwarders
    post:
      description: Create a new item.
      operationId: api.v1.Config.SyslogForwarders.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSyslogForwarder'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/SyslogForwarders
  /api/v1/config/syslog_forwarders/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::SyslogForwarders
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.SyslogForwarders.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogForwarderWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SyslogForwarders
  /api/v1/config/syslog_forwarders/bulk_import:
    description: pf::UnifiedApi::Controller::Config::SyslogForwarders
    post:
      description: Create one or more items.
      operationId: api.v1.Config.SyslogForwarders.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSyslogForwarder'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogForwarderWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SyslogForwarders
  /api/v1/config/syslog_forwarders/bulk_update:
    description: pf::UnifiedApi::Controller::Config::SyslogForwarders
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.SyslogForwarders.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSyslogForwarder'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogForwarderWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SyslogForwarders
  /api/v1/config/syslog_forwarders/search:
    description: pf::UnifiedApi::Controller::Config::SyslogForwarders
    post:
      description: Search all items.
      operationId: api.v1.Config.SyslogForwarders.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogForwardersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/SyslogForwarders
  /api/v1/config/syslog_forwarders/sort_items:
    description: pf::UnifiedApi::Controller::Config::SyslogForwarders
    patch:
      description: Sort items.
      operationId: api.v1.Config.SyslogForwarders.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogForwarderWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/SyslogForwarders
  /api/v1/config/syslog_parser/{syslog_parser_id}:
    delete:
      deprecated: true
      description: Delete an item.
      operationId: api.v1.Config.SyslogParsers.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: syslog_parser_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags: ~
    description: |-
      pf::UnifiedApi::Controller::Config::SyslogParsers

        dry_run
          Dry run a regex parser configuration
    get:
      deprecated: true
      description: Get an item.
      operationId: api.v1.Config.SyslogParsers.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: syslog_parser_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogParserWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags: ~
    options:
      deprecated: true
      description: Get meta for an item.
      operationId: api.v1.Config.SyslogParsers.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: syslog_parser_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogParsersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags: ~
    patch:
      deprecated: true
      description: Update an item.
      operationId: api.v1.Config.SyslogParsers.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: syslog_parser_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSyslogParser'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags: ~
    put:
      deprecated: true
      description: Replace an item.
      operationId: api.v1.Config.SyslogParsers.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: syslog_parser_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSyslogParser'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags: ~
  /api/v1/config/syslog_parsers:
    description: |-
      pf::UnifiedApi::Controller::Config::SyslogParsers

        dry_run
          Dry run a regex parser configuration
    get:
      deprecated: true
      description: List all items.
      operationId: api.v1.Config.SyslogParsers.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogParsersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags: ~
    options:
      deprecated: true
      description: Get meta for a new item.
      operationId: api.v1.Config.SyslogParsers.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogParsersMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags: ~
    post:
      deprecated: true
      description: Create a new item.
      operationId: api.v1.Config.SyslogParsers.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSyslogParser'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags: ~
  /api/v1/config/syslog_parsers/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::SyslogParsers

        dry_run
          Dry run a regex parser configuration
    post:
      deprecated: true
      description: Delete one or more items.
      operationId: api.v1.Config.SyslogParsers.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogParserWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags: ~
  /api/v1/config/syslog_parsers/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::SyslogParsers

        dry_run
          Dry run a regex parser configuration
    post:
      deprecated: true
      description: Create one or more items.
      operationId: api.v1.Config.SyslogParsers.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSyslogParser'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogParserWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags: ~
  /api/v1/config/syslog_parsers/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::SyslogParsers

        dry_run
          Dry run a regex parser configuration
    patch:
      deprecated: true
      description: Update one or more items.
      operationId: api.v1.Config.SyslogParsers.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigSyslogParser'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogParserWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags: ~
  /api/v1/config/syslog_parsers/dry_run:
    description: pf::UnifiedApi::Controller::Config::SyslogParsers
    post:
      deprecated: true
      description: List items
      operationId: api.v1.Config::SyslogParsers.list
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigSyslogParser'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogParserDryRunList'
          description: Dry run list
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags: ~
  /api/v1/config/syslog_parsers/search:
    description: |-
      pf::UnifiedApi::Controller::Config::SyslogParsers

        dry_run
          Dry run a regex parser configuration
    post:
      deprecated: true
      description: Search all items.
      operationId: api.v1.Config.SyslogParsers.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogParsersList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags: ~
  /api/v1/config/syslog_parsers/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::SyslogParsers

        dry_run
          Dry run a regex parser configuration
    patch:
      deprecated: true
      description: Sort items.
      operationId: api.v1.Config.SyslogParsers.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigSyslogParserWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags: ~
  /api/v1/config/system/dns_servers:
    get:
      responses:
        '200':
          $ref: '#/components/responses/ConfigSystemDnsServers'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get system DNS servers.
      tags:
      - Config/System
    put:
      requestBody:
        $ref: '#/components/requestBodies/ConfigSystemDnsServers'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Replace system DNS servers.
      tags:
      - Config/System
  /api/v1/config/system/gateway:
    get:
      responses:
        '200':
          $ref: '#/components/responses/ConfigSystemGateway'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get system Gateway.
      tags:
      - Config/System
    put:
      requestBody:
        $ref: '#/components/requestBodies/ConfigSystemGateway'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Replace system Gateway.
      tags:
      - Config/System
  /api/v1/config/system/hostname:
    get:
      responses:
        '200':
          $ref: '#/components/responses/ConfigSystemHostname'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get system Hostname.
      tags:
      - Config/System
    put:
      requestBody:
        $ref: '#/components/requestBodies/ConfigSystemHostname'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Replace system Hostname.
      tags:
      - Config/System
  /api/v1/config/template_switch/{template_switch_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.TemplateSwitches.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: template_switch_id
        required: true
        schema:
          enum:
          - AeroHIVE::Access_Point
          - Aruba::ArubaSwitchNG
          - Aruba::WirelessController
          - Brocade::Switch
          - Cisco::Switch
          - HP::Switch
          - Hostapd_template
          - Huawei::S5720
          - Juniper::Mist
          - Meru::MC_v2
          - PacketFence::SNMP
          - PacketFence::Standard
          - PaloAlto::PanOS
          - Ruckus::SmartZone_v2
          - Ruckus::ZoneDirector
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/TemplateSwitches
    description: pf::UnifiedApi::Controller::Config::TemplateSwitches
    get:
      description: Get an item.
      operationId: api.v1.Config.TemplateSwitches.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: template_switch_id
        required: true
        schema:
          enum:
          - AeroHIVE::Access_Point
          - Aruba::ArubaSwitchNG
          - Aruba::WirelessController
          - Brocade::Switch
          - Cisco::Switch
          - HP::Switch
          - Hostapd_template
          - Huawei::S5720
          - Juniper::Mist
          - Meru::MC_v2
          - PacketFence::SNMP
          - PacketFence::Standard
          - PaloAlto::PanOS
          - Ruckus::SmartZone_v2
          - Ruckus::ZoneDirector
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigTemplateSwitchWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/TemplateSwitches
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.TemplateSwitches.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: template_switch_id
        required: true
        schema:
          enum:
          - AeroHIVE::Access_Point
          - Aruba::ArubaSwitchNG
          - Aruba::WirelessController
          - Brocade::Switch
          - Cisco::Switch
          - HP::Switch
          - Hostapd_template
          - Huawei::S5720
          - Juniper::Mist
          - Meru::MC_v2
          - PacketFence::SNMP
          - PacketFence::Standard
          - PaloAlto::PanOS
          - Ruckus::SmartZone_v2
          - Ruckus::ZoneDirector
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigTemplateSwitchesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/TemplateSwitches
    patch:
      description: Update an item.
      operationId: api.v1.Config.TemplateSwitches.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: template_switch_id
        required: true
        schema:
          enum:
          - AeroHIVE::Access_Point
          - Aruba::ArubaSwitchNG
          - Aruba::WirelessController
          - Brocade::Switch
          - Cisco::Switch
          - HP::Switch
          - Hostapd_template
          - Huawei::S5720
          - Juniper::Mist
          - Meru::MC_v2
          - PacketFence::SNMP
          - PacketFence::Standard
          - PaloAlto::PanOS
          - Ruckus::SmartZone_v2
          - Ruckus::ZoneDirector
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigTemplateSwitch'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/TemplateSwitches
    put:
      description: Replace an item.
      operationId: api.v1.Config.TemplateSwitches.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: template_switch_id
        required: true
        schema:
          enum:
          - AeroHIVE::Access_Point
          - Aruba::ArubaSwitchNG
          - Aruba::WirelessController
          - Brocade::Switch
          - Cisco::Switch
          - HP::Switch
          - Hostapd_template
          - Huawei::S5720
          - Juniper::Mist
          - Meru::MC_v2
          - PacketFence::SNMP
          - PacketFence::Standard
          - PaloAlto::PanOS
          - Ruckus::SmartZone_v2
          - Ruckus::ZoneDirector
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigTemplateSwitch'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/TemplateSwitches
  /api/v1/config/template_switches:
    description: pf::UnifiedApi::Controller::Config::TemplateSwitches
    get:
      description: List all items.
      operationId: api.v1.Config.TemplateSwitches.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigTemplateSwitchesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/TemplateSwitches
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.TemplateSwitches.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigTemplateSwitchesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/TemplateSwitches
    post:
      description: Create a new item.
      operationId: api.v1.Config.TemplateSwitches.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigTemplateSwitch'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/TemplateSwitches
  /api/v1/config/template_switches/bulk_delete:
    description: pf::UnifiedApi::Controller::Config::TemplateSwitches
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.TemplateSwitches.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigTemplateSwitchWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/TemplateSwitches
  /api/v1/config/template_switches/bulk_import:
    description: pf::UnifiedApi::Controller::Config::TemplateSwitches
    post:
      description: Create one or more items.
      operationId: api.v1.Config.TemplateSwitches.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigTemplateSwitch'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigTemplateSwitchWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/TemplateSwitches
  /api/v1/config/template_switches/bulk_update:
    description: pf::UnifiedApi::Controller::Config::TemplateSwitches
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.TemplateSwitches.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigTemplateSwitch'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigTemplateSwitchWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/TemplateSwitches
  /api/v1/config/template_switches/search:
    description: pf::UnifiedApi::Controller::Config::TemplateSwitches
    post:
      description: Search all items.
      operationId: api.v1.Config.TemplateSwitches.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigTemplateSwitchesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/TemplateSwitches
  /api/v1/config/template_switches/sort_items:
    description: pf::UnifiedApi::Controller::Config::TemplateSwitches
    patch:
      description: Sort items.
      operationId: api.v1.Config.TemplateSwitches.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigTemplateSwitchWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/TemplateSwitches
  /api/v1/configurator/config/base/{base_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.Bases.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: base_id
        required: true
        schema:
          enum:
          - active_active
          - admin_login
          - advanced
          - alerting
          - captive_portal
          - database
          - database_advanced
          - database_proxysql
          - dns_configuration
          - fencing
          - fingerbank_device_change
          - fleetdm
          - general
          - guests_admin_registration
          - inline
          - lets_encrypt
          - monit
          - mse_tab
          - network
          - node_import
          - parking
          - pfconnector
          - pfdhcp
          - ports
          - provisioning
          - radius_configuration
          - services
          - services_url
          - snmp_traps
          - webservices
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    get:
      description: Get an item.
      operationId: api.v1.Config.Bases.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: base_id
        required: true
        schema:
          enum:
          - active_active
          - admin_login
          - advanced
          - alerting
          - captive_portal
          - database
          - database_advanced
          - database_proxysql
          - dns_configuration
          - fencing
          - fingerbank_device_change
          - fleetdm
          - general
          - guests_admin_registration
          - inline
          - lets_encrypt
          - monit
          - mse_tab
          - network
          - node_import
          - parking
          - pfconnector
          - pfdhcp
          - ports
          - provisioning
          - radius_configuration
          - services
          - services_url
          - snmp_traps
          - webservices
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBaseWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.Bases.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: base_id
        required: true
        schema:
          enum:
          - active_active
          - admin_login
          - advanced
          - alerting
          - captive_portal
          - database
          - database_advanced
          - database_proxysql
          - dns_configuration
          - fencing
          - fingerbank_device_change
          - fleetdm
          - general
          - guests_admin_registration
          - inline
          - lets_encrypt
          - monit
          - mse_tab
          - network
          - node_import
          - parking
          - pfconnector
          - pfdhcp
          - ports
          - provisioning
          - radius_configuration
          - services
          - services_url
          - snmp_traps
          - webservices
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBasesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
    patch:
      description: Update an item.
      operationId: api.v1.Config.Bases.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: base_id
        required: true
        schema:
          enum:
          - active_active
          - admin_login
          - advanced
          - alerting
          - captive_portal
          - database
          - database_advanced
          - database_proxysql
          - dns_configuration
          - fencing
          - fingerbank_device_change
          - fleetdm
          - general
          - guests_admin_registration
          - inline
          - lets_encrypt
          - monit
          - mse_tab
          - network
          - node_import
          - parking
          - pfconnector
          - pfdhcp
          - ports
          - provisioning
          - radius_configuration
          - services
          - services_url
          - snmp_traps
          - webservices
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigBase'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Bases
    put:
      description: Replace an item.
      operationId: api.v1.Config.Bases.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: base_id
        required: true
        schema:
          enum:
          - active_active
          - admin_login
          - advanced
          - alerting
          - captive_portal
          - database
          - database_advanced
          - database_proxysql
          - dns_configuration
          - fencing
          - fingerbank_device_change
          - fleetdm
          - general
          - guests_admin_registration
          - inline
          - lets_encrypt
          - monit
          - mse_tab
          - network
          - node_import
          - parking
          - pfconnector
          - pfdhcp
          - ports
          - provisioning
          - radius_configuration
          - services
          - services_url
          - snmp_traps
          - webservices
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigBase'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Bases
  /api/v1/configurator/config/bases:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    get:
      description: List all items.
      operationId: api.v1.Config.Bases.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBasesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Bases
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.Bases.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBasesMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
    post:
      description: Create a new item.
      operationId: api.v1.Config.Bases.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigBase'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/Bases
  /api/v1/configurator/config/bases/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.Bases.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBaseWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
  /api/v1/configurator/config/bases/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    post:
      description: Create one or more items.
      operationId: api.v1.Config.Bases.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigBase'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBaseWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
  /api/v1/configurator/config/bases/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.Bases.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigBase'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBaseWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
  /api/v1/configurator/config/bases/search:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    post:
      description: Search all items.
      operationId: api.v1.Config.Bases.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBasesList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/Bases
  /api/v1/configurator/config/bases/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::Bases

        fields_to_mask
          fields_to_mask
    patch:
      description: Sort items.
      operationId: api.v1.Config.Bases.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigBaseWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/Bases
  /api/v1/configurator/config/fingerbank_setting/{fingerbank_setting_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Config.FingerbankSettings.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fingerbank_setting_id
        required: true
        schema:
          enum:
          - collector
          - proxy
          - query
          - upstream
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    get:
      description: Get an item.
      operationId: api.v1.Config.FingerbankSettings.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fingerbank_setting_id
        required: true
        schema:
          enum:
          - collector
          - proxy
          - query
          - upstream
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
    options:
      description: Get meta for an item.
      operationId: api.v1.Config.FingerbankSettings.resource.resource_options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fingerbank_setting_id
        required: true
        schema:
          enum:
          - collector
          - proxy
          - query
          - upstream
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
    patch:
      description: Update an item.
      operationId: api.v1.Config.FingerbankSettings.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fingerbank_setting_id
        required: true
        schema:
          enum:
          - collector
          - proxy
          - query
          - upstream
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFingerbankSetting'
      responses:
        '201':
          $ref: '#/components/responses/Updated'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FingerbankSettings
    put:
      description: Replace an item.
      operationId: api.v1.Config.FingerbankSettings.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: fingerbank_setting_id
        required: true
        schema:
          enum:
          - collector
          - proxy
          - query
          - upstream
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFingerbankSetting'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FingerbankSettings
  /api/v1/configurator/config/fingerbank_settings:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    get:
      description: List all items.
      operationId: api.v1.Config.FingerbankSettings.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FingerbankSettings
    options:
      description: Get meta for a new item.
      operationId: api.v1.Config.FingerbankSettings.options
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingsMeta'
          description: Request successful. Response contains meta for a resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
    post:
      description: Create a new item.
      operationId: api.v1.Config.FingerbankSettings.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigFingerbankSetting'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Config/FingerbankSettings
  /api/v1/configurator/config/fingerbank_settings/bulk_delete:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    post:
      description: Delete one or more items.
      operationId: api.v1.Config.FingerbankSettings.bulk_delete
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    description: '`PRIMARY KEY`'
                    type: string
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
  /api/v1/configurator/config/fingerbank_settings/bulk_import:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    post:
      description: Create one or more items.
      operationId: api.v1.Config.FingerbankSettings.bulk_import
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFingerbankSetting'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
  /api/v1/configurator/config/fingerbank_settings/bulk_update:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    patch:
      description: Update one or more items.
      operationId: api.v1.Config.FingerbankSettings.bulk_update
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              properties:
                items:
                  items:
                    $ref: '#/components/schemas/ConfigFingerbankSetting'
                  type: array
              type: object
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
  /api/v1/configurator/config/fingerbank_settings/search:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    post:
      description: Search all items.
      operationId: api.v1.Config.FingerbankSettings.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              limit: 25
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      type: string
                    type: array
                required:
                - fields
                - sort
        description: Search for items.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingsList'
          description: Request successful. Response contains a list of resources.
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - Config/FingerbankSettings
  /api/v1/configurator/config/fingerbank_settings/sort_items:
    description: |-
      pf::UnifiedApi::Controller::Config::FingerbankSettings

        fields_to_mask
          fields_to_mask
    patch:
      description: Sort items.
      operationId: api.v1.Config.FingerbankSettings.sort_items
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigFingerbankSettingWrapped'
          description: Request successful. Response contains a specific resource.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Config/FingerbankSettings
  /api/v1/configurator/user/{user_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Configurator.Users.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - Users
    description: |-
      pf::UnifiedApi::Controller::User

        create_data_update
          create_data_update

        cleanup_item
          Remove the password field from the item

        unassign_nodes
          unassign user nodes

        security_events
          security_events

        bulk_register
          bulk_register

        bulk_deregister
          bulk_deregister

        bulk_close_security_events
          bulk_close_security_events

        close_security_events
          close_security_events

        bulk_apply_security_event
          bulk_apply_security_event

        bulk_reevaluate_access
          bulk_reevaluate_access

        bulk_init_results
          bulk_init_results

        bulk_fingerbank_refresh
          bulk_fingerbank_refresh

        do_bulk_update_field
          do_bulk_update_field

        bulk_apply_role
          bulk_apply_role

        bulk_apply_bypass_role
          bulk_apply_bypass_role

        bulk_delete
          bulk_delete

        bulk_import
          bulk_import
    get:
      description: Get an item.
      operationId: api.v1.Configurator.Users.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/User'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
    patch:
      description: Update an item.
      operationId: api.v1.Configurator.Users.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/User'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
    put:
      description: Replace an item.
      operationId: api.v1.Configurator.Users.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/User'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
  /api/v1/configurator/user/{user_id}/node/{node_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Configurator.Users.resource.Users.Nodes.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - Users/Nodes
    description: pf::UnifiedApi::Controller::Users::Nodes
    get:
      description: Get an item.
      operationId: api.v1.Configurator.Users.resource.Users.Nodes.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/UsersNode'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Nodes
    patch:
      description: Update an item.
      operationId: api.v1.Configurator.Users.resource.Users.Nodes.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsersNode'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Nodes
    put:
      description: Replace an item.
      operationId: api.v1.Configurator.Users.resource.Users.Nodes.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsersNode'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Nodes
  /api/v1/configurator/user/{user_id}/nodes:
    description: pf::UnifiedApi::Controller::Users::Nodes
    get:
      description: List all items.
      operationId: api.v1.Configurator.Users.resource.Users.Nodes.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - autoreg
          - bandwidth_balance
          - bypass_acls
          - bypass_role_id
          - bypass_vlan
          - category_id
          - computername
          - detect_date
          - device_class
          - device_manufacturer
          - device_score
          - device_type
          - device_version
          - dhcp6_enterprise
          - dhcp6_fingerprint
          - dhcp_fingerprint
          - dhcp_vendor
          - last_arp
          - last_dhcp
          - last_seen
          - mac
          - machine_account
          - notes
          - pid
          - regdate
          - sessionid
          - status
          - time_balance
          - unregdate
          - user_agent
          - voip
          items:
            enum:
            - autoreg
            - bandwidth_balance
            - bypass_acls
            - bypass_role_id
            - bypass_vlan
            - category_id
            - computername
            - detect_date
            - device_class
            - device_manufacturer
            - device_score
            - device_type
            - device_version
            - dhcp6_enterprise
            - dhcp6_fingerprint
            - dhcp_fingerprint
            - dhcp_vendor
            - last_arp
            - last_dhcp
            - last_seen
            - mac
            - machine_account
            - notes
            - pid
            - regdate
            - sessionid
            - status
            - time_balance
            - unregdate
            - user_agent
            - voip
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ mac ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - mac ASC
          items:
            enum:
            - autoreg ASC
            - autoreg DESC
            - bandwidth_balance ASC
            - bandwidth_balance DESC
            - bypass_acls ASC
            - bypass_acls DESC
            - bypass_role_id ASC
            - bypass_role_id DESC
            - bypass_vlan ASC
            - bypass_vlan DESC
            - category_id ASC
            - category_id DESC
            - computername ASC
            - computername DESC
            - detect_date ASC
            - detect_date DESC
            - device_class ASC
            - device_class DESC
            - device_manufacturer ASC
            - device_manufacturer DESC
            - device_score ASC
            - device_score DESC
            - device_type ASC
            - device_type DESC
            - device_version ASC
            - device_version DESC
            - dhcp6_enterprise ASC
            - dhcp6_enterprise DESC
            - dhcp6_fingerprint ASC
            - dhcp6_fingerprint DESC
            - dhcp_fingerprint ASC
            - dhcp_fingerprint DESC
            - dhcp_vendor ASC
            - dhcp_vendor DESC
            - last_arp ASC
            - last_arp DESC
            - last_dhcp ASC
            - last_dhcp DESC
            - last_seen ASC
            - last_seen DESC
            - mac ASC
            - mac DESC
            - machine_account ASC
            - machine_account DESC
            - notes ASC
            - notes DESC
            - pid ASC
            - pid DESC
            - regdate ASC
            - regdate DESC
            - sessionid ASC
            - sessionid DESC
            - status ASC
            - status DESC
            - time_balance ASC
            - time_balance DESC
            - unregdate ASC
            - unregdate DESC
            - user_agent ASC
            - user_agent DESC
            - voip ASC
            - voip DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersNodesList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Nodes
    post:
      description: Create a new item.
      operationId: api.v1.Configurator.Users.resource.Users.Nodes.create
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsersNode'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Nodes
  /api/v1/configurator/user/{user_id}/nodes/search:
    description: pf::UnifiedApi::Controller::Users::Nodes
    post:
      description: Search all items.
      operationId: api.v1.Configurator.Users.resource.Users.Nodes.search
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - autoreg
              - bandwidth_balance
              - bypass_acls
              - bypass_role_id
              - bypass_vlan
              - category_id
              - computername
              - detect_date
              - device_class
              - device_manufacturer
              - device_score
              - device_type
              - device_version
              - dhcp6_enterprise
              - dhcp6_fingerprint
              - dhcp_fingerprint
              - dhcp_vendor
              - last_arp
              - last_dhcp
              - last_seen
              - mac
              - machine_account
              - notes
              - pid
              - regdate
              - sessionid
              - status
              - time_balance
              - unregdate
              - user_agent
              - voip
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: autoreg
                    op: contains
                    value: foo
                  - field: bandwidth_balance
                    op: contains
                    value: foo
                  - field: bypass_acls
                    op: contains
                    value: foo
                  - field: bypass_role_id
                    op: contains
                    value: foo
                  - field: bypass_vlan
                    op: contains
                    value: foo
                  - field: category_id
                    op: contains
                    value: foo
                  - field: computername
                    op: contains
                    value: foo
                  - field: detect_date
                    op: contains
                    value: foo
                  - field: device_class
                    op: contains
                    value: foo
                  - field: device_manufacturer
                    op: contains
                    value: foo
                  - field: device_score
                    op: contains
                    value: foo
                  - field: device_type
                    op: contains
                    value: foo
                  - field: device_version
                    op: contains
                    value: foo
                  - field: dhcp6_enterprise
                    op: contains
                    value: foo
                  - field: dhcp6_fingerprint
                    op: contains
                    value: foo
                  - field: dhcp_fingerprint
                    op: contains
                    value: foo
                  - field: dhcp_vendor
                    op: contains
                    value: foo
                  - field: last_arp
                    op: contains
                    value: foo
                  - field: last_dhcp
                    op: contains
                    value: foo
                  - field: last_seen
                    op: contains
                    value: foo
                  - field: mac
                    op: contains
                    value: foo
                  - field: machine_account
                    op: contains
                    value: foo
                  - field: notes
                    op: contains
                    value: foo
                  - field: pid
                    op: contains
                    value: foo
                  - field: regdate
                    op: contains
                    value: foo
                  - field: sessionid
                    op: contains
                    value: foo
                  - field: status
                    op: contains
                    value: foo
                  - field: time_balance
                    op: contains
                    value: foo
                  - field: unregdate
                    op: contains
                    value: foo
                  - field: user_agent
                    op: contains
                    value: foo
                  - field: voip
                    op: contains
                    value: foo
              sort:
              - mac ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - autoreg
                      - bandwidth_balance
                      - bypass_acls
                      - bypass_role_id
                      - bypass_vlan
                      - category_id
                      - computername
                      - detect_date
                      - device_class
                      - device_manufacturer
                      - device_score
                      - device_type
                      - device_version
                      - dhcp6_enterprise
                      - dhcp6_fingerprint
                      - dhcp_fingerprint
                      - dhcp_vendor
                      - last_arp
                      - last_dhcp
                      - last_seen
                      - mac
                      - machine_account
                      - notes
                      - pid
                      - regdate
                      - sessionid
                      - status
                      - time_balance
                      - unregdate
                      - user_agent
                      - voip
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - autoreg ASC
                      - autoreg DESC
                      - bandwidth_balance ASC
                      - bandwidth_balance DESC
                      - bypass_acls ASC
                      - bypass_acls DESC
                      - bypass_role_id ASC
                      - bypass_role_id DESC
                      - bypass_vlan ASC
                      - bypass_vlan DESC
                      - category_id ASC
                      - category_id DESC
                      - computername ASC
                      - computername DESC
                      - detect_date ASC
                      - detect_date DESC
                      - device_class ASC
                      - device_class DESC
                      - device_manufacturer ASC
                      - device_manufacturer DESC
                      - device_score ASC
                      - device_score DESC
                      - device_type ASC
                      - device_type DESC
                      - device_version ASC
                      - device_version DESC
                      - dhcp6_enterprise ASC
                      - dhcp6_enterprise DESC
                      - dhcp6_fingerprint ASC
                      - dhcp6_fingerprint DESC
                      - dhcp_fingerprint ASC
                      - dhcp_fingerprint DESC
                      - dhcp_vendor ASC
                      - dhcp_vendor DESC
                      - last_arp ASC
                      - last_arp DESC
                      - last_dhcp ASC
                      - last_dhcp DESC
                      - last_seen ASC
                      - last_seen DESC
                      - mac ASC
                      - mac DESC
                      - machine_account ASC
                      - machine_account DESC
                      - notes ASC
                      - notes DESC
                      - pid ASC
                      - pid DESC
                      - regdate ASC
                      - regdate DESC
                      - sessionid ASC
                      - sessionid DESC
                      - status ASC
                      - status DESC
                      - time_balance ASC
                      - time_balance DESC
                      - unregdate ASC
                      - unregdate DESC
                      - user_agent ASC
                      - user_agent DESC
                      - voip ASC
                      - voip DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersNodesList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Nodes
  /api/v1/configurator/user/{user_id}/password:
    delete:
      description: Delete an item.
      operationId: api.v1.Users.resource.Password.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - Users/Password
    description: |-
      pf::UnifiedApi::Controller::Users::Password

        cleanup_item
          Remove the password field from the item

        validate
          validate
    get:
      description: Get an item.
      operationId: api.v1.Users.resource.Password.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/UsersPassword'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Password
    patch:
      description: Update an item.
      operationId: api.v1.Users.resource.Password.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsersPassword'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Password
    post:
      description: Create a new item.
      operationId: api.v1.Users.resource.Password.create
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsersPassword'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Password
    put:
      description: Replace an item.
      operationId: api.v1.Users.resource.Password.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsersPassword'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Password
  /api/v1/configurator/users:
    description: |-
      pf::UnifiedApi::Controller::User

        create_data_update
          create_data_update

        cleanup_item
          Remove the password field from the item

        unassign_nodes
          unassign user nodes

        security_events
          security_events

        bulk_register
          bulk_register

        bulk_deregister
          bulk_deregister

        bulk_close_security_events
          bulk_close_security_events

        close_security_events
          close_security_events

        bulk_apply_security_event
          bulk_apply_security_event

        bulk_reevaluate_access
          bulk_reevaluate_access

        bulk_init_results
          bulk_init_results

        bulk_fingerbank_refresh
          bulk_fingerbank_refresh

        do_bulk_update_field
          do_bulk_update_field

        bulk_apply_role
          bulk_apply_role

        bulk_apply_bypass_role
          bulk_apply_bypass_role

        bulk_delete
          bulk_delete

        bulk_import
          bulk_import
    get:
      description: List all items.
      operationId: api.v1.Configurator.Users.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - address
          - anniversary
          - apartment_number
          - birthday
          - building_number
          - cell_phone
          - company
          - custom_field_1
          - custom_field_2
          - custom_field_3
          - custom_field_4
          - custom_field_5
          - custom_field_6
          - custom_field_7
          - custom_field_8
          - custom_field_9
          - email
          - firstname
          - gender
          - lang
          - lastname
          - nickname
          - notes
          - otp
          - pid
          - portal
          - potd
          - psk
          - room_number
          - source
          - sponsor
          - sponsored_date
          - telephone
          - title
          - work_phone
          items:
            enum:
            - address
            - anniversary
            - apartment_number
            - birthday
            - building_number
            - cell_phone
            - company
            - custom_field_1
            - custom_field_2
            - custom_field_3
            - custom_field_4
            - custom_field_5
            - custom_field_6
            - custom_field_7
            - custom_field_8
            - custom_field_9
            - email
            - firstname
            - gender
            - lang
            - lastname
            - nickname
            - notes
            - otp
            - pid
            - portal
            - potd
            - psk
            - room_number
            - source
            - sponsor
            - sponsored_date
            - telephone
            - title
            - work_phone
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ pid ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - pid ASC
          items:
            enum:
            - address ASC
            - address DESC
            - anniversary ASC
            - anniversary DESC
            - apartment_number ASC
            - apartment_number DESC
            - birthday ASC
            - birthday DESC
            - building_number ASC
            - building_number DESC
            - cell_phone ASC
            - cell_phone DESC
            - company ASC
            - company DESC
            - custom_field_1 ASC
            - custom_field_1 DESC
            - custom_field_2 ASC
            - custom_field_2 DESC
            - custom_field_3 ASC
            - custom_field_3 DESC
            - custom_field_4 ASC
            - custom_field_4 DESC
            - custom_field_5 ASC
            - custom_field_5 DESC
            - custom_field_6 ASC
            - custom_field_6 DESC
            - custom_field_7 ASC
            - custom_field_7 DESC
            - custom_field_8 ASC
            - custom_field_8 DESC
            - custom_field_9 ASC
            - custom_field_9 DESC
            - email ASC
            - email DESC
            - firstname ASC
            - firstname DESC
            - gender ASC
            - gender DESC
            - lang ASC
            - lang DESC
            - lastname ASC
            - lastname DESC
            - nickname ASC
            - nickname DESC
            - notes ASC
            - notes DESC
            - otp ASC
            - otp DESC
            - pid ASC
            - pid DESC
            - portal ASC
            - portal DESC
            - potd ASC
            - potd DESC
            - psk ASC
            - psk DESC
            - room_number ASC
            - room_number DESC
            - source ASC
            - source DESC
            - sponsor ASC
            - sponsor DESC
            - sponsored_date ASC
            - sponsored_date DESC
            - telephone ASC
            - telephone DESC
            - title ASC
            - title DESC
            - work_phone ASC
            - work_phone DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
    post:
      description: Create a new item.
      operationId: api.v1.Configurator.Users.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/User'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
  /api/v1/configurator/users/search:
    description: |-
      pf::UnifiedApi::Controller::User

        create_data_update
          create_data_update

        cleanup_item
          Remove the password field from the item

        unassign_nodes
          unassign user nodes

        security_events
          security_events

        bulk_register
          bulk_register

        bulk_deregister
          bulk_deregister

        bulk_close_security_events
          bulk_close_security_events

        close_security_events
          close_security_events

        bulk_apply_security_event
          bulk_apply_security_event

        bulk_reevaluate_access
          bulk_reevaluate_access

        bulk_init_results
          bulk_init_results

        bulk_fingerbank_refresh
          bulk_fingerbank_refresh

        do_bulk_update_field
          do_bulk_update_field

        bulk_apply_role
          bulk_apply_role

        bulk_apply_bypass_role
          bulk_apply_bypass_role

        bulk_delete
          bulk_delete

        bulk_import
          bulk_import
    post:
      description: Search all items.
      operationId: api.v1.Configurator.Users.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - address
              - anniversary
              - apartment_number
              - birthday
              - building_number
              - cell_phone
              - company
              - custom_field_1
              - custom_field_2
              - custom_field_3
              - custom_field_4
              - custom_field_5
              - custom_field_6
              - custom_field_7
              - custom_field_8
              - custom_field_9
              - email
              - firstname
              - gender
              - lang
              - lastname
              - nickname
              - notes
              - otp
              - pid
              - portal
              - potd
              - psk
              - room_number
              - source
              - sponsor
              - sponsored_date
              - telephone
              - title
              - work_phone
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: address
                    op: contains
                    value: foo
                  - field: anniversary
                    op: contains
                    value: foo
                  - field: apartment_number
                    op: contains
                    value: foo
                  - field: birthday
                    op: contains
                    value: foo
                  - field: building_number
                    op: contains
                    value: foo
                  - field: cell_phone
                    op: contains
                    value: foo
                  - field: company
                    op: contains
                    value: foo
                  - field: custom_field_1
                    op: contains
                    value: foo
                  - field: custom_field_2
                    op: contains
                    value: foo
                  - field: custom_field_3
                    op: contains
                    value: foo
                  - field: custom_field_4
                    op: contains
                    value: foo
                  - field: custom_field_5
                    op: contains
                    value: foo
                  - field: custom_field_6
                    op: contains
                    value: foo
                  - field: custom_field_7
                    op: contains
                    value: foo
                  - field: custom_field_8
                    op: contains
                    value: foo
                  - field: custom_field_9
                    op: contains
                    value: foo
                  - field: email
                    op: contains
                    value: foo
                  - field: firstname
                    op: contains
                    value: foo
                  - field: gender
                    op: contains
                    value: foo
                  - field: lang
                    op: contains
                    value: foo
                  - field: lastname
                    op: contains
                    value: foo
                  - field: nickname
                    op: contains
                    value: foo
                  - field: notes
                    op: contains
                    value: foo
                  - field: otp
                    op: contains
                    value: foo
                  - field: pid
                    op: contains
                    value: foo
                  - field: portal
                    op: contains
                    value: foo
                  - field: potd
                    op: contains
                    value: foo
                  - field: psk
                    op: contains
                    value: foo
                  - field: room_number
                    op: contains
                    value: foo
                  - field: source
                    op: contains
                    value: foo
                  - field: sponsor
                    op: contains
                    value: foo
                  - field: sponsored_date
                    op: contains
                    value: foo
                  - field: telephone
                    op: contains
                    value: foo
                  - field: title
                    op: contains
                    value: foo
                  - field: work_phone
                    op: contains
                    value: foo
              sort:
              - pid ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - address
                      - anniversary
                      - apartment_number
                      - birthday
                      - building_number
                      - cell_phone
                      - company
                      - custom_field_1
                      - custom_field_2
                      - custom_field_3
                      - custom_field_4
                      - custom_field_5
                      - custom_field_6
                      - custom_field_7
                      - custom_field_8
                      - custom_field_9
                      - email
                      - firstname
                      - gender
                      - lang
                      - lastname
                      - nickname
                      - notes
                      - otp
                      - pid
                      - portal
                      - potd
                      - psk
                      - room_number
                      - source
                      - sponsor
                      - sponsored_date
                      - telephone
                      - title
                      - work_phone
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - address ASC
                      - address DESC
                      - anniversary ASC
                      - anniversary DESC
                      - apartment_number ASC
                      - apartment_number DESC
                      - birthday ASC
                      - birthday DESC
                      - building_number ASC
                      - building_number DESC
                      - cell_phone ASC
                      - cell_phone DESC
                      - company ASC
                      - company DESC
                      - custom_field_1 ASC
                      - custom_field_1 DESC
                      - custom_field_2 ASC
                      - custom_field_2 DESC
                      - custom_field_3 ASC
                      - custom_field_3 DESC
                      - custom_field_4 ASC
                      - custom_field_4 DESC
                      - custom_field_5 ASC
                      - custom_field_5 DESC
                      - custom_field_6 ASC
                      - custom_field_6 DESC
                      - custom_field_7 ASC
                      - custom_field_7 DESC
                      - custom_field_8 ASC
                      - custom_field_8 DESC
                      - custom_field_9 ASC
                      - custom_field_9 DESC
                      - email ASC
                      - email DESC
                      - firstname ASC
                      - firstname DESC
                      - gender ASC
                      - gender DESC
                      - lang ASC
                      - lang DESC
                      - lastname ASC
                      - lastname DESC
                      - nickname ASC
                      - nickname DESC
                      - notes ASC
                      - notes DESC
                      - otp ASC
                      - otp DESC
                      - pid ASC
                      - pid DESC
                      - portal ASC
                      - portal DESC
                      - potd ASC
                      - potd DESC
                      - psk ASC
                      - psk DESC
                      - room_number ASC
                      - room_number DESC
                      - source ASC
                      - source DESC
                      - sponsor ASC
                      - sponsor DESC
                      - sponsored_date ASC
                      - sponsored_date DESC
                      - telephone ASC
                      - telephone DESC
                      - title ASC
                      - title DESC
                      - work_phone ASC
                      - work_phone DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
  /api/v1/current_user/allowed_node_roles:
    get:
      responses:
        '200':
          $ref: '#/components/responses/CurrentUserAllowedNodeRoles'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the allowed node roles.
      tags:
      - Session
  /api/v1/current_user/allowed_user_access_durations:
    get:
      responses:
        '200':
          $ref: '#/components/responses/CurrentUserAllowedAccessDurations'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the allowed access durations.
      tags:
      - Session
  /api/v1/current_user/allowed_user_access_levels:
    get:
      responses:
        '200':
          $ref: '#/components/responses/CurrentUserAllowedAccessLevels'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the allowed access levels.
      tags:
      - Session
  /api/v1/current_user/allowed_user_actions:
    get:
      responses:
        '200':
          $ref: '#/components/responses/CurrentUserAllowedActions'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the allowed actions.
      tags:
      - Session
  /api/v1/current_user/allowed_user_roles:
    get:
      responses:
        '200':
          $ref: '#/components/responses/CurrentUserAllowedUserRoles'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the allowed user roles.
      tags:
      - Session
  /api/v1/current_user/allowed_user_unreg_date:
    get:
      responses:
        '200':
          $ref: '#/components/responses/CurrentUserAllowedUnregDate'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the allowed maximum unregistration date.
      tags:
      - Session
  /api/v1/dhcp/ip/{ip}:
    get:
      description: Performs a DHCP lookup and returns the MAC address for the given
        IP address lease
      responses:
        '200':
          $ref: '#/components/responses/DhcpMacIp'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get a MAC address by IPv4 address
      tags:
      - DHCP
    parameters:
    - $ref: '#/components/parameters/ip'
  /api/v1/dhcp/mac/{mac}:
    delete:
      description: Expires the DHCP lease for a specific MAC address
      responses:
        '200':
          $ref: '#/components/responses/DhcpMacResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Expire a DHCP lease
      tags:
      - DHCP
    get:
      description: Performs a DHCP lookup and returns the IP address leased for the
        given MAC address
      responses:
        '200':
          $ref: '#/components/responses/DhcpMacIp'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get an IPv4 address by MAC address
      tags:
      - DHCP
    parameters:
    - $ref: '#/components/parameters/mac'
  /api/v1/dhcp/options/mac/{mac}:
    delete:
      description: Removes DHCP options for a MAC address
      responses:
        '200':
          $ref: '#/components/responses/DhcpMacResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Delete options by MAC address
      tags:
      - DHCP
    parameters:
    - $ref: '#/components/parameters/mac'
    post:
      description: Add DHCP options to a MAC address
      responses:
        '200':
          $ref: '#/components/responses/DhcpMacResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Add options by MAC address
      tags:
      - DHCP
  /api/v1/dhcp/options/network/{network}:
    delete:
      description: Removes DHCP options for a Network
      responses:
        '200':
          $ref: '#/components/responses/DhcpNetworkResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Delete options by network
      tags:
      - DHCP
    parameters:
    - $ref: '#/components/parameters/network'
    post:
      description: Add DHCP options for a Network
      responses:
        '200':
          $ref: '#/components/responses/DhcpNetworkResponse'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Add options by network
      tags:
      - DHCP
  /api/v1/dhcp/stats/{interface}:
    get:
      description: Shows detailed DHCP statistics for the given interface
      responses:
        '200':
          $ref: '#/components/responses/DhcpInterfaceStats'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get interface statistics
      tags:
      - DHCP
    parameters:
    - $ref: '#/components/parameters/interface'
  /api/v1/dhcp_option82/{dhcp_option82_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.DhcpOption82s.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dhcp_option82_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - DhcpOption82s
    description: pf::UnifiedApi::Controller::DhcpOption82s
    get:
      description: Get an item.
      operationId: api.v1.DhcpOption82s.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dhcp_option82_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/DhcpOption82'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DhcpOption82s
    patch:
      description: Update an item.
      operationId: api.v1.DhcpOption82s.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dhcp_option82_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DhcpOption82'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DhcpOption82s
    put:
      description: Replace an item.
      operationId: api.v1.DhcpOption82s.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dhcp_option82_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DhcpOption82'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DhcpOption82s
  /api/v1/dhcp_option82s:
    description: pf::UnifiedApi::Controller::DhcpOption82s
    get:
      description: List all items.
      operationId: api.v1.DhcpOption82s.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - circuit_id_string
          - created_at
          - host
          - mac
          - module
          - option82_switch
          - port
          - switch_id
          - vlan
          items:
            enum:
            - circuit_id_string
            - created_at
            - host
            - mac
            - module
            - option82_switch
            - port
            - switch_id
            - vlan
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ mac ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - mac ASC
          items:
            enum:
            - circuit_id_string ASC
            - circuit_id_string DESC
            - created_at ASC
            - created_at DESC
            - host ASC
            - host DESC
            - mac ASC
            - mac DESC
            - module ASC
            - module DESC
            - option82_switch ASC
            - option82_switch DESC
            - port ASC
            - port DESC
            - switch_id ASC
            - switch_id DESC
            - vlan ASC
            - vlan DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DhcpOption82sList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DhcpOption82s
    post:
      description: Create a new item.
      operationId: api.v1.DhcpOption82s.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DhcpOption82'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DhcpOption82s
  /api/v1/dhcp_option82s/search:
    description: pf::UnifiedApi::Controller::DhcpOption82s
    post:
      description: Search all items.
      operationId: api.v1.DhcpOption82s.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - circuit_id_string
              - created_at
              - host
              - mac
              - module
              - option82_switch
              - port
              - switch_id
              - vlan
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: circuit_id_string
                    op: contains
                    value: foo
                  - field: created_at
                    op: contains
                    value: foo
                  - field: host
                    op: contains
                    value: foo
                  - field: mac
                    op: contains
                    value: foo
                  - field: module
                    op: contains
                    value: foo
                  - field: option82_switch
                    op: contains
                    value: foo
                  - field: port
                    op: contains
                    value: foo
                  - field: switch_id
                    op: contains
                    value: foo
                  - field: vlan
                    op: contains
                    value: foo
              sort:
              - mac ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - circuit_id_string
                      - created_at
                      - host
                      - mac
                      - module
                      - option82_switch
                      - port
                      - switch_id
                      - vlan
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - circuit_id_string ASC
                      - circuit_id_string DESC
                      - created_at ASC
                      - created_at DESC
                      - host ASC
                      - host DESC
                      - mac ASC
                      - mac DESC
                      - module ASC
                      - module DESC
                      - option82_switch ASC
                      - option82_switch DESC
                      - port ASC
                      - port DESC
                      - switch_id ASC
                      - switch_id DESC
                      - vlan ASC
                      - vlan DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DhcpOption82sList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DhcpOption82s
  /api/v1/dns_audit_log/{dns_audit_log_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.DnsAuditLogs.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dns_audit_log_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - DnsAuditLogs
    description: pf::UnifiedApi::Controller::DnsAuditLogs
    get:
      description: Get an item.
      operationId: api.v1.DnsAuditLogs.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dns_audit_log_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/DnsAuditLog'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DnsAuditLogs
    patch:
      description: Update an item.
      operationId: api.v1.DnsAuditLogs.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dns_audit_log_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DnsAuditLog'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DnsAuditLogs
    put:
      description: Replace an item.
      operationId: api.v1.DnsAuditLogs.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: dns_audit_log_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DnsAuditLog'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DnsAuditLogs
  /api/v1/dns_audit_logs:
    description: pf::UnifiedApi::Controller::DnsAuditLogs
    get:
      description: List all items.
      operationId: api.v1.DnsAuditLogs.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - answer
          - created_at
          - id
          - ip
          - mac
          - qname
          - qtype
          - scope
          items:
            enum:
            - answer
            - created_at
            - id
            - ip
            - mac
            - qname
            - qtype
            - scope
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ id ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - id ASC
          items:
            enum:
            - answer ASC
            - answer DESC
            - created_at ASC
            - created_at DESC
            - id ASC
            - id DESC
            - ip ASC
            - ip DESC
            - mac ASC
            - mac DESC
            - qname ASC
            - qname DESC
            - qtype ASC
            - qtype DESC
            - scope ASC
            - scope DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DnsAuditLogsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DnsAuditLogs
    post:
      description: Create a new item.
      operationId: api.v1.DnsAuditLogs.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DnsAuditLog'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DnsAuditLogs
  /api/v1/dns_audit_logs/search:
    description: pf::UnifiedApi::Controller::DnsAuditLogs
    post:
      description: Search all items.
      operationId: api.v1.DnsAuditLogs.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - answer
              - created_at
              - id
              - ip
              - mac
              - qname
              - qtype
              - scope
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: answer
                    op: contains
                    value: foo
                  - field: created_at
                    op: contains
                    value: foo
                  - field: id
                    op: contains
                    value: foo
                  - field: ip
                    op: contains
                    value: foo
                  - field: mac
                    op: contains
                    value: foo
                  - field: qname
                    op: contains
                    value: foo
                  - field: qtype
                    op: contains
                    value: foo
                  - field: scope
                    op: contains
                    value: foo
              sort:
              - id ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - answer
                      - created_at
                      - id
                      - ip
                      - mac
                      - qname
                      - qtype
                      - scope
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - answer ASC
                      - answer DESC
                      - created_at ASC
                      - created_at DESC
                      - id ASC
                      - id DESC
                      - ip ASC
                      - ip DESC
                      - mac ASC
                      - mac DESC
                      - qname ASC
                      - qname DESC
                      - qtype ASC
                      - qtype DESC
                      - scope ASC
                      - scope DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DnsAuditLogsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DnsAuditLogs
  /api/v1/dynamic_report/{report_id}:
    description: |-
      pf::UnifiedApi::Controller::DynamicReports

        configStore
          Get the dynamic reports config store

        search
          Execute a search on a specific dynamic report

        list
          List all the dynamic reports

        resource
          Get a dynamic report

        resource
          Get a dynamic report

        options
          options
    get:
      description: Get a report
      operationId: api.v1.DynamicReports.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: report_id
        required: true
        schema:
          enum:
          - Accounting::Bandwidth
          - Accounting::Node
          - Accounting::Operating System Class
          - Accounting::User
          - Authentication::All
          - Authentication::All Failures
          - Authentication::All Successes
          - Authentication::Top Failures::Connection Profile to Source
          - Authentication::Top Failures::By Connection Profile
          - Authentication::Top Failures::By Source
          - Authentication::Top Successes::By Connection Profile
          - Authentication::Top Successes::By Source
          - Authentication::Top Successes::Connection Profile to Source
          - Connection Types::Active
          - Connection Types::All
          - Connection Types::Date Range
          - Connection Types::Registered Active
          - Connection Types::Registered All
          - Fingerbank::Unknown Fingerprints::Active
          - Fingerbank::Unknown Fingerprints::All
          - Ip4Log::Archive
          - Ip4Log::History
          - Node::Active
          - Node::Inactive
          - Node::Registered::Active
          - Node::Registered::All
          - Node::Unregistered::Active
          - Node::Unregistered::All
          - Operating System Class::Active
          - Operating System Class::All
          - Operating Systems::Active
          - Operating Systems::All
          - RADIUS Authentication::Top Failures::By MAC
          - RADIUS Authentication::Top Failures::By SSID
          - RADIUS Authentication::Top Failures::By Username
          - RADIUS Authentication::Top Successes::By Computername
          - RADIUS Authentication::Top Successes::By MAC
          - RADIUS Authentication::Top Successes::By SSID
          - RADIUS Authentication::Top Successes::By Username
          - Roles::Active
          - Roles::Active per device class
          - Roles::Active per device manufacturer
          - Roles::Active per device type
          - Roles::All
          - Security Events::Closed
          - Security Events::Open
          - Security Events::Open Active
          - Security Events::Open All
          - SSID::Active
          - SSID::All
          - Top Sponsors::All
          - User::Registration::Email
          - User::Registration::SMS
          - User::Registration::Sponsor
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - DynamicReports
    options:
      description: Get meta of a report
      operationId: api.v1.DynamicReports.resource.options
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: report_id
        required: true
        schema:
          enum:
          - Accounting::Bandwidth
          - Accounting::Node
          - Accounting::Operating System Class
          - Accounting::User
          - Authentication::All
          - Authentication::All Failures
          - Authentication::All Successes
          - Authentication::Top Failures::Connection Profile to Source
          - Authentication::Top Failures::By Connection Profile
          - Authentication::Top Failures::By Source
          - Authentication::Top Successes::By Connection Profile
          - Authentication::Top Successes::By Source
          - Authentication::Top Successes::Connection Profile to Source
          - Connection Types::Active
          - Connection Types::All
          - Connection Types::Date Range
          - Connection Types::Registered Active
          - Connection Types::Registered All
          - Fingerbank::Unknown Fingerprints::Active
          - Fingerbank::Unknown Fingerprints::All
          - Ip4Log::Archive
          - Ip4Log::History
          - Node::Active
          - Node::Inactive
          - Node::Registered::Active
          - Node::Registered::All
          - Node::Unregistered::Active
          - Node::Unregistered::All
          - Operating System Class::Active
          - Operating System Class::All
          - Operating Systems::Active
          - Operating Systems::All
          - RADIUS Authentication::Top Failures::By MAC
          - RADIUS Authentication::Top Failures::By SSID
          - RADIUS Authentication::Top Failures::By Username
          - RADIUS Authentication::Top Successes::By Computername
          - RADIUS Authentication::Top Successes::By MAC
          - RADIUS Authentication::Top Successes::By SSID
          - RADIUS Authentication::Top Successes::By Username
          - Roles::Active
          - Roles::Active per device class
          - Roles::Active per device manufacturer
          - Roles::Active per device type
          - Roles::All
          - Security Events::Closed
          - Security Events::Open
          - Security Events::Open Active
          - Security Events::Open All
          - SSID::Active
          - SSID::All
          - Top Sponsors::All
          - User::Registration::Email
          - User::Registration::SMS
          - User::Registration::Sponsor
          type: string
      responses:
        '200':
          $ref: '#/components/responses/DynamicReportMeta'
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - DynamicReports
  /api/v1/dynamic_report/{report_id}/search:
    description: |-
      pf::UnifiedApi::Controller::DynamicReports

        configStore
          Get the dynamic reports config store

        search
          Execute a search on a specific dynamic report

        list
          List all the dynamic reports

        resource
          Get a dynamic report

        resource
          Get a dynamic report

        options
          options
    post:
      description: Search a report
      operationId: api.v1.DynamicReports.resource.search
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: report_id
        required: true
        schema:
          enum:
          - Accounting::Bandwidth
          - Accounting::Node
          - Accounting::Operating System Class
          - Accounting::User
          - Authentication::All
          - Authentication::All Failures
          - Authentication::All Successes
          - Authentication::Top Failures::Connection Profile to Source
          - Authentication::Top Failures::By Connection Profile
          - Authentication::Top Failures::By Source
          - Authentication::Top Successes::By Connection Profile
          - Authentication::Top Successes::By Source
          - Authentication::Top Successes::Connection Profile to Source
          - Connection Types::Active
          - Connection Types::All
          - Connection Types::Date Range
          - Connection Types::Registered Active
          - Connection Types::Registered All
          - Fingerbank::Unknown Fingerprints::Active
          - Fingerbank::Unknown Fingerprints::All
          - Ip4Log::Archive
          - Ip4Log::History
          - Node::Active
          - Node::Inactive
          - Node::Registered::Active
          - Node::Registered::All
          - Node::Unregistered::Active
          - Node::Unregistered::All
          - Operating System Class::Active
          - Operating System Class::All
          - Operating Systems::Active
          - Operating Systems::All
          - RADIUS Authentication::Top Failures::By MAC
          - RADIUS Authentication::Top Failures::By SSID
          - RADIUS Authentication::Top Failures::By Username
          - RADIUS Authentication::Top Successes::By Computername
          - RADIUS Authentication::Top Successes::By MAC
          - RADIUS Authentication::Top Successes::By SSID
          - RADIUS Authentication::Top Successes::By Username
          - Roles::Active
          - Roles::Active per device class
          - Roles::Active per device manufacturer
          - Roles::Active per device type
          - Roles::All
          - Security Events::Closed
          - Security Events::Open
          - Security Events::Open Active
          - Security Events::Open All
          - SSID::Active
          - SSID::All
          - Top Sponsors::All
          - User::Registration::Email
          - User::Registration::SMS
          - User::Registration::Sponsor
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DynamicReportSearchRequest'
      responses:
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Forbidden'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - DynamicReports
  /api/v1/dynamic_reports:
    description: |-
      pf::UnifiedApi::Controller::DynamicReports

        configStore
          Get the dynamic reports config store

        search
          Execute a search on a specific dynamic report

        list
          List all the dynamic reports

        resource
          Get a dynamic report

        resource
          Get a dynamic report

        options
          options
    get:
      description: List reports
      operationId: api.v1.DynamicReports.list
      parameters: []
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
      tags:
      - DynamicReports
  /api/v1/email/pfmailer:
    post:
      requestBody:
        $ref: '#/components/requestBodies/EmailMailer'
      responses:
        '200':
          $ref: '#/components/responses/EmailMailer'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/ErrorsWithMessage'
      summary: Send an email message to the recipients defined in alerting.
      tags:
      - Email
  /api/v1/email/preview:
    post:
      requestBody:
        $ref: '#/components/requestBodies/EmailPreview'
      responses:
        '200':
          $ref: '#/components/responses/EmailPreview'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/ErrorsWithMessage'
        '500':
          $ref: '#/components/responses/ErrorMessage'
      summary: Preview an email template.
      tags:
      - Email
  /api/v1/email/send:
    post:
      requestBody:
        $ref: '#/components/requestBodies/EmailSend'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/ErrorsWithMessage'
        '500':
          $ref: '#/components/responses/ErrorMessage'
      summary: Send an email template.
      tags:
      - Email
  /api/v1/fingerbank/account_info:
    get:
      externalDocs:
        description: Fingerbank API Documentation.
        url: https://api.fingerbank.org/api_doc/2/users/account_info.html
      responses:
        '200':
          $ref: '#/components/responses/FingerbankAccountInfo'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Account information.
      tags:
      - Fingerbank
  /api/v1/fingerbank/all_device_classes:
    get:
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDeviceClasses'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get all device classes.
      tags:
      - Fingerbank
  /api/v1/fingerbank/can_use_nba_endpoints:
    get:
      responses:
        '200':
          $ref: '#/components/responses/FingerbankNba'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Can use endpoints for Network Behavioural Analysis.
      tags:
      - Fingerbank
  /api/v1/fingerbank/update_upstream_db:
    post:
      responses:
        '200':
          $ref: '#/components/responses/FingerbankUpdateUpstreamDb'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Update upstream database.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/combination/{combination_id}:
    delete:
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Delete local combination.
      tags:
      - Fingerbank
    get:
      responses:
        '200':
          $ref: '#/components/responses/FingerbankCombination'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get local combination.
      tags:
      - Fingerbank
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScopeLocalOnly'
    - in: path
      name: combination_id
      required: true
      schema:
        type: string
    patch:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankCombination'
      responses:
        '200':
          $ref: '#/components/responses/Updated'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Update local combination.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/combinations:
    get:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScope'
      - in: query
        name: cursor
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedCursor'
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedLimit'
      - in: query
        name: sort
        schema:
          $ref: '#/components/schemas/FingerbankCombinationsSort'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankCombinations'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get combinations.
      tags:
      - Fingerbank
    post:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScopeLocalOnly'
      requestBody:
        $ref: '#/components/requestBodies/FingerbankCombination'
      responses:
        '200':
          $ref: '#/components/responses/Created'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Create local combination.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/combinations/search:
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScope'
    post:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankCombinationsSearch'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankCombinationsSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Search local combinations.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/device/{device_id}:
    delete:
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Delete local device.
      tags:
      - Fingerbank
    get:
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDevice'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get local device.
      tags:
      - Fingerbank
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScopeLocalOnly'
    - in: path
      name: device_id
      required: true
      schema:
        type: string
    patch:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDevice'
      responses:
        '200':
          $ref: '#/components/responses/Updated'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Update local device.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/devices:
    get:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScope'
      - in: query
        name: cursor
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedCursor'
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedLimit'
      - in: query
        name: sort
        schema:
          $ref: '#/components/schemas/FingerbankDevicesSort'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDevices'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get devices.
      tags:
      - Fingerbank
    post:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScopeLocalOnly'
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDevice'
      responses:
        '200':
          $ref: '#/components/responses/Created'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Create local device.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/devices/search:
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScope'
    post:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDevicesSearch'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDevicesSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Search local devices.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp6_enterprise/{dhcp6_enterprise_id}:
    delete:
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Delete local DHCPv6 Enterprise.
      tags:
      - Fingerbank
    get:
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcp6Enterprise'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get local DHCPv6 Enterprise.
      tags:
      - Fingerbank
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScopeLocalOnly'
    - in: path
      name: dhcp6_enterprise_id
      required: true
      schema:
        type: string
    patch:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcp6Enterprise'
      responses:
        '200':
          $ref: '#/components/responses/Updated'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Update local DHCPv6 Enterprise.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp6_enterprises:
    get:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScope'
      - in: query
        name: cursor
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedCursor'
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedLimit'
      - in: query
        name: sort
        schema:
          $ref: '#/components/schemas/FingerbankDhcp6EnterprisesSort'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcp6Enterprises'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get DHCPv6 Enterprises.
      tags:
      - Fingerbank
    post:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScopeLocalOnly'
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcp6Enterprise'
      responses:
        '200':
          $ref: '#/components/responses/Created'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Create local DHCPv6 Enterprise.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp6_enterprises/search:
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScope'
    post:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcp6EnterprisesSearch'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcp6EnterprisesSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Search local DHCPv6 Enterprises.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp6_fingerprint/{dhcp6_fingerprint_id}:
    delete:
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Delete local DHCPv6 Fingerprint.
      tags:
      - Fingerbank
    get:
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcp6Fingerprint'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get local DHCPv6 Fingerprint.
      tags:
      - Fingerbank
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScopeLocalOnly'
    - in: path
      name: dhcp6_fingerprint_id
      required: true
      schema:
        type: string
    patch:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcp6Fingerprint'
      responses:
        '200':
          $ref: '#/components/responses/Updated'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Update local DHCPv6 Fingerprint.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp6_fingerprints:
    get:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScope'
      - in: query
        name: cursor
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedCursor'
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedLimit'
      - in: query
        name: sort
        schema:
          $ref: '#/components/schemas/FingerbankDhcp6FingerprintsSort'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcp6Fingerprints'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get DHCPv6 Fingerprints.
      tags:
      - Fingerbank
    post:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScopeLocalOnly'
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcp6Fingerprint'
      responses:
        '200':
          $ref: '#/components/responses/Created'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Create local DHCPv6 Fingerprint.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp6_fingerprints/search:
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScope'
    post:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcp6FingerprintsSearch'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcp6FingerprintsSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Search local DHCPv6 Fingerprints.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp_fingerprint/{dhcp_fingerprint_id}:
    delete:
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Delete local DHCP Fingerprint.
      tags:
      - Fingerbank
    get:
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcpFingerprint'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get local DHCP Fingerprint.
      tags:
      - Fingerbank
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScopeLocalOnly'
    - in: path
      name: dhcp_fingerprint_id
      required: true
      schema:
        type: string
    patch:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcpFingerprint'
      responses:
        '200':
          $ref: '#/components/responses/Updated'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Update local DHCP Fingerprint.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp_fingerprints:
    get:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScope'
      - in: query
        name: cursor
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedCursor'
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedLimit'
      - in: query
        name: sort
        schema:
          $ref: '#/components/schemas/FingerbankDhcpFingerprintsSort'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcpFingerprints'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get DHCP Fingerprints.
      tags:
      - Fingerbank
    post:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScopeLocalOnly'
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcpFingerprint'
      responses:
        '200':
          $ref: '#/components/responses/Created'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Create local DHCP Fingerprint.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp_fingerprints/search:
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScope'
    post:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcpFingerprintsSearch'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcpFingerprintsSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Search local DHCP Fingerprints.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp_vendor/{dhcp_vendor_id}:
    delete:
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Delete local DHCP Vendor.
      tags:
      - Fingerbank
    get:
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcpVendor'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get local DHCP Vendor.
      tags:
      - Fingerbank
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScopeLocalOnly'
    - in: path
      name: dhcp_vendor_id
      required: true
      schema:
        type: string
    patch:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcpVendor'
      responses:
        '200':
          $ref: '#/components/responses/Updated'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Update local DHCP Vendor.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp_vendors:
    get:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScope'
      - in: query
        name: cursor
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedCursor'
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedLimit'
      - in: query
        name: sort
        schema:
          $ref: '#/components/schemas/FingerbankDhcpVendorsSort'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcpVendors'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get DHCP Vendors.
      tags:
      - Fingerbank
    post:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScopeLocalOnly'
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcpVendor'
      responses:
        '200':
          $ref: '#/components/responses/Created'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Create local DHCP Vendor.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/dhcp_vendors/search:
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScope'
    post:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankDhcpVendorsSearch'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankDhcpVendorsSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Search local DHCP Vendors.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/mac_vendor/{mac_vendor_id}:
    delete:
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Delete local MAC Vendor.
      tags:
      - Fingerbank
    get:
      responses:
        '200':
          $ref: '#/components/responses/FingerbankMacVendor'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get local MAC Vendor.
      tags:
      - Fingerbank
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScopeLocalOnly'
    - in: path
      name: mac_vendor_id
      required: true
      schema:
        type: string
    patch:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankMacVendor'
      responses:
        '200':
          $ref: '#/components/responses/Updated'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Update local MAC Vendor.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/mac_vendors:
    get:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScope'
      - in: query
        name: cursor
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedCursor'
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedLimit'
      - in: query
        name: sort
        schema:
          $ref: '#/components/schemas/FingerbankMacVendorsSort'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankMacVendors'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get MAC Vendors.
      tags:
      - Fingerbank
    post:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScopeLocalOnly'
      requestBody:
        $ref: '#/components/requestBodies/FingerbankMacVendor'
      responses:
        '200':
          $ref: '#/components/responses/Created'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Create local MAC Vendor.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/mac_vendors/search:
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScope'
    post:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankMacVendorsSearch'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankMacVendorsSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Search local MAC Vendors.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/user_agent/{user_agent_id}:
    delete:
      responses:
        '200':
          $ref: '#/components/responses/Deleted'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Delete local User Agent.
      tags:
      - Fingerbank
    get:
      responses:
        '200':
          $ref: '#/components/responses/FingerbankUserAgent'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get local User Agent.
      tags:
      - Fingerbank
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScopeLocalOnly'
    - in: path
      name: user_agent_id
      required: true
      schema:
        type: string
    patch:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankUserAgent'
      responses:
        '200':
          $ref: '#/components/responses/Updated'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Update local User Agent.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/user_agents:
    get:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScope'
      - in: query
        name: cursor
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedCursor'
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/FingerbankPaginatedLimit'
      - in: query
        name: sort
        schema:
          $ref: '#/components/schemas/FingerbankUserAgentsSort'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankUserAgents'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get User Agents.
      tags:
      - Fingerbank
    post:
      parameters:
      - in: path
        name: scope
        required: true
        schema:
          $ref: '#/components/schemas/FingerbankScopeLocalOnly'
      requestBody:
        $ref: '#/components/requestBodies/FingerbankUserAgent'
      responses:
        '200':
          $ref: '#/components/responses/Created'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Create local User Agent.
      tags:
      - Fingerbank
  /api/v1/fingerbank/{scope}/user_agents/search:
    parameters:
    - in: path
      name: scope
      required: true
      schema:
        $ref: '#/components/schemas/FingerbankScope'
    post:
      requestBody:
        $ref: '#/components/requestBodies/FingerbankUserAgentsSearch'
      responses:
        '200':
          $ref: '#/components/responses/FingerbankUserAgentsSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Search local User Agents.
      tags:
      - Fingerbank
  /api/v1/ip4log/{ip4log_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Ip4logs.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ip4log_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - Ip4logs
    description: pf::UnifiedApi::Controller::Ip4logs
    get:
      description: Get an item.
      operationId: api.v1.Ip4logs.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ip4log_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/Ip4log'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip4logs
    patch:
      description: Update an item.
      operationId: api.v1.Ip4logs.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ip4log_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Ip4log'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip4logs
    put:
      description: Replace an item.
      operationId: api.v1.Ip4logs.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ip4log_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Ip4log'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip4logs
  /api/v1/ip4logs:
    description: pf::UnifiedApi::Controller::Ip4logs
    get:
      description: List all items.
      operationId: api.v1.Ip4logs.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - end_time
          - ip
          - mac
          - start_time
          items:
            enum:
            - end_time
            - ip
            - mac
            - start_time
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ ip ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - ip ASC
          items:
            enum:
            - end_time ASC
            - end_time DESC
            - ip ASC
            - ip DESC
            - mac ASC
            - mac DESC
            - start_time ASC
            - start_time DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Ip4logsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip4logs
    post:
      description: Create a new item.
      operationId: api.v1.Ip4logs.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Ip4log'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip4logs
  /api/v1/ip4logs/history/{node_id}:
    get:
      description: Show IP4 log history for a device
      parameters:
      - $ref: '#/components/parameters/node_id'
      responses:
        '200':
          $ref: '#/components/responses/Ip4logsHistory'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Ip4logs
  /api/v1/ip4logs/open/{node_id}:
    get:
      description: Show open IP4 logs for a device
      parameters:
      - $ref: '#/components/parameters/node_id'
      responses:
        '200':
          $ref: '#/components/responses/Ip4logsOpen'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Ip4logs
  /api/v1/ip4logs/search:
    description: pf::UnifiedApi::Controller::Ip4logs
    post:
      description: Search all items.
      operationId: api.v1.Ip4logs.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - end_time
              - ip
              - mac
              - start_time
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: end_time
                    op: contains
                    value: foo
                  - field: ip
                    op: contains
                    value: foo
                  - field: mac
                    op: contains
                    value: foo
                  - field: start_time
                    op: contains
                    value: foo
              sort:
              - ip ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - end_time
                      - ip
                      - mac
                      - start_time
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - end_time ASC
                      - end_time DESC
                      - ip ASC
                      - ip DESC
                      - mac ASC
                      - mac DESC
                      - start_time ASC
                      - start_time DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Ip4logsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip4logs
  /api/v1/ip6log/{ip6log_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Ip6logs.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ip6log_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - Ip6logs
    description: pf::UnifiedApi::Controller::Ip6logs
    get:
      description: Get an item.
      operationId: api.v1.Ip6logs.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ip6log_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/Ip6log'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip6logs
    patch:
      description: Update an item.
      operationId: api.v1.Ip6logs.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ip6log_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Ip6log'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip6logs
    put:
      description: Replace an item.
      operationId: api.v1.Ip6logs.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ip6log_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Ip6log'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip6logs
  /api/v1/ip6logs:
    description: pf::UnifiedApi::Controller::Ip6logs
    get:
      description: List all items.
      operationId: api.v1.Ip6logs.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - end_time
          - ip
          - mac
          - start_time
          - type
          items:
            enum:
            - end_time
            - ip
            - mac
            - start_time
            - type
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ ip ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - ip ASC
          items:
            enum:
            - end_time ASC
            - end_time DESC
            - ip ASC
            - ip DESC
            - mac ASC
            - mac DESC
            - start_time ASC
            - start_time DESC
            - type ASC
            - type DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Ip6logsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip6logs
    post:
      description: Create a new item.
      operationId: api.v1.Ip6logs.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Ip6log'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip6logs
  /api/v1/ip6logs/history/{node_id}:
    get:
      description: Show IP6 log history for a device
      parameters:
      - $ref: '#/components/parameters/node_id'
      responses:
        '200':
          $ref: '#/components/responses/Ip6logsHistory'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Ip6logs
  /api/v1/ip6logs/open/{node_id}:
    get:
      description: Show open IP6 logs for a device
      parameters:
      - $ref: '#/components/parameters/node_id'
      responses:
        '200':
          $ref: '#/components/responses/Ip6logsOpen'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Ip6logs
  /api/v1/ip6logs/search:
    description: pf::UnifiedApi::Controller::Ip6logs
    post:
      description: Search all items.
      operationId: api.v1.Ip6logs.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - end_time
              - ip
              - mac
              - start_time
              - type
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: end_time
                    op: contains
                    value: foo
                  - field: ip
                    op: contains
                    value: foo
                  - field: mac
                    op: contains
                    value: foo
                  - field: start_time
                    op: contains
                    value: foo
                  - field: type
                    op: contains
                    value: foo
              sort:
              - ip ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - end_time
                      - ip
                      - mac
                      - start_time
                      - type
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - end_time ASC
                      - end_time DESC
                      - ip ASC
                      - ip DESC
                      - mac ASC
                      - mac DESC
                      - start_time ASC
                      - start_time DESC
                      - type ASC
                      - type DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Ip6logsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Ip6logs
  /api/v1/ipset/add_ip/{ipset_name}:
    post:
      description: Add an IP to a specific ipset
      parameters:
      - $ref: '#/components/parameters/ipset_name'
      - $ref: '#/components/parameters/local'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IpsetIp'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/IpsetIp'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Add an IP to a specific ipset
      tags:
      - Ipset
  /api/v1/ipset/mark_ip_layer2:
    post:
      description: Mark IP layer2
      parameters:
      - $ref: '#/components/parameters/local'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IpsetIp'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/IpsetIp'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Mark IP layer2
      tags:
      - Ipset
  /api/v1/ipset/mark_ip_layer3:
    post:
      description: Mark IP layer3
      parameters:
      - $ref: '#/components/parameters/local'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IpsetIp'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/IpsetIp'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Mark IP layer3
      tags:
      - Ipset
  /api/v1/ipset/mark_layer2:
    post:
      description: '...'
      parameters:
      - $ref: '#/components/parameters/local'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IpsetMac'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/IpsetMac'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: '...'
      tags:
      - Ipset
  /api/v1/ipset/mark_layer3:
    post:
      description: '...'
      parameters:
      - $ref: '#/components/parameters/local'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IpsetIp'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/IpsetIp'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: '...'
      tags:
      - Ipset
  /api/v1/ipset/passthrough:
    post:
      description: Passthrough
      parameters:
      - $ref: '#/components/parameters/local'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IpsetPort'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/IpsetIp'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Passthrough
      tags:
      - Ipset
  /api/v1/ipset/passthrough_isolation:
    post:
      description: Passthrough Isolation
      parameters:
      - $ref: '#/components/parameters/local'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IpsetPort'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/IpsetIp'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Passthrough Isolation
      tags:
      - Ipset
  /api/v1/ipset/remove_ip/{ipset_name}:
    post:
      description: Removes an IP from a specific ipset
      parameters:
      - $ref: '#/components/parameters/ipset_name'
      - $ref: '#/components/parameters/local'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IpsetIp'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/IpsetIp'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Removes an IP from a specific ipset
      tags:
      - Ipset
  /api/v1/ipset/umark_ip:
    post:
      description: '...'
      parameters:
      - $ref: '#/components/parameters/local'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IpsetIp'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/IpsetIp'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: '...'
      tags:
      - Ipset
  /api/v1/ipset/unmark_mac:
    post:
      description: '...'
      parameters:
      - $ref: '#/components/parameters/local'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IpsetMac'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/IpsetMac'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: '...'
      tags:
      - Ipset
  /api/v1/ldap/search:
    post:
      description: This will cause the Packetfence server to perform an LDAP search
        on the provided LDAP server with the provided information
      requestBody:
        content:
          application/json:
            schema:
              properties:
                search_query:
                  properties:
                    attributes:
                      example:
                      - cn
                      - uid
                      - displayName
                      items:
                        type: string
                      type: array
                    base_dn:
                      example: dc=ip,dc=linodeusercontent,dc=com
                      type: string
                    filter:
                      example: (cn=*doe*)
                      type: string
                    scope:
                      enum:
                      - base
                      - one
                      - sub
                      example: base
                      type: string
                    size_limit:
                      example: 100
                      type: integer
                    time_limit:
                      example: 60
                      type: integer
                  type: object
                server:
                  $ref: '#/components/schemas/ConfigSourceSubTypeLdap'
              required:
              - scope
              type: object
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                additionalProperties:
                  additionalProperties:
                    description: All attributes requested in query. Attribute value
                      can be of any type.
                    type: object
                  description: LDAP entry.
                  type: object
                description: Map of LDAP entries. The key is the DN of the entry and
                  the value is the entry.
                example:
                  uid=jdoe,ou=people,dc=ip,dc=linodeusercontent,dc=com:
                    cn: John
                    displayName: John Doe
                    uid: jdoe
                  uid=jdoem,ou=people,dc=ip,dc=linodeusercontent,dc=com:
                    cn: JohnM
                    displayName: John Doe Mathew
                    uid: jdoem
                type: object
          description: Request successful. Response contains LDAP entries.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Perform an LDAP search with provided LDAP server information
      tags:
      - LDAP
  /api/v1/locationlog/{locationlog_id}:
    description: pf::UnifiedApi::Controller::Locationlogs
    get:
      description: Get an item.
      operationId: api.v1.Locationlogs.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: locationlog_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/Locationlog'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Locationlogs
  /api/v1/locationlogs:
    description: pf::UnifiedApi::Controller::Locationlogs
    get:
      description: List all items.
      operationId: api.v1.Locationlogs.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - connection_sub_type
          - connection_type
          - dot1x_username
          - end_time
          - ifDesc
          - mac
          - port
          - realm
          - role
          - session_id
          - ssid
          - start_time
          - stripped_user_name
          - switch
          - switch_ip
          - switch_ip_int
          - switch_mac
          - vlan
          - voip
          items:
            enum:
            - connection_sub_type
            - connection_type
            - dot1x_username
            - end_time
            - ifDesc
            - mac
            - port
            - realm
            - role
            - session_id
            - ssid
            - start_time
            - stripped_user_name
            - switch
            - switch_ip
            - switch_ip_int
            - switch_mac
            - vlan
            - voip
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ mac ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - mac ASC
          items:
            enum:
            - connection_sub_type ASC
            - connection_sub_type DESC
            - connection_type ASC
            - connection_type DESC
            - dot1x_username ASC
            - dot1x_username DESC
            - end_time ASC
            - end_time DESC
            - ifDesc ASC
            - ifDesc DESC
            - mac ASC
            - mac DESC
            - port ASC
            - port DESC
            - realm ASC
            - realm DESC
            - role ASC
            - role DESC
            - session_id ASC
            - session_id DESC
            - ssid ASC
            - ssid DESC
            - start_time ASC
            - start_time DESC
            - stripped_user_name ASC
            - stripped_user_name DESC
            - switch ASC
            - switch DESC
            - switch_ip ASC
            - switch_ip DESC
            - switch_ip_int ASC
            - switch_ip_int DESC
            - switch_mac ASC
            - switch_mac DESC
            - vlan ASC
            - vlan DESC
            - voip ASC
            - voip DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LocationlogsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Locationlogs
  /api/v1/locationlogs/search:
    description: pf::UnifiedApi::Controller::Locationlogs
    post:
      description: Search all items.
      operationId: api.v1.Locationlogs.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - connection_sub_type
              - connection_type
              - dot1x_username
              - end_time
              - ifDesc
              - mac
              - port
              - realm
              - role
              - session_id
              - ssid
              - start_time
              - stripped_user_name
              - switch
              - switch_ip
              - switch_ip_int
              - switch_mac
              - vlan
              - voip
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: connection_sub_type
                    op: contains
                    value: foo
                  - field: connection_type
                    op: contains
                    value: foo
                  - field: dot1x_username
                    op: contains
                    value: foo
                  - field: end_time
                    op: contains
                    value: foo
                  - field: ifDesc
                    op: contains
                    value: foo
                  - field: mac
                    op: contains
                    value: foo
                  - field: port
                    op: contains
                    value: foo
                  - field: realm
                    op: contains
                    value: foo
                  - field: role
                    op: contains
                    value: foo
                  - field: session_id
                    op: contains
                    value: foo
                  - field: ssid
                    op: contains
                    value: foo
                  - field: start_time
                    op: contains
                    value: foo
                  - field: stripped_user_name
                    op: contains
                    value: foo
                  - field: switch
                    op: contains
                    value: foo
                  - field: switch_ip
                    op: contains
                    value: foo
                  - field: switch_ip_int
                    op: contains
                    value: foo
                  - field: switch_mac
                    op: contains
                    value: foo
                  - field: vlan
                    op: contains
                    value: foo
                  - field: voip
                    op: contains
                    value: foo
              sort:
              - mac ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - connection_sub_type
                      - connection_type
                      - dot1x_username
                      - end_time
                      - ifDesc
                      - mac
                      - port
                      - realm
                      - role
                      - session_id
                      - ssid
                      - start_time
                      - stripped_user_name
                      - switch
                      - switch_ip
                      - switch_ip_int
                      - switch_mac
                      - vlan
                      - voip
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - connection_sub_type ASC
                      - connection_sub_type DESC
                      - connection_type ASC
                      - connection_type DESC
                      - dot1x_username ASC
                      - dot1x_username DESC
                      - end_time ASC
                      - end_time DESC
                      - ifDesc ASC
                      - ifDesc DESC
                      - mac ASC
                      - mac DESC
                      - port ASC
                      - port DESC
                      - realm ASC
                      - realm DESC
                      - role ASC
                      - role DESC
                      - session_id ASC
                      - session_id DESC
                      - ssid ASC
                      - ssid DESC
                      - start_time ASC
                      - start_time DESC
                      - stripped_user_name ASC
                      - stripped_user_name DESC
                      - switch ASC
                      - switch DESC
                      - switch_ip ASC
                      - switch_ip DESC
                      - switch_ip_int ASC
                      - switch_ip_int DESC
                      - switch_mac ASC
                      - switch_mac DESC
                      - vlan ASC
                      - vlan DESC
                      - voip ASC
                      - voip DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LocationlogsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Locationlogs
  /api/v1/locationlogs/ssids:
    get:
      description: Get list of SSID's from location logs
      responses:
        '200':
          $ref: '#/components/responses/LocationLogsSsids'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      tags:
      - Locationlogs
  /api/v1/login:
    post:
      description: This will perform a login against the PacketFence system user,
        the webservices credentials and any configured internal sources in PacketFence
        in this order. The order of priority for the PacketFence sources is the same
        as they are defined in authentication.conf (top to bottom). Token obtain via
        this API call are valid for 10 minutes. Upon expiration, a new token must
        be obtained by calling this API endpoint again.
      requestBody:
        content:
          application/json:
            schema:
              properties:
                password:
                  type: string
                username:
                  type: string
              type: object
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  token:
                    type: string
                type: object
          description: Login successful
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
      security:
      - none: []
      summary: Login into the API and obtain a token
      tags:
      - Session
  /api/v1/logs/tail:
    options:
      responses:
        '200':
          $ref: '#/components/responses/LogsMeta'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
      summary: Meta for log-tail session.
      tags:
      - LiveLogs
    post:
      requestBody:
        $ref: '#/components/requestBodies/LogsCreate'
      responses:
        '200':
          $ref: '#/components/responses/LogsCreate'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
      summary: Create new log-tail session.
      tags:
      - LiveLogs
  /api/v1/logs/tail/{session_id}:
    delete:
      responses:
        '200':
          $ref: '#/components/responses/LogsDelete'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
      summary: Delete log-tail session.
      tags:
      - LiveLogs
    get:
      responses:
        '200':
          $ref: '#/components/responses/LogsTail'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
      summary: Returns immediately if there is at least one entry. Waits for entries
        until timeout.
      tags:
      - LiveLogs
    parameters:
    - in: path
      name: session_id
      required: true
      schema:
        type: string
  /api/v1/logs/tail/{session_id}/touch:
    parameters:
    - in: path
      name: session_id
      required: true
      schema:
        type: string
    post:
      responses:
        '200':
          $ref: '#/components/responses/LogsTouch'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
      summary: Touch session without updating read pointer.
      tags:
      - LiveLogs
  /api/v1/node/{node_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Nodes.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - Nodes
    description: |-
      pf::UnifiedApi::Controller::Nodes

        register
          register

        deregister
          deregister

        bulk_register
          bulk_register

        bulk_init_results
          bulk_init_results

        bulk_deregister
          bulk_deregister

        fingerbank_info
          fingerbank_info

        fingerbank_refresh
          fingerbank_refresh

        bulk_close_security_events
          bulk_close_security_events

        close_security_event
          close_security_event

        create_error_msg
          create_error_msg

        bulk_reevaluate_access
          bulk_reevaluate_access

        bulk_fingerbank_refresh
          bulk_fingerbank_refresh

        post_update
          post_update

        bulk_restart_switchport
          bulk_restart_switchport

        bulk_apply_security_event
          bulk_apply_security_event

        apply_security_event
          apply_security_event

        bulk_apply_role
          bulk_apply_role

        bulk_apply_bypass_role
          bulk_apply_bypass_role

        bulk_apply_bypass_acls
          bulk update bypass_acls

        bulk_apply_bypass_vlan
          bulk update bypass_vlan

        do_bulk_update_field
          do_bulk_update_field

        do_bulk_update_field
          do_bulk_update_field2

        restart_switchport
          restart_switchport

        do_restart_switchport
          do_restart_switchport

        reevaluate_access
          reevaluate_access

        rapid7
          rapid7

        security_events
          security_events

        park
          park

        unpark
          unpark

        network_graph
          network_graph

        build_network_graph_info
          build_network_graph_info

        network_graph_search_builder
          network_graph_search_builder

        pf_network_graph_node
          pf_network_graph_node

        map_to_network_graph
          map_to_network_graph

        add_switch_to_network_graph
          add_switch_to_network_graph

        add_swith_group_to_network_graph
          add_swith_group_to_network_graph

        pf_network_graph_switch_info
          pf_network_graph_switch_info

        get_switch_data
          get_switch_data

        bulk_import
          bulk_import

        validate
          validate

        _do_remove
          _do_remove

        create_data_update
          create_data_update
    get:
      description: Get an item.
      operationId: api.v1.Nodes.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/Node'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Nodes
    patch:
      description: Update an item.
      operationId: api.v1.Nodes.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Node'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Nodes
    put:
      description: Replace an item.
      operationId: api.v1.Nodes.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Node'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Nodes
  /api/v1/node/{node_id}/apply_security_event:
    put:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/NodeSecurityEvent'
      responses:
        '200':
          $ref: '#/components/responses/Status'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Apply Security Event to node.
      tags:
      - Nodes
  /api/v1/node/{node_id}/close_security_event:
    put:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/NodeSecurityEvent'
      responses:
        '200':
          $ref: '#/components/responses/Status'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Apply Security Event to node.
      tags:
      - Nodes
  /api/v1/node/{node_id}/fingerbank_info:
    get:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/NodeFingerbankInfo'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Get Fingerbank Profiling of node.
      tags:
      - Nodes
  /api/v1/node/{node_id}/fingerbank_refresh:
    put:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Status'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Refresh Fingerbank Profiling of node.
      tags:
      - Nodes
  /api/v1/node/{node_id}/rapid7:
    get:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/NodeRapid7'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Get rapid7 of node.
      tags:
      - Nodes
  /api/v1/node/{node_id}/reevaluate_access:
    put:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Status'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Reevaluate Access for node.
      tags:
      - Nodes
  /api/v1/node/{node_id}/restart_switchport:
    put:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Status'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Restart Switch Port for node.
      tags:
      - Nodes
  /api/v1/node_categories:
    description: pf::UnifiedApi::Controller::NodeCategories
    get:
      description: List all items.
      operationId: api.v1.NodeCategories.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - acls
          - category_id
          - fingerbank_dynamic_access_list
          - include_parent_acls
          - inherit_role
          - inherit_vlan
          - inherit_web_auth_url
          - max_nodes_per_pid
          - name
          - notes
          items:
            enum:
            - acls
            - category_id
            - fingerbank_dynamic_access_list
            - include_parent_acls
            - inherit_role
            - inherit_vlan
            - inherit_web_auth_url
            - max_nodes_per_pid
            - name
            - notes
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ category_id ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - category_id ASC
          items:
            enum:
            - acls ASC
            - acls DESC
            - category_id ASC
            - category_id DESC
            - fingerbank_dynamic_access_list ASC
            - fingerbank_dynamic_access_list DESC
            - include_parent_acls ASC
            - include_parent_acls DESC
            - inherit_role ASC
            - inherit_role DESC
            - inherit_vlan ASC
            - inherit_vlan DESC
            - inherit_web_auth_url ASC
            - inherit_web_auth_url DESC
            - max_nodes_per_pid ASC
            - max_nodes_per_pid DESC
            - name ASC
            - name DESC
            - notes ASC
            - notes DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NodeCategoriesList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - NodeCategories
  /api/v1/node_categories/search:
    description: pf::UnifiedApi::Controller::NodeCategories
    post:
      description: Search all items.
      operationId: api.v1.NodeCategories.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - acls
              - category_id
              - fingerbank_dynamic_access_list
              - include_parent_acls
              - inherit_role
              - inherit_vlan
              - inherit_web_auth_url
              - max_nodes_per_pid
              - name
              - notes
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: acls
                    op: contains
                    value: foo
                  - field: category_id
                    op: contains
                    value: foo
                  - field: fingerbank_dynamic_access_list
                    op: contains
                    value: foo
                  - field: include_parent_acls
                    op: contains
                    value: foo
                  - field: inherit_role
                    op: contains
                    value: foo
                  - field: inherit_vlan
                    op: contains
                    value: foo
                  - field: inherit_web_auth_url
                    op: contains
                    value: foo
                  - field: max_nodes_per_pid
                    op: contains
                    value: foo
                  - field: name
                    op: contains
                    value: foo
                  - field: notes
                    op: contains
                    value: foo
              sort:
              - category_id ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - acls
                      - category_id
                      - fingerbank_dynamic_access_list
                      - include_parent_acls
                      - inherit_role
                      - inherit_vlan
                      - inherit_web_auth_url
                      - max_nodes_per_pid
                      - name
                      - notes
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - acls ASC
                      - acls DESC
                      - category_id ASC
                      - category_id DESC
                      - fingerbank_dynamic_access_list ASC
                      - fingerbank_dynamic_access_list DESC
                      - include_parent_acls ASC
                      - include_parent_acls DESC
                      - inherit_role ASC
                      - inherit_role DESC
                      - inherit_vlan ASC
                      - inherit_vlan DESC
                      - inherit_web_auth_url ASC
                      - inherit_web_auth_url DESC
                      - max_nodes_per_pid ASC
                      - max_nodes_per_pid DESC
                      - name ASC
                      - name DESC
                      - notes ASC
                      - notes DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NodeCategoriesList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - NodeCategories
  /api/v1/node_category/{node_category_id}:
    description: pf::UnifiedApi::Controller::NodeCategories
    get:
      description: Get an item.
      operationId: api.v1.NodeCategories.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: node_category_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/NodeCategory'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - NodeCategories
  /api/v1/nodes:
    description: |-
      pf::UnifiedApi::Controller::Nodes

        register
          register

        deregister
          deregister

        bulk_register
          bulk_register

        bulk_init_results
          bulk_init_results

        bulk_deregister
          bulk_deregister

        fingerbank_info
          fingerbank_info

        fingerbank_refresh
          fingerbank_refresh

        bulk_close_security_events
          bulk_close_security_events

        close_security_event
          close_security_event

        create_error_msg
          create_error_msg

        bulk_reevaluate_access
          bulk_reevaluate_access

        bulk_fingerbank_refresh
          bulk_fingerbank_refresh

        post_update
          post_update

        bulk_restart_switchport
          bulk_restart_switchport

        bulk_apply_security_event
          bulk_apply_security_event

        apply_security_event
          apply_security_event

        bulk_apply_role
          bulk_apply_role

        bulk_apply_bypass_role
          bulk_apply_bypass_role

        bulk_apply_bypass_acls
          bulk update bypass_acls

        bulk_apply_bypass_vlan
          bulk update bypass_vlan

        do_bulk_update_field
          do_bulk_update_field

        do_bulk_update_field
          do_bulk_update_field2

        restart_switchport
          restart_switchport

        do_restart_switchport
          do_restart_switchport

        reevaluate_access
          reevaluate_access

        rapid7
          rapid7

        security_events
          security_events

        park
          park

        unpark
          unpark

        network_graph
          network_graph

        build_network_graph_info
          build_network_graph_info

        network_graph_search_builder
          network_graph_search_builder

        pf_network_graph_node
          pf_network_graph_node

        map_to_network_graph
          map_to_network_graph

        add_switch_to_network_graph
          add_switch_to_network_graph

        add_swith_group_to_network_graph
          add_swith_group_to_network_graph

        pf_network_graph_switch_info
          pf_network_graph_switch_info

        get_switch_data
          get_switch_data

        bulk_import
          bulk_import

        validate
          validate

        _do_remove
          _do_remove

        create_data_update
          create_data_update
    get:
      description: List all items.
      operationId: api.v1.Nodes.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - autoreg
          - bandwidth_balance
          - bypass_acls
          - bypass_role_id
          - bypass_vlan
          - category_id
          - computername
          - detect_date
          - device_class
          - device_manufacturer
          - device_score
          - device_type
          - device_version
          - dhcp6_enterprise
          - dhcp6_fingerprint
          - dhcp_fingerprint
          - dhcp_vendor
          - last_arp
          - last_dhcp
          - last_seen
          - mac
          - machine_account
          - notes
          - pid
          - regdate
          - sessionid
          - status
          - time_balance
          - unregdate
          - user_agent
          - voip
          items:
            enum:
            - autoreg
            - bandwidth_balance
            - bypass_acls
            - bypass_role_id
            - bypass_vlan
            - category_id
            - computername
            - detect_date
            - device_class
            - device_manufacturer
            - device_score
            - device_type
            - device_version
            - dhcp6_enterprise
            - dhcp6_fingerprint
            - dhcp_fingerprint
            - dhcp_vendor
            - last_arp
            - last_dhcp
            - last_seen
            - mac
            - machine_account
            - notes
            - pid
            - regdate
            - sessionid
            - status
            - time_balance
            - unregdate
            - user_agent
            - voip
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ mac ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - mac ASC
          items:
            enum:
            - autoreg ASC
            - autoreg DESC
            - bandwidth_balance ASC
            - bandwidth_balance DESC
            - bypass_acls ASC
            - bypass_acls DESC
            - bypass_role_id ASC
            - bypass_role_id DESC
            - bypass_vlan ASC
            - bypass_vlan DESC
            - category_id ASC
            - category_id DESC
            - computername ASC
            - computername DESC
            - detect_date ASC
            - detect_date DESC
            - device_class ASC
            - device_class DESC
            - device_manufacturer ASC
            - device_manufacturer DESC
            - device_score ASC
            - device_score DESC
            - device_type ASC
            - device_type DESC
            - device_version ASC
            - device_version DESC
            - dhcp6_enterprise ASC
            - dhcp6_enterprise DESC
            - dhcp6_fingerprint ASC
            - dhcp6_fingerprint DESC
            - dhcp_fingerprint ASC
            - dhcp_fingerprint DESC
            - dhcp_vendor ASC
            - dhcp_vendor DESC
            - last_arp ASC
            - last_arp DESC
            - last_dhcp ASC
            - last_dhcp DESC
            - last_seen ASC
            - last_seen DESC
            - mac ASC
            - mac DESC
            - machine_account ASC
            - machine_account DESC
            - notes ASC
            - notes DESC
            - pid ASC
            - pid DESC
            - regdate ASC
            - regdate DESC
            - sessionid ASC
            - sessionid DESC
            - status ASC
            - status DESC
            - time_balance ASC
            - time_balance DESC
            - unregdate ASC
            - unregdate DESC
            - user_agent ASC
            - user_agent DESC
            - voip ASC
            - voip DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NodesList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Nodes
    post:
      description: Create a new item.
      operationId: api.v1.Nodes.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Node'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Nodes
  /api/v1/nodes/bulk_apply_bypass_role:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesBulkBypassRole'
      responses:
        '200':
          $ref: '#/components/responses/NodesBulk'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Apply Bypass Role to bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/bulk_apply_bypass_vlan:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesBulkBypassVlan'
      responses:
        '200':
          $ref: '#/components/responses/NodesBulk'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Apply Bypass VLAN to bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/bulk_apply_role:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesBulkRole'
      responses:
        '200':
          $ref: '#/components/responses/NodesBulk'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Apply Role to bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/bulk_apply_security_event:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesBulkSecurityEvent'
      responses:
        '200':
          $ref: '#/components/responses/NodesBulk'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Apply Security Event to bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/bulk_close_security_events:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesBulk'
      responses:
        '200':
          $ref: '#/components/responses/NodesBulk'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Close all Security Events for bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/bulk_deregister:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesBulk'
      responses:
        '200':
          $ref: '#/components/responses/NodesBulk'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Deregister bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/bulk_fingerbank_refresh:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesBulk'
      responses:
        '200':
          $ref: '#/components/responses/NodesBulk'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Refresh Fingerbank Profiling for bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/bulk_import:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesBulkImport'
      responses:
        '200':
          $ref: '#/components/responses/NodesBulkImport'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Import bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/bulk_reevaluate_access:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesBulk'
      responses:
        '200':
          $ref: '#/components/responses/NodesBulk'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Reevaluate Access for bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/bulk_register:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesBulk'
      responses:
        '200':
          $ref: '#/components/responses/NodesBulk'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Register bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/bulk_restart_switchport:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesBulk'
      responses:
        '200':
          $ref: '#/components/responses/NodesBulk'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Restart Switch Ports for bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/fingerbank_communications:
    post:
      requestBody:
        $ref: '#/components/requestBodies/NodesNetworkCommunications'
      responses:
        '200':
          $ref: '#/components/responses/NodesNetworkCommunications'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Get network communication of bulk nodes.
      tags:
      - Nodes
  /api/v1/nodes/network_graph:
    post:
      description: Get graph of network layout for bulk nodes.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Search'
      responses:
        '200':
          $ref: '#/components/responses/NodesNetworkGraph'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Nodes
  /api/v1/nodes/per_device_class:
    get:
      responses:
        '200':
          $ref: '#/components/responses/NodesPerDeviceClass'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get count of nodes per device class.
      tags:
      - Nodes
  /api/v1/nodes/search:
    description: |-
      pf::UnifiedApi::Controller::Nodes

        register
          register

        deregister
          deregister

        bulk_register
          bulk_register

        bulk_init_results
          bulk_init_results

        bulk_deregister
          bulk_deregister

        fingerbank_info
          fingerbank_info

        fingerbank_refresh
          fingerbank_refresh

        bulk_close_security_events
          bulk_close_security_events

        close_security_event
          close_security_event

        create_error_msg
          create_error_msg

        bulk_reevaluate_access
          bulk_reevaluate_access

        bulk_fingerbank_refresh
          bulk_fingerbank_refresh

        post_update
          post_update

        bulk_restart_switchport
          bulk_restart_switchport

        bulk_apply_security_event
          bulk_apply_security_event

        apply_security_event
          apply_security_event

        bulk_apply_role
          bulk_apply_role

        bulk_apply_bypass_role
          bulk_apply_bypass_role

        bulk_apply_bypass_acls
          bulk update bypass_acls

        bulk_apply_bypass_vlan
          bulk update bypass_vlan

        do_bulk_update_field
          do_bulk_update_field

        do_bulk_update_field
          do_bulk_update_field2

        restart_switchport
          restart_switchport

        do_restart_switchport
          do_restart_switchport

        reevaluate_access
          reevaluate_access

        rapid7
          rapid7

        security_events
          security_events

        park
          park

        unpark
          unpark

        network_graph
          network_graph

        build_network_graph_info
          build_network_graph_info

        network_graph_search_builder
          network_graph_search_builder

        pf_network_graph_node
          pf_network_graph_node

        map_to_network_graph
          map_to_network_graph

        add_switch_to_network_graph
          add_switch_to_network_graph

        add_swith_group_to_network_graph
          add_swith_group_to_network_graph

        pf_network_graph_switch_info
          pf_network_graph_switch_info

        get_switch_data
          get_switch_data

        bulk_import
          bulk_import

        validate
          validate

        _do_remove
          _do_remove

        create_data_update
          create_data_update
    post:
      description: Search all items.
      operationId: api.v1.Nodes.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - autoreg
              - bandwidth_balance
              - bypass_acls
              - bypass_role_id
              - bypass_vlan
              - category_id
              - computername
              - detect_date
              - device_class
              - device_manufacturer
              - device_score
              - device_type
              - device_version
              - dhcp6_enterprise
              - dhcp6_fingerprint
              - dhcp_fingerprint
              - dhcp_vendor
              - last_arp
              - last_dhcp
              - last_seen
              - mac
              - machine_account
              - notes
              - pid
              - regdate
              - sessionid
              - status
              - time_balance
              - unregdate
              - user_agent
              - voip
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: autoreg
                    op: contains
                    value: foo
                  - field: bandwidth_balance
                    op: contains
                    value: foo
                  - field: bypass_acls
                    op: contains
                    value: foo
                  - field: bypass_role_id
                    op: contains
                    value: foo
                  - field: bypass_vlan
                    op: contains
                    value: foo
                  - field: category_id
                    op: contains
                    value: foo
                  - field: computername
                    op: contains
                    value: foo
                  - field: detect_date
                    op: contains
                    value: foo
                  - field: device_class
                    op: contains
                    value: foo
                  - field: device_manufacturer
                    op: contains
                    value: foo
                  - field: device_score
                    op: contains
                    value: foo
                  - field: device_type
                    op: contains
                    value: foo
                  - field: device_version
                    op: contains
                    value: foo
                  - field: dhcp6_enterprise
                    op: contains
                    value: foo
                  - field: dhcp6_fingerprint
                    op: contains
                    value: foo
                  - field: dhcp_fingerprint
                    op: contains
                    value: foo
                  - field: dhcp_vendor
                    op: contains
                    value: foo
                  - field: last_arp
                    op: contains
                    value: foo
                  - field: last_dhcp
                    op: contains
                    value: foo
                  - field: last_seen
                    op: contains
                    value: foo
                  - field: mac
                    op: contains
                    value: foo
                  - field: machine_account
                    op: contains
                    value: foo
                  - field: notes
                    op: contains
                    value: foo
                  - field: pid
                    op: contains
                    value: foo
                  - field: regdate
                    op: contains
                    value: foo
                  - field: sessionid
                    op: contains
                    value: foo
                  - field: status
                    op: contains
                    value: foo
                  - field: time_balance
                    op: contains
                    value: foo
                  - field: unregdate
                    op: contains
                    value: foo
                  - field: user_agent
                    op: contains
                    value: foo
                  - field: voip
                    op: contains
                    value: foo
              sort:
              - mac ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - autoreg
                      - bandwidth_balance
                      - bypass_acls
                      - bypass_role_id
                      - bypass_vlan
                      - category_id
                      - computername
                      - detect_date
                      - device_class
                      - device_manufacturer
                      - device_score
                      - device_type
                      - device_version
                      - dhcp6_enterprise
                      - dhcp6_fingerprint
                      - dhcp_fingerprint
                      - dhcp_vendor
                      - last_arp
                      - last_dhcp
                      - last_seen
                      - mac
                      - machine_account
                      - notes
                      - pid
                      - regdate
                      - sessionid
                      - status
                      - time_balance
                      - unregdate
                      - user_agent
                      - voip
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - autoreg ASC
                      - autoreg DESC
                      - bandwidth_balance ASC
                      - bandwidth_balance DESC
                      - bypass_acls ASC
                      - bypass_acls DESC
                      - bypass_role_id ASC
                      - bypass_role_id DESC
                      - bypass_vlan ASC
                      - bypass_vlan DESC
                      - category_id ASC
                      - category_id DESC
                      - computername ASC
                      - computername DESC
                      - detect_date ASC
                      - detect_date DESC
                      - device_class ASC
                      - device_class DESC
                      - device_manufacturer ASC
                      - device_manufacturer DESC
                      - device_score ASC
                      - device_score DESC
                      - device_type ASC
                      - device_type DESC
                      - device_version ASC
                      - device_version DESC
                      - dhcp6_enterprise ASC
                      - dhcp6_enterprise DESC
                      - dhcp6_fingerprint ASC
                      - dhcp6_fingerprint DESC
                      - dhcp_fingerprint ASC
                      - dhcp_fingerprint DESC
                      - dhcp_vendor ASC
                      - dhcp_vendor DESC
                      - last_arp ASC
                      - last_arp DESC
                      - last_dhcp ASC
                      - last_dhcp DESC
                      - last_seen ASC
                      - last_seen DESC
                      - mac ASC
                      - mac DESC
                      - machine_account ASC
                      - machine_account DESC
                      - notes ASC
                      - notes DESC
                      - pid ASC
                      - pid DESC
                      - regdate ASC
                      - regdate DESC
                      - sessionid ASC
                      - sessionid DESC
                      - status ASC
                      - status DESC
                      - time_balance ASC
                      - time_balance DESC
                      - unregdate ASC
                      - unregdate DESC
                      - user_agent ASC
                      - user_agent DESC
                      - voip ASC
                      - voip DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NodesList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Nodes
  /api/v1/pfqueue/task/{task_id}/status/poll:
    get:
      responses:
        '200':
          $ref: '#/components/responses/PfQueue'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/ErrorMessage'
      summary: Poll queue.
      tags:
      - Async
    parameters:
    - in: path
      name: task_id
      required: true
      schema:
        type: string
  /api/v1/pki/ca/csr/{ca_id}:
    post:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ca_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/PkiCa'
      responses:
        '200':
          $ref: '#/components/responses/PkiCasList'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Generate Certificate Signing Request.
      tags:
      - PKI
  /api/v1/pki/ca/resign/{ca_id}:
    post:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ca_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/PkiCa'
      responses:
        '200':
          $ref: '#/components/responses/PkiCasList'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Re-Sign PKI Certificate Authority.
      tags:
      - PKI
  /api/v1/pki/ca/{ca_id}:
    get:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ca_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/PkiCa'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get PKI Certificate Authority.
      tags:
      - PKI
    patch:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: ca_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/PkiCaCertOnly'
      responses:
        '200':
          $ref: '#/components/responses/PkiCa'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Update Certificate Authority Public Key.
      tags:
      - PKI
  /api/v1/pki/cas:
    get:
      responses:
        '200':
          $ref: '#/components/responses/PkiCasList'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get PKI Certificate Authorities.
      tags:
      - PKI
    post:
      requestBody:
        $ref: '#/components/requestBodies/PkiCa'
      responses:
        '200':
          $ref: '#/components/responses/PkiCaCreate'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Create PKI Certificate Authority.
      tags:
      - PKI
  /api/v1/pki/cas/search:
    post:
      requestBody:
        $ref: '#/components/requestBodies/PkiCasSearch'
      responses:
        '200':
          $ref: '#/components/responses/PkiCasSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Search PKI Certificate Authorities.
      tags:
      - PKI
  /api/v1/pki/cert/resign/{cert_id}:
    post:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: cert_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/PkiCert'
      responses:
        '200':
          $ref: '#/components/responses/PkiCert'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Re-Sign PKI Certificate.
      tags:
      - PKI
  /api/v1/pki/cert/{cert_id}:
    get:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: cert_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/PkiCert'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get PKI Certificate.
      tags:
      - PKI
  /api/v1/pki/cert/{cert_id}/download/{password}:
    get:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: cert_id
        required: true
        schema:
          type: string
      - description: Certificate password.
        in: path
        name: password
        required: true
        schema:
          format: password
          type: string
      responses:
        '200':
          $ref: '#/components/responses/PkiCertDownload'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Download Passworded PKI Certificate.
      tags:
      - PKI
  /api/v1/pki/cert/{cert_id}/email:
    get:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: cert_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/PkiCertEmail'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Email PKI Certificate.
      tags:
      - PKI
  /api/v1/pki/cert/{cert_id}/{reason}:
    delete:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: cert_id
        required: true
        schema:
          type: string
      - description: |
          ### Revocation reason.
          0: Unspecified
          1: KeyCompromise
          2: CACompromise
          3: AffiliationChanged
          4: Superseded
          5: CessationOfOperation
          6: CertificateHold
          8: RemoveFromCRL
          9: PrivilegeWithdrawn
          10: AACompromise
        in: path
        name: reason
        required: true
        schema:
          $ref: '#/components/schemas/PkiRevokeReasons'
      responses:
        '200':
          $ref: '#/components/responses/PkiCertRevoke'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/NotFound'
      summary: Revoke PKI Certificate.
      tags:
      - PKI
  /api/v1/pki/certs:
    get:
      responses:
        '200':
          $ref: '#/components/responses/PkiCertsList'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get PKI Certificates.
      tags:
      - PKI
    post:
      requestBody:
        $ref: '#/components/requestBodies/PkiCert'
      responses:
        '200':
          $ref: '#/components/responses/PkiCertCreate'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Create PKI Certificate.
      tags:
      - PKI
  /api/v1/pki/certs/search:
    post:
      requestBody:
        $ref: '#/components/requestBodies/PkiCertsSearch'
      responses:
        '200':
          $ref: '#/components/responses/PkiCertsSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Search PKI Certificates.
      tags:
      - PKI
  /api/v1/pki/profile/{profile_id}:
    delete:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: profile_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/PkiProfileDelete'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '405':
          $ref: '#/components/responses/NotFound'
      summary: Delete PKI Profile.
      tags:
      - PKI
    get:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: profile_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/PkiProfile'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get PKI Profile.
      tags:
      - PKI
    patch:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: profile_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/PkiProfile'
      responses:
        '200':
          $ref: '#/components/responses/PkiProfileUpdate'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '405':
          $ref: '#/components/responses/NotFound'
      summary: Update PKI Profile.
      tags:
      - PKI
  /api/v1/pki/profile/{profile_id}/sign_csr:
    post:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: profile_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/PkiProfileSignCsr'
      responses:
        '200':
          $ref: '#/components/responses/PkiProfileSignCsr'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Sign PKI Profile CSR.
      tags:
      - PKI
  /api/v1/pki/profiles:
    get:
      responses:
        '200':
          $ref: '#/components/responses/PkiProfilesList'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get PKI Profiles.
      tags:
      - PKI
    post:
      requestBody:
        $ref: '#/components/requestBodies/PkiProfile'
      responses:
        '200':
          $ref: '#/components/responses/PkiProfileCreate'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Create PKI Profile.
      tags:
      - PKI
  /api/v1/pki/profiles/search:
    post:
      requestBody:
        $ref: '#/components/requestBodies/PkiProfilesSearch'
      responses:
        '200':
          $ref: '#/components/responses/PkiProfilesSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Search PKI Profiles.
      tags:
      - PKI
  /api/v1/pki/revokedcert/{cert_id}:
    get:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: cert_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/PkiRevokedCert'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get PKI Revoked Certificate.
      tags:
      - PKI
  /api/v1/pki/revokedcerts:
    get:
      responses:
        '200':
          $ref: '#/components/responses/PkiRevokedCertsList'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get PKI Revoked Certificates.
      tags:
      - PKI
  /api/v1/pki/revokedcerts/search:
    post:
      requestBody:
        $ref: '#/components/requestBodies/PkiRevokedCertsSearch'
      responses:
        '200':
          $ref: '#/components/responses/PkiRevokedCertsSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Search PKI Revoked Certificates.
      tags:
      - PKI
  /api/v1/pki/scepserver/{scepserver_id}:
    get:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: scepserver_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/PkiScepServer'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get PKI SCEP Server.
      tags:
      - PKI
    patch:
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: scepserver_id
        required: true
        schema:
          type: string
      requestBody:
        $ref: '#/components/requestBodies/PkiScepServer'
      responses:
        '200':
          $ref: '#/components/responses/PkiScepServer'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Update PKI SCEP Server.
      tags:
      - PKI
  /api/v1/pki/scepservers:
    get:
      responses:
        '200':
          $ref: '#/components/responses/PkiScepServersList'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get PKI SCEP Servers.
      tags:
      - PKI
    post:
      requestBody:
        $ref: '#/components/requestBodies/PkiScepServer'
      responses:
        '200':
          $ref: '#/components/responses/PkiScepServerCreate'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Create PKI SCEP Server.
      tags:
      - PKI
  /api/v1/pki/scepservers/search:
    post:
      requestBody:
        $ref: '#/components/requestBodies/PkiScepServersSearch'
      responses:
        '200':
          $ref: '#/components/responses/PkiScepServersSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
        '500':
          $ref: '#/components/responses/BadRequest'
      summary: Search PKI SCEP Servers.
      tags:
      - PKI
  /api/v1/preference/{preference_id}:
    delete:
      operationId: api.v1.Preferences.resource.remove
      parameters:
      - in: path
        name: preference_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Request successful. User preference deleted.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Delete user preference.
      tags:
      - Session
    get:
      operationId: api.v1.Preferences.get
      parameters:
      - in: path
        name: preference_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Preference'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Get user preference.
      tags:
      - Session
    put:
      operationId: api.v1.Preferences.resource.replace
      parameters:
      - in: path
        name: preference_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Preference'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Replace user preference.
      tags:
      - Session
  /api/v1/preferences:
    get:
      operationId: api.v1.Preferences.list
      responses:
        '200':
          $ref: '#/components/responses/Preferences'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Get the users preferences.
      tags:
      - Session
  /api/v1/queues/stats:
    get:
      responses:
        '200':
          $ref: '#/components/responses/QueueStats'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Show stats of pfqueue
      tags:
      - Pfqueue
  /api/v1/radius_attributes:
    post:
      externalDocs:
        description: RADIUS Attributes.
        url: https://freeradius.org/rfc/attributes.html
      requestBody:
        $ref: '#/components/requestBodies/RadiusAttributes'
      responses:
        '200':
          $ref: '#/components/responses/RadiusAttributesSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Search RADIUS Attributes.
      tags:
      - RADIUS
  /api/v1/radius_audit_log/{radius_audit_log_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.RadiusAuditLogs.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: radius_audit_log_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - RadiusAuditLogs
    description: |-
      pf::UnifiedApi::Controller::RadiusAuditLogs

        cleanup_item
          cleanup_item
    get:
      description: Get an item.
      operationId: api.v1.RadiusAuditLogs.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: radius_audit_log_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/RadiusAuditLog'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - RadiusAuditLogs
    patch:
      description: Update an item.
      operationId: api.v1.RadiusAuditLogs.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: radius_audit_log_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RadiusAuditLog'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - RadiusAuditLogs
    put:
      description: Replace an item.
      operationId: api.v1.RadiusAuditLogs.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: radius_audit_log_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RadiusAuditLog'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - RadiusAuditLogs
  /api/v1/radius_audit_logs:
    description: |-
      pf::UnifiedApi::Controller::RadiusAuditLogs

        cleanup_item
          cleanup_item
    get:
      description: List all items.
      operationId: api.v1.RadiusAuditLogs.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - auth_status
          - auth_type
          - auto_reg
          - called_station_id
          - calling_station_id
          - computer_name
          - connection_type
          - created_at
          - eap_type
          - event_type
          - id
          - ifindex
          - ip
          - is_phone
          - mac
          - nas_identifier
          - nas_ip_address
          - nas_port
          - nas_port_id
          - nas_port_type
          - node_status
          - pf_domain
          - profile
          - radius_ip
          - radius_reply
          - radius_request
          - radius_source_ip_address
          - realm
          - reason
          - request_time
          - role
          - source
          - ssid
          - stripped_user_name
          - switch_id
          - switch_ip_address
          - switch_mac
          - user_name
          - uuid
          items:
            enum:
            - auth_status
            - auth_type
            - auto_reg
            - called_station_id
            - calling_station_id
            - computer_name
            - connection_type
            - created_at
            - eap_type
            - event_type
            - id
            - ifindex
            - ip
            - is_phone
            - mac
            - nas_identifier
            - nas_ip_address
            - nas_port
            - nas_port_id
            - nas_port_type
            - node_status
            - pf_domain
            - profile
            - radius_ip
            - radius_reply
            - radius_request
            - radius_source_ip_address
            - realm
            - reason
            - request_time
            - role
            - source
            - ssid
            - stripped_user_name
            - switch_id
            - switch_ip_address
            - switch_mac
            - user_name
            - uuid
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ id ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - id ASC
          items:
            enum:
            - auth_status ASC
            - auth_status DESC
            - auth_type ASC
            - auth_type DESC
            - auto_reg ASC
            - auto_reg DESC
            - called_station_id ASC
            - called_station_id DESC
            - calling_station_id ASC
            - calling_station_id DESC
            - computer_name ASC
            - computer_name DESC
            - connection_type ASC
            - connection_type DESC
            - created_at ASC
            - created_at DESC
            - eap_type ASC
            - eap_type DESC
            - event_type ASC
            - event_type DESC
            - id ASC
            - id DESC
            - ifindex ASC
            - ifindex DESC
            - ip ASC
            - ip DESC
            - is_phone ASC
            - is_phone DESC
            - mac ASC
            - mac DESC
            - nas_identifier ASC
            - nas_identifier DESC
            - nas_ip_address ASC
            - nas_ip_address DESC
            - nas_port ASC
            - nas_port DESC
            - nas_port_id ASC
            - nas_port_id DESC
            - nas_port_type ASC
            - nas_port_type DESC
            - node_status ASC
            - node_status DESC
            - pf_domain ASC
            - pf_domain DESC
            - profile ASC
            - profile DESC
            - radius_ip ASC
            - radius_ip DESC
            - radius_reply ASC
            - radius_reply DESC
            - radius_request ASC
            - radius_request DESC
            - radius_source_ip_address ASC
            - radius_source_ip_address DESC
            - realm ASC
            - realm DESC
            - reason ASC
            - reason DESC
            - request_time ASC
            - request_time DESC
            - role ASC
            - role DESC
            - source ASC
            - source DESC
            - ssid ASC
            - ssid DESC
            - stripped_user_name ASC
            - stripped_user_name DESC
            - switch_id ASC
            - switch_id DESC
            - switch_ip_address ASC
            - switch_ip_address DESC
            - switch_mac ASC
            - switch_mac DESC
            - user_name ASC
            - user_name DESC
            - uuid ASC
            - uuid DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RadiusAuditLogsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - RadiusAuditLogs
    post:
      description: Create a new item.
      operationId: api.v1.RadiusAuditLogs.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RadiusAuditLog'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - RadiusAuditLogs
  /api/v1/radius_audit_logs/search:
    description: |-
      pf::UnifiedApi::Controller::RadiusAuditLogs

        cleanup_item
          cleanup_item
    post:
      description: Search all items.
      operationId: api.v1.RadiusAuditLogs.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - auth_status
              - auth_type
              - auto_reg
              - called_station_id
              - calling_station_id
              - computer_name
              - connection_type
              - created_at
              - eap_type
              - event_type
              - id
              - ifindex
              - ip
              - is_phone
              - mac
              - nas_identifier
              - nas_ip_address
              - nas_port
              - nas_port_id
              - nas_port_type
              - node_status
              - pf_domain
              - profile
              - radius_ip
              - radius_reply
              - radius_request
              - radius_source_ip_address
              - realm
              - reason
              - request_time
              - role
              - source
              - ssid
              - stripped_user_name
              - switch_id
              - switch_ip_address
              - switch_mac
              - user_name
              - uuid
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: auth_status
                    op: contains
                    value: foo
                  - field: auth_type
                    op: contains
                    value: foo
                  - field: auto_reg
                    op: contains
                    value: foo
                  - field: called_station_id
                    op: contains
                    value: foo
                  - field: calling_station_id
                    op: contains
                    value: foo
                  - field: computer_name
                    op: contains
                    value: foo
                  - field: connection_type
                    op: contains
                    value: foo
                  - field: created_at
                    op: contains
                    value: foo
                  - field: eap_type
                    op: contains
                    value: foo
                  - field: event_type
                    op: contains
                    value: foo
                  - field: id
                    op: contains
                    value: foo
                  - field: ifindex
                    op: contains
                    value: foo
                  - field: ip
                    op: contains
                    value: foo
                  - field: is_phone
                    op: contains
                    value: foo
                  - field: mac
                    op: contains
                    value: foo
                  - field: nas_identifier
                    op: contains
                    value: foo
                  - field: nas_ip_address
                    op: contains
                    value: foo
                  - field: nas_port
                    op: contains
                    value: foo
                  - field: nas_port_id
                    op: contains
                    value: foo
                  - field: nas_port_type
                    op: contains
                    value: foo
                  - field: node_status
                    op: contains
                    value: foo
                  - field: pf_domain
                    op: contains
                    value: foo
                  - field: profile
                    op: contains
                    value: foo
                  - field: radius_ip
                    op: contains
                    value: foo
                  - field: radius_reply
                    op: contains
                    value: foo
                  - field: radius_request
                    op: contains
                    value: foo
                  - field: radius_source_ip_address
                    op: contains
                    value: foo
                  - field: realm
                    op: contains
                    value: foo
                  - field: reason
                    op: contains
                    value: foo
                  - field: request_time
                    op: contains
                    value: foo
                  - field: role
                    op: contains
                    value: foo
                  - field: source
                    op: contains
                    value: foo
                  - field: ssid
                    op: contains
                    value: foo
                  - field: stripped_user_name
                    op: contains
                    value: foo
                  - field: switch_id
                    op: contains
                    value: foo
                  - field: switch_ip_address
                    op: contains
                    value: foo
                  - field: switch_mac
                    op: contains
                    value: foo
                  - field: user_name
                    op: contains
                    value: foo
                  - field: uuid
                    op: contains
                    value: foo
              sort:
              - id ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - auth_status
                      - auth_type
                      - auto_reg
                      - called_station_id
                      - calling_station_id
                      - computer_name
                      - connection_type
                      - created_at
                      - eap_type
                      - event_type
                      - id
                      - ifindex
                      - ip
                      - is_phone
                      - mac
                      - nas_identifier
                      - nas_ip_address
                      - nas_port
                      - nas_port_id
                      - nas_port_type
                      - node_status
                      - pf_domain
                      - profile
                      - radius_ip
                      - radius_reply
                      - radius_request
                      - radius_source_ip_address
                      - realm
                      - reason
                      - request_time
                      - role
                      - source
                      - ssid
                      - stripped_user_name
                      - switch_id
                      - switch_ip_address
                      - switch_mac
                      - user_name
                      - uuid
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - auth_status ASC
                      - auth_status DESC
                      - auth_type ASC
                      - auth_type DESC
                      - auto_reg ASC
                      - auto_reg DESC
                      - called_station_id ASC
                      - called_station_id DESC
                      - calling_station_id ASC
                      - calling_station_id DESC
                      - computer_name ASC
                      - computer_name DESC
                      - connection_type ASC
                      - connection_type DESC
                      - created_at ASC
                      - created_at DESC
                      - eap_type ASC
                      - eap_type DESC
                      - event_type ASC
                      - event_type DESC
                      - id ASC
                      - id DESC
                      - ifindex ASC
                      - ifindex DESC
                      - ip ASC
                      - ip DESC
                      - is_phone ASC
                      - is_phone DESC
                      - mac ASC
                      - mac DESC
                      - nas_identifier ASC
                      - nas_identifier DESC
                      - nas_ip_address ASC
                      - nas_ip_address DESC
                      - nas_port ASC
                      - nas_port DESC
                      - nas_port_id ASC
                      - nas_port_id DESC
                      - nas_port_type ASC
                      - nas_port_type DESC
                      - node_status ASC
                      - node_status DESC
                      - pf_domain ASC
                      - pf_domain DESC
                      - profile ASC
                      - profile DESC
                      - radius_ip ASC
                      - radius_ip DESC
                      - radius_reply ASC
                      - radius_reply DESC
                      - radius_request ASC
                      - radius_request DESC
                      - radius_source_ip_address ASC
                      - radius_source_ip_address DESC
                      - realm ASC
                      - realm DESC
                      - reason ASC
                      - reason DESC
                      - request_time ASC
                      - request_time DESC
                      - role ASC
                      - role DESC
                      - source ASC
                      - source DESC
                      - ssid ASC
                      - ssid DESC
                      - stripped_user_name ASC
                      - stripped_user_name DESC
                      - switch_id ASC
                      - switch_id DESC
                      - switch_ip_address ASC
                      - switch_ip_address DESC
                      - switch_mac ASC
                      - switch_mac DESC
                      - user_name ASC
                      - user_name DESC
                      - uuid ASC
                      - uuid DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RadiusAuditLogsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - RadiusAuditLogs
  /api/v1/security_event/{security_event_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.SecurityEvents.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: security_event_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - SecurityEvents
    description: pf::UnifiedApi::Controller::SecurityEvents
    get:
      description: Get an item.
      operationId: api.v1.SecurityEvents.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: security_event_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/SecurityEvent'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - SecurityEvents
    patch:
      description: Update an item.
      operationId: api.v1.SecurityEvents.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: security_event_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecurityEvent'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - SecurityEvents
    put:
      description: Replace an item.
      operationId: api.v1.SecurityEvents.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: security_event_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecurityEvent'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - SecurityEvents
  /api/v1/security_events:
    description: pf::UnifiedApi::Controller::SecurityEvents
    get:
      description: List all items.
      operationId: api.v1.SecurityEvents.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - id
          - mac
          - notes
          - release_date
          - security_event_id
          - start_date
          - status
          - ticket_ref
          items:
            enum:
            - id
            - mac
            - notes
            - release_date
            - security_event_id
            - start_date
            - status
            - ticket_ref
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ id ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - id ASC
          items:
            enum:
            - id ASC
            - id DESC
            - mac ASC
            - mac DESC
            - notes ASC
            - notes DESC
            - release_date ASC
            - release_date DESC
            - security_event_id ASC
            - security_event_id DESC
            - start_date ASC
            - start_date DESC
            - status ASC
            - status DESC
            - ticket_ref ASC
            - ticket_ref DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SecurityEventsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - SecurityEvents
    post:
      description: Create a new item.
      operationId: api.v1.SecurityEvents.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecurityEvent'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - SecurityEvents
  /api/v1/security_events/per_device_class_closed:
    get:
      responses:
        '200':
          $ref: '#/components/responses/SecurityEventsPerDeviceClass'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the total count of closed security events per device class.
      tags:
      - SecurityEvents
  /api/v1/security_events/per_device_class_open:
    get:
      responses:
        '200':
          $ref: '#/components/responses/SecurityEventsPerDeviceClass'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the total count of open security events per device class.
      tags:
      - SecurityEvents
  /api/v1/security_events/per_device_class_pending:
    get:
      responses:
        '200':
          $ref: '#/components/responses/SecurityEventsPerDeviceClass'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the total count of pending security events per device class.
      tags:
      - SecurityEvents
  /api/v1/security_events/per_security_event_id_closed:
    get:
      responses:
        '200':
          $ref: '#/components/responses/SecurityEventsPerId'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the total count of closed security events per device class.
      tags:
      - SecurityEvents
  /api/v1/security_events/per_security_event_id_open:
    get:
      responses:
        '200':
          $ref: '#/components/responses/SecurityEventsPerId'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the total count of open security events per device class.
      tags:
      - SecurityEvents
  /api/v1/security_events/per_security_event_id_pending:
    get:
      responses:
        '200':
          $ref: '#/components/responses/SecurityEventsPerId'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the total count of pending security events per device class.
      tags:
      - SecurityEvents
  /api/v1/security_events/search:
    post:
      requestBody:
        $ref: '#/components/requestBodies/SecurityEventsSearch'
      responses:
        '200':
          $ref: '#/components/responses/SecurityEventsSearch'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Search security events.
      tags:
      - SecurityEvents
  /api/v1/security_events/total_closed:
    get:
      responses:
        '200':
          $ref: '#/components/responses/SecurityEventsTotal'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the total count of closed security events.
      tags:
      - SecurityEvents
  /api/v1/security_events/total_open:
    get:
      responses:
        '200':
          $ref: '#/components/responses/SecurityEventsTotal'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the total count of open security events.
      tags:
      - SecurityEvents
  /api/v1/security_events/total_pending:
    get:
      responses:
        '200':
          $ref: '#/components/responses/SecurityEventsTotal'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get the total count of pending security events.
      tags:
      - SecurityEvents
  /api/v1/service/{service}/disable:
    post:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      - $ref: '#/components/parameters/service'
      responses:
        '200':
          $ref: '#/components/responses/ServiceDisable'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Disable service, does not start after reboot.
      tags:
      - Services
  /api/v1/service/{service}/enable:
    post:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      - $ref: '#/components/parameters/service'
      responses:
        '200':
          $ref: '#/components/responses/ServiceEnable'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Enable service, starts after reboot.
      tags:
      - Services
  /api/v1/service/{service}/restart:
    post:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      - $ref: '#/components/parameters/Async'
      - $ref: '#/components/parameters/service'
      requestBody:
        content:
          application/json:
            example:
              async: true
            schema:
              type: object
      responses:
        '200':
          $ref: '#/components/responses/ServiceRestart'
        '202':
          $ref: '#/components/responses/ServiceAsync'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Restart a service, return the PID.
      tags:
      - Services
  /api/v1/service/{service}/start:
    post:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      - $ref: '#/components/parameters/Async'
      - $ref: '#/components/parameters/service'
      requestBody:
        content:
          application/json:
            example:
              async: true
            schema:
              type: object
      responses:
        '200':
          $ref: '#/components/responses/ServiceStart'
        '202':
          $ref: '#/components/responses/ServiceAsync'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Start a service, return the PID.
      tags:
      - Services
  /api/v1/service/{service}/status:
    get:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      - $ref: '#/components/parameters/service'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceStatus'
          description: Service details.
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Service status.
      tags:
      - Services
  /api/v1/service/{service}/stop:
    post:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      - $ref: '#/components/parameters/Async'
      - $ref: '#/components/parameters/service'
      requestBody:
        content:
          application/json:
            example:
              async: true
            schema:
              type: object
      responses:
        '200':
          $ref: '#/components/responses/ServiceStop'
        '202':
          $ref: '#/components/responses/ServiceAsync'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Stop a service.
      tags:
      - Services
  /api/v1/services/:
    get:
      description: The list of services will be limited to 100 and a cursor will be
        returned for iterating on other services. Iteration is only needed if the
        nextCursor is not an empty value.
      parameters:
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/X-PacketFence-Server'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServicesList'
          description: List of services
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: List all available services.
      tags:
      - Services
  /api/v1/services/cluster_status/{server}:
    get:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      - description: The server to fetch.
        in: path
        name: server
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/ServicesClusterServer'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: List service statuses on a specific cluster member.
      tags:
      - Services
  /api/v1/services/cluster_statuses:
    get:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      responses:
        '200':
          description: List of servers.
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: List servers and the services of each member in the cluster.
      tags:
      - Services
  /api/v1/services/status_all:
    get:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServicesStatus'
          description: Request successful. Response contains a list of all services.
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: List services statuses on the local cluster member.
      tags:
      - Services
  /api/v1/sms_carrier/{sms_carrier_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.SMSCarriers.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: sms_carrier_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - SMSCarriers
    description: pf::UnifiedApi::Controller::SMSCarriers
    get:
      description: Get an item.
      operationId: api.v1.SMSCarriers.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: sms_carrier_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/SMSCarrier'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - SMSCarriers
    patch:
      description: Update an item.
      operationId: api.v1.SMSCarriers.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: sms_carrier_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SMSCarrier'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - SMSCarriers
    put:
      description: Replace an item.
      operationId: api.v1.SMSCarriers.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: sms_carrier_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SMSCarrier'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - SMSCarriers
  /api/v1/sms_carriers:
    description: pf::UnifiedApi::Controller::SMSCarriers
    get:
      description: List all items.
      operationId: api.v1.SMSCarriers.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - created
          - email_pattern
          - id
          - modified
          - name
          items:
            enum:
            - created
            - email_pattern
            - id
            - modified
            - name
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ id ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - id ASC
          items:
            enum:
            - created ASC
            - created DESC
            - email_pattern ASC
            - email_pattern DESC
            - id ASC
            - id DESC
            - modified ASC
            - modified DESC
            - name ASC
            - name DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SMSCarriersList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - SMSCarriers
    post:
      description: Create a new item.
      operationId: api.v1.SMSCarriers.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SMSCarrier'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - SMSCarriers
  /api/v1/sms_carriers/search:
    description: pf::UnifiedApi::Controller::SMSCarriers
    post:
      description: Search all items.
      operationId: api.v1.SMSCarriers.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - created
              - email_pattern
              - id
              - modified
              - name
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: created
                    op: contains
                    value: foo
                  - field: email_pattern
                    op: contains
                    value: foo
                  - field: id
                    op: contains
                    value: foo
                  - field: modified
                    op: contains
                    value: foo
                  - field: name
                    op: contains
                    value: foo
              sort:
              - id ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - created
                      - email_pattern
                      - id
                      - modified
                      - name
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - created ASC
                      - created DESC
                      - email_pattern ASC
                      - email_pattern DESC
                      - id ASC
                      - id DESC
                      - modified ASC
                      - modified DESC
                      - name ASC
                      - name DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SMSCarriersList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - SMSCarriers
  /api/v1/sso_info:
    get:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      responses:
        '200':
          $ref: '#/components/responses/SsoStatus'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get SSO (Single Sign On) status.
      tags:
      - SSO
  /api/v1/system_summary:
    get:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      responses:
        '200':
          $ref: '#/components/responses/SystemSummary'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get system summary.
      tags:
      - System
  /api/v1/token_info:
    get:
      responses:
        '200':
          $ref: '#/components/responses/TokenInfo'
        '404':
          $ref: '#/components/responses/NotFound'
      summary: Get information on the current session.
      tags:
      - Session
    parameters:
    - description: Request does not extend the session expiration.
      in: query
      name: no-expiration-extension
      schema:
        enum:
        - 1
        type: number
  /api/v1/translation/{locale}:
    get:
      parameters:
      - $ref: '#/components/parameters/X-PacketFence-Server'
      - description: The locale.
        in: path
        name: locale
        required: true
        schema:
          enum:
          - en
          - fr
          - xyz
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Locale'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Get translation using locale.
      tags:
      - Locales
  /api/v1/translations:
    get:
      responses:
        '200':
          $ref: '#/components/responses/Locales'
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: List all translations.
      tags:
      - Locales
  /api/v1/user/{user_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Users.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - Users
    description: |-
      pf::UnifiedApi::Controller::User

        create_data_update
          create_data_update

        cleanup_item
          Remove the password field from the item

        unassign_nodes
          unassign user nodes

        security_events
          security_events

        bulk_register
          bulk_register

        bulk_deregister
          bulk_deregister

        bulk_close_security_events
          bulk_close_security_events

        close_security_events
          close_security_events

        bulk_apply_security_event
          bulk_apply_security_event

        bulk_reevaluate_access
          bulk_reevaluate_access

        bulk_init_results
          bulk_init_results

        bulk_fingerbank_refresh
          bulk_fingerbank_refresh

        do_bulk_update_field
          do_bulk_update_field

        bulk_apply_role
          bulk_apply_role

        bulk_apply_bypass_role
          bulk_apply_bypass_role

        bulk_delete
          bulk_delete

        bulk_import
          bulk_import
    get:
      description: Get an item.
      operationId: api.v1.Users.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/User'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
    patch:
      description: Update an item.
      operationId: api.v1.Users.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/User'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
    put:
      description: Replace an item.
      operationId: api.v1.Users.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/User'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
  /api/v1/user/{user_id}/node/{node_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.Users.resource.Users.Nodes.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - Users/Nodes
    description: pf::UnifiedApi::Controller::Users::Nodes
    get:
      description: Get an item.
      operationId: api.v1.Users.resource.Users.Nodes.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/UsersNode'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Nodes
    patch:
      description: Update an item.
      operationId: api.v1.Users.resource.Users.Nodes.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsersNode'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Nodes
    put:
      description: Replace an item.
      operationId: api.v1.Users.resource.Users.Nodes.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      - description: '`PRIMARY KEY`'
        in: path
        name: node_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsersNode'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Nodes
  /api/v1/user/{user_id}/node/{node_id}/locationlog/{locationlog_id}:
    delete:
      description: Remove an item
      operationId: api.v1.Users.Nodes.Locationlogs.remove
      responses:
        '204':
          description: Item deleted
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
    get:
      description: Get an item
      operationId: api.v1.Users.Nodes.Locationlogs.get
      responses:
        '200':
          content:
            application/json:
              schema:
                description: Item
                properties:
                  item:
                    $ref: '#/components/schemas/UsersNodesLocationlog'
                type: object
          description: Get item
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
    parameters:
    - $ref: '#/components/parameters/user_id'
    - $ref: '#/components/parameters/node_id'
    - $ref: '#/components/parameters/locationlog_id'
    patch:
      description: Update an item
      operationId: api.v1.Users.Nodes.Locationlogs.update
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsersNodesLocationlog'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
    put:
      description: Replace an item
      operationId: api.v1.Users.Nodes.Locationlogs.replace
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsersNodesLocationlog'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
  /api/v1/user/{user_id}/node/{node_id}/locationlogs:
    get:
      description: List items
      operationId: api.v1.Users.Nodes.Locationlogs.list
      parameters:
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/fields'
      - $ref: '#/components/parameters/sort'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersNodesLocationlogsList'
          description: List
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
    parameters:
    - $ref: '#/components/parameters/user_id'
    - $ref: '#/components/parameters/node_id'
    post:
      description: Create an item
      operationId: api.v1.Users.Nodes.Locationlogs.create
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UsersNodesLocationlog'
        description: Create item
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
  /api/v1/user/{user_id}/node/{node_id}/locationlogs/search:
    description: pf::UnifiedApi::Controller::Users::Nodes::Locationlogs
    post:
      operationId: api.v1.Users.Nodes.Locationlogs.search
      parameters:
      - $ref: '#/components/parameters/user_id'
      - $ref: '#/components/parameters/node_id'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Search'
        description: Search for locationlogs.
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersNodesLocationlogsList'
          description: Request successful. The response contains the locationlogs.
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
  /api/v1/user/{user_id}/nodes:
    get:
      parameters:
      - $ref: '#/components/parameters/user_id'
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/limit'
        in: query
      responses:
        '200':
          $ref: '#/components/responses/UserNodes'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Get all Nodes for a User.
      tags:
      - Users
  /api/v1/user/{user_id}/nodes/search:
    description: pf::UnifiedApi::Controller::Users::Nodes
    post:
      description: Search all items.
      operationId: api.v1.Users.resource.Users.Nodes.search
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: user_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - autoreg
              - bandwidth_balance
              - bypass_acls
              - bypass_role_id
              - bypass_vlan
              - category_id
              - computername
              - detect_date
              - device_class
              - device_manufacturer
              - device_score
              - device_type
              - device_version
              - dhcp6_enterprise
              - dhcp6_fingerprint
              - dhcp_fingerprint
              - dhcp_vendor
              - last_arp
              - last_dhcp
              - last_seen
              - mac
              - machine_account
              - notes
              - pid
              - regdate
              - sessionid
              - status
              - time_balance
              - unregdate
              - user_agent
              - voip
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: autoreg
                    op: contains
                    value: foo
                  - field: bandwidth_balance
                    op: contains
                    value: foo
                  - field: bypass_acls
                    op: contains
                    value: foo
                  - field: bypass_role_id
                    op: contains
                    value: foo
                  - field: bypass_vlan
                    op: contains
                    value: foo
                  - field: category_id
                    op: contains
                    value: foo
                  - field: computername
                    op: contains
                    value: foo
                  - field: detect_date
                    op: contains
                    value: foo
                  - field: device_class
                    op: contains
                    value: foo
                  - field: device_manufacturer
                    op: contains
                    value: foo
                  - field: device_score
                    op: contains
                    value: foo
                  - field: device_type
                    op: contains
                    value: foo
                  - field: device_version
                    op: contains
                    value: foo
                  - field: dhcp6_enterprise
                    op: contains
                    value: foo
                  - field: dhcp6_fingerprint
                    op: contains
                    value: foo
                  - field: dhcp_fingerprint
                    op: contains
                    value: foo
                  - field: dhcp_vendor
                    op: contains
                    value: foo
                  - field: last_arp
                    op: contains
                    value: foo
                  - field: last_dhcp
                    op: contains
                    value: foo
                  - field: last_seen
                    op: contains
                    value: foo
                  - field: mac
                    op: contains
                    value: foo
                  - field: machine_account
                    op: contains
                    value: foo
                  - field: notes
                    op: contains
                    value: foo
                  - field: pid
                    op: contains
                    value: foo
                  - field: regdate
                    op: contains
                    value: foo
                  - field: sessionid
                    op: contains
                    value: foo
                  - field: status
                    op: contains
                    value: foo
                  - field: time_balance
                    op: contains
                    value: foo
                  - field: unregdate
                    op: contains
                    value: foo
                  - field: user_agent
                    op: contains
                    value: foo
                  - field: voip
                    op: contains
                    value: foo
              sort:
              - mac ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - autoreg
                      - bandwidth_balance
                      - bypass_acls
                      - bypass_role_id
                      - bypass_vlan
                      - category_id
                      - computername
                      - detect_date
                      - device_class
                      - device_manufacturer
                      - device_score
                      - device_type
                      - device_version
                      - dhcp6_enterprise
                      - dhcp6_fingerprint
                      - dhcp_fingerprint
                      - dhcp_vendor
                      - last_arp
                      - last_dhcp
                      - last_seen
                      - mac
                      - machine_account
                      - notes
                      - pid
                      - regdate
                      - sessionid
                      - status
                      - time_balance
                      - unregdate
                      - user_agent
                      - voip
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - autoreg ASC
                      - autoreg DESC
                      - bandwidth_balance ASC
                      - bandwidth_balance DESC
                      - bypass_acls ASC
                      - bypass_acls DESC
                      - bypass_role_id ASC
                      - bypass_role_id DESC
                      - bypass_vlan ASC
                      - bypass_vlan DESC
                      - category_id ASC
                      - category_id DESC
                      - computername ASC
                      - computername DESC
                      - detect_date ASC
                      - detect_date DESC
                      - device_class ASC
                      - device_class DESC
                      - device_manufacturer ASC
                      - device_manufacturer DESC
                      - device_score ASC
                      - device_score DESC
                      - device_type ASC
                      - device_type DESC
                      - device_version ASC
                      - device_version DESC
                      - dhcp6_enterprise ASC
                      - dhcp6_enterprise DESC
                      - dhcp6_fingerprint ASC
                      - dhcp6_fingerprint DESC
                      - dhcp_fingerprint ASC
                      - dhcp_fingerprint DESC
                      - dhcp_vendor ASC
                      - dhcp_vendor DESC
                      - last_arp ASC
                      - last_arp DESC
                      - last_dhcp ASC
                      - last_dhcp DESC
                      - last_seen ASC
                      - last_seen DESC
                      - mac ASC
                      - mac DESC
                      - machine_account ASC
                      - machine_account DESC
                      - notes ASC
                      - notes DESC
                      - pid ASC
                      - pid DESC
                      - regdate ASC
                      - regdate DESC
                      - sessionid ASC
                      - sessionid DESC
                      - status ASC
                      - status DESC
                      - time_balance ASC
                      - time_balance DESC
                      - unregdate ASC
                      - unregdate DESC
                      - user_agent ASC
                      - user_agent DESC
                      - voip ASC
                      - voip DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersNodesList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users/Nodes
  /api/v1/user/{user_id}/password:
    delete:
      responses:
        '204':
          description: Deleted password entry
        '401':
          $ref: '#/components/responses/Unauthorized'
      summary: Allows to delete a password entry for a user
      tags:
      - Users
    get:
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/Password'
                type: object
          description: The password entry for a specific user
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Get the password entry for a user
      tags:
      - Users
    parameters:
    - $ref: '#/components/parameters/user_id'
    patch:
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Password'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Allows to update parts of a password entry of a user
      tags:
      - Users
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Password'
        required: true
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Create a password entry for a user
      tags:
      - Users
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Password'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Allows to update the whole password entry for a user
      tags:
      - Users
  /api/v1/user/{user_id}/password/search:
    description: pf::UnifiedApi::Controller::Users::Password
    post:
      operationId: api.v1.Users.Password.search
      parameters:
      - in: path
        name: user_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Search'
        description: Search for items
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersPasswordList'
          description: List
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
  /api/v1/user/{user_id}/security_events:
    get:
      parameters:
      - $ref: '#/components/parameters/user_id'
      responses:
        '200':
          $ref: '#/components/responses/UserSecurityEvents'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Get Security Events for a User.
      tags:
      - Users
  /api/v1/user/{user_id}/unassign_nodes:
    post:
      parameters:
      - $ref: '#/components/parameters/user_id'
      responses:
        '200':
          $ref: '#/components/responses/Count'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Unassign all Nodes for a User.
      tags:
      - Users
  /api/v1/users:
    description: |-
      pf::UnifiedApi::Controller::User

        create_data_update
          create_data_update

        cleanup_item
          Remove the password field from the item

        unassign_nodes
          unassign user nodes

        security_events
          security_events

        bulk_register
          bulk_register

        bulk_deregister
          bulk_deregister

        bulk_close_security_events
          bulk_close_security_events

        close_security_events
          close_security_events

        bulk_apply_security_event
          bulk_apply_security_event

        bulk_reevaluate_access
          bulk_reevaluate_access

        bulk_init_results
          bulk_init_results

        bulk_fingerbank_refresh
          bulk_fingerbank_refresh

        do_bulk_update_field
          do_bulk_update_field

        bulk_apply_role
          bulk_apply_role

        bulk_apply_bypass_role
          bulk_apply_bypass_role

        bulk_delete
          bulk_delete

        bulk_import
          bulk_import
    get:
      description: List all items.
      operationId: api.v1.Users.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - address
          - anniversary
          - apartment_number
          - birthday
          - building_number
          - cell_phone
          - company
          - custom_field_1
          - custom_field_2
          - custom_field_3
          - custom_field_4
          - custom_field_5
          - custom_field_6
          - custom_field_7
          - custom_field_8
          - custom_field_9
          - email
          - firstname
          - gender
          - lang
          - lastname
          - nickname
          - notes
          - otp
          - pid
          - portal
          - potd
          - psk
          - room_number
          - source
          - sponsor
          - sponsored_date
          - telephone
          - title
          - work_phone
          items:
            enum:
            - address
            - anniversary
            - apartment_number
            - birthday
            - building_number
            - cell_phone
            - company
            - custom_field_1
            - custom_field_2
            - custom_field_3
            - custom_field_4
            - custom_field_5
            - custom_field_6
            - custom_field_7
            - custom_field_8
            - custom_field_9
            - email
            - firstname
            - gender
            - lang
            - lastname
            - nickname
            - notes
            - otp
            - pid
            - portal
            - potd
            - psk
            - room_number
            - source
            - sponsor
            - sponsored_date
            - telephone
            - title
            - work_phone
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ pid ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - pid ASC
          items:
            enum:
            - address ASC
            - address DESC
            - anniversary ASC
            - anniversary DESC
            - apartment_number ASC
            - apartment_number DESC
            - birthday ASC
            - birthday DESC
            - building_number ASC
            - building_number DESC
            - cell_phone ASC
            - cell_phone DESC
            - company ASC
            - company DESC
            - custom_field_1 ASC
            - custom_field_1 DESC
            - custom_field_2 ASC
            - custom_field_2 DESC
            - custom_field_3 ASC
            - custom_field_3 DESC
            - custom_field_4 ASC
            - custom_field_4 DESC
            - custom_field_5 ASC
            - custom_field_5 DESC
            - custom_field_6 ASC
            - custom_field_6 DESC
            - custom_field_7 ASC
            - custom_field_7 DESC
            - custom_field_8 ASC
            - custom_field_8 DESC
            - custom_field_9 ASC
            - custom_field_9 DESC
            - email ASC
            - email DESC
            - firstname ASC
            - firstname DESC
            - gender ASC
            - gender DESC
            - lang ASC
            - lang DESC
            - lastname ASC
            - lastname DESC
            - nickname ASC
            - nickname DESC
            - notes ASC
            - notes DESC
            - otp ASC
            - otp DESC
            - pid ASC
            - pid DESC
            - portal ASC
            - portal DESC
            - potd ASC
            - potd DESC
            - psk ASC
            - psk DESC
            - room_number ASC
            - room_number DESC
            - source ASC
            - source DESC
            - sponsor ASC
            - sponsor DESC
            - sponsored_date ASC
            - sponsored_date DESC
            - telephone ASC
            - telephone DESC
            - title ASC
            - title DESC
            - work_phone ASC
            - work_phone DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
    post:
      description: Create a new item.
      operationId: api.v1.Users.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/User'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
  /api/v1/users/bulk_apply_bypass_role:
    post:
      requestBody:
        $ref: '#/components/requestBodies/UsersBulkBypassRole'
      responses:
        '200':
          $ref: '#/components/responses/UsersBulkNodes'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Apply Bypass Role to bulk users.
      tags:
      - Users
  /api/v1/users/bulk_apply_role:
    post:
      requestBody:
        $ref: '#/components/requestBodies/UsersBulkRole'
      responses:
        '200':
          $ref: '#/components/responses/UsersBulkNodes'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Apply Role to bulk users.
      tags:
      - Users
  /api/v1/users/bulk_apply_security_event:
    post:
      requestBody:
        $ref: '#/components/requestBodies/UsersBulkSecurityEvent'
      responses:
        '200':
          $ref: '#/components/responses/UsersBulkSecurityEvents'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Apply Security Event to bulk users.
      tags:
      - Users
  /api/v1/users/bulk_close_security_events:
    post:
      requestBody:
        $ref: '#/components/requestBodies/UsersBulk'
      responses:
        '200':
          $ref: '#/components/responses/UsersBulkSecurityEvents'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Close all Security Events for bulk users.
      tags:
      - Users
  /api/v1/users/bulk_delete:
    post:
      requestBody:
        $ref: '#/components/requestBodies/UsersBulk'
      responses:
        '200':
          $ref: '#/components/responses/UsersBulkNodes'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Delete bulk users.
      tags:
      - Users
  /api/v1/users/bulk_deregister:
    post:
      requestBody:
        $ref: '#/components/requestBodies/UsersBulk'
      responses:
        '200':
          $ref: '#/components/responses/UsersBulkNodes'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Unregister bulk users.
      tags:
      - Users
  /api/v1/users/bulk_fingerbank_refresh:
    post:
      requestBody:
        $ref: '#/components/requestBodies/UsersBulk'
      responses:
        '200':
          $ref: '#/components/responses/UsersBulkNodes'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Refresh Fingerbank for bulk users.
      tags:
      - Users
  /api/v1/users/bulk_import:
    post:
      requestBody:
        $ref: '#/components/requestBodies/UsersBulkImport'
      responses:
        '200':
          $ref: '#/components/responses/UsersBulkImport'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Import bulk users.
      tags:
      - Users
  /api/v1/users/bulk_reevaluate_access:
    post:
      requestBody:
        $ref: '#/components/requestBodies/UsersBulk'
      responses:
        '200':
          $ref: '#/components/responses/UsersBulkNodes'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Reevaluate Access for bulk users.
      tags:
      - Users
  /api/v1/users/bulk_register:
    post:
      requestBody:
        $ref: '#/components/requestBodies/UsersBulk'
      responses:
        '200':
          $ref: '#/components/responses/UsersBulkNodes'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      summary: Register bulk users.
      tags:
      - Users
  /api/v1/users/search:
    description: |-
      pf::UnifiedApi::Controller::User

        create_data_update
          create_data_update

        cleanup_item
          Remove the password field from the item

        unassign_nodes
          unassign user nodes

        security_events
          security_events

        bulk_register
          bulk_register

        bulk_deregister
          bulk_deregister

        bulk_close_security_events
          bulk_close_security_events

        close_security_events
          close_security_events

        bulk_apply_security_event
          bulk_apply_security_event

        bulk_reevaluate_access
          bulk_reevaluate_access

        bulk_init_results
          bulk_init_results

        bulk_fingerbank_refresh
          bulk_fingerbank_refresh

        do_bulk_update_field
          do_bulk_update_field

        bulk_apply_role
          bulk_apply_role

        bulk_apply_bypass_role
          bulk_apply_bypass_role

        bulk_delete
          bulk_delete

        bulk_import
          bulk_import
    post:
      description: Search all items.
      operationId: api.v1.Users.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - address
              - anniversary
              - apartment_number
              - birthday
              - building_number
              - cell_phone
              - company
              - custom_field_1
              - custom_field_2
              - custom_field_3
              - custom_field_4
              - custom_field_5
              - custom_field_6
              - custom_field_7
              - custom_field_8
              - custom_field_9
              - email
              - firstname
              - gender
              - lang
              - lastname
              - nickname
              - notes
              - otp
              - pid
              - portal
              - potd
              - psk
              - room_number
              - source
              - sponsor
              - sponsored_date
              - telephone
              - title
              - work_phone
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: address
                    op: contains
                    value: foo
                  - field: anniversary
                    op: contains
                    value: foo
                  - field: apartment_number
                    op: contains
                    value: foo
                  - field: birthday
                    op: contains
                    value: foo
                  - field: building_number
                    op: contains
                    value: foo
                  - field: cell_phone
                    op: contains
                    value: foo
                  - field: company
                    op: contains
                    value: foo
                  - field: custom_field_1
                    op: contains
                    value: foo
                  - field: custom_field_2
                    op: contains
                    value: foo
                  - field: custom_field_3
                    op: contains
                    value: foo
                  - field: custom_field_4
                    op: contains
                    value: foo
                  - field: custom_field_5
                    op: contains
                    value: foo
                  - field: custom_field_6
                    op: contains
                    value: foo
                  - field: custom_field_7
                    op: contains
                    value: foo
                  - field: custom_field_8
                    op: contains
                    value: foo
                  - field: custom_field_9
                    op: contains
                    value: foo
                  - field: email
                    op: contains
                    value: foo
                  - field: firstname
                    op: contains
                    value: foo
                  - field: gender
                    op: contains
                    value: foo
                  - field: lang
                    op: contains
                    value: foo
                  - field: lastname
                    op: contains
                    value: foo
                  - field: nickname
                    op: contains
                    value: foo
                  - field: notes
                    op: contains
                    value: foo
                  - field: otp
                    op: contains
                    value: foo
                  - field: pid
                    op: contains
                    value: foo
                  - field: portal
                    op: contains
                    value: foo
                  - field: potd
                    op: contains
                    value: foo
                  - field: psk
                    op: contains
                    value: foo
                  - field: room_number
                    op: contains
                    value: foo
                  - field: source
                    op: contains
                    value: foo
                  - field: sponsor
                    op: contains
                    value: foo
                  - field: sponsored_date
                    op: contains
                    value: foo
                  - field: telephone
                    op: contains
                    value: foo
                  - field: title
                    op: contains
                    value: foo
                  - field: work_phone
                    op: contains
                    value: foo
              sort:
              - pid ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - address
                      - anniversary
                      - apartment_number
                      - birthday
                      - building_number
                      - cell_phone
                      - company
                      - custom_field_1
                      - custom_field_2
                      - custom_field_3
                      - custom_field_4
                      - custom_field_5
                      - custom_field_6
                      - custom_field_7
                      - custom_field_8
                      - custom_field_9
                      - email
                      - firstname
                      - gender
                      - lang
                      - lastname
                      - nickname
                      - notes
                      - otp
                      - pid
                      - portal
                      - potd
                      - psk
                      - room_number
                      - source
                      - sponsor
                      - sponsored_date
                      - telephone
                      - title
                      - work_phone
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - address ASC
                      - address DESC
                      - anniversary ASC
                      - anniversary DESC
                      - apartment_number ASC
                      - apartment_number DESC
                      - birthday ASC
                      - birthday DESC
                      - building_number ASC
                      - building_number DESC
                      - cell_phone ASC
                      - cell_phone DESC
                      - company ASC
                      - company DESC
                      - custom_field_1 ASC
                      - custom_field_1 DESC
                      - custom_field_2 ASC
                      - custom_field_2 DESC
                      - custom_field_3 ASC
                      - custom_field_3 DESC
                      - custom_field_4 ASC
                      - custom_field_4 DESC
                      - custom_field_5 ASC
                      - custom_field_5 DESC
                      - custom_field_6 ASC
                      - custom_field_6 DESC
                      - custom_field_7 ASC
                      - custom_field_7 DESC
                      - custom_field_8 ASC
                      - custom_field_8 DESC
                      - custom_field_9 ASC
                      - custom_field_9 DESC
                      - email ASC
                      - email DESC
                      - firstname ASC
                      - firstname DESC
                      - gender ASC
                      - gender DESC
                      - lang ASC
                      - lang DESC
                      - lastname ASC
                      - lastname DESC
                      - nickname ASC
                      - nickname DESC
                      - notes ASC
                      - notes DESC
                      - otp ASC
                      - otp DESC
                      - pid ASC
                      - pid DESC
                      - portal ASC
                      - portal DESC
                      - potd ASC
                      - potd DESC
                      - psk ASC
                      - psk DESC
                      - room_number ASC
                      - room_number DESC
                      - source ASC
                      - source DESC
                      - sponsor ASC
                      - sponsor DESC
                      - sponsored_date ASC
                      - sponsored_date DESC
                      - telephone ASC
                      - telephone DESC
                      - title ASC
                      - title DESC
                      - work_phone ASC
                      - work_phone DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - Users
  /api/v1/wrix_location/{wrix_location_id}:
    delete:
      description: Delete an item.
      operationId: api.v1.WrixLocations.resource.remove
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: wrix_location_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted.
      tags:
      - WrixLocations
    description: pf::UnifiedApi::Controller::WrixLocations
    get:
      description: Get an item.
      operationId: api.v1.WrixLocations.resource.get
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: wrix_location_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  item:
                    $ref: '#/components/schemas/WrixLocation'
                type: object
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - WrixLocations
    patch:
      description: Update an item.
      operationId: api.v1.WrixLocations.resource.update
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: wrix_location_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WrixLocation'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - WrixLocations
    put:
      description: Replace an item.
      operationId: api.v1.WrixLocations.resource.replace
      parameters:
      - description: '`PRIMARY KEY`'
        in: path
        name: wrix_location_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WrixLocation'
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - WrixLocations
  /api/v1/wrix_locations:
    description: pf::UnifiedApi::Controller::WrixLocations
    get:
      description: List all items.
      operationId: api.v1.WrixLocations.list
      parameters:
      - description: Comma delimited list of fields to return with each item.
        explode: false
        in: query
        name: fields
        required: true
        schema:
          example:
          - Client_Support
          - Coverage_Area
          - English_Location_City
          - English_Location_Name
          - Latitude
          - Location_Address1
          - Location_Address2
          - Location_Country_Name
          - Location_Identifier
          - Location_Phone_Number
          - Location_State_Province_Name
          - Location_Type
          - Location_URL
          - Location_Zip_Postal_Code
          - Longitude
          - MAC_Address
          - Open_Friday
          - Open_Monday
          - Open_Saturday
          - Open_Sunday
          - Open_Thursday
          - Open_Tuesday
          - Open_Wednesday
          - Provider_Identifier
          - Restricted_Access
          - SSID_1X
          - SSID_1X_Broadcasted
          - SSID_Broadcasted
          - SSID_Open_Auth
          - Security_Protocol_1X
          - Service_Provider_Brand
          - Sub_Location_Type
          - UTC_Timezone
          - WEP_Key
          - WEP_Key_Entry_Method
          - WEP_Key_Size
          - id
          items:
            enum:
            - Client_Support
            - Coverage_Area
            - English_Location_City
            - English_Location_Name
            - Latitude
            - Location_Address1
            - Location_Address2
            - Location_Country_Name
            - Location_Identifier
            - Location_Phone_Number
            - Location_State_Province_Name
            - Location_Type
            - Location_URL
            - Location_Zip_Postal_Code
            - Longitude
            - MAC_Address
            - Open_Friday
            - Open_Monday
            - Open_Saturday
            - Open_Sunday
            - Open_Thursday
            - Open_Tuesday
            - Open_Wednesday
            - Provider_Identifier
            - Restricted_Access
            - SSID_1X
            - SSID_1X_Broadcasted
            - SSID_Broadcasted
            - SSID_Open_Auth
            - Security_Protocol_1X
            - Service_Provider_Brand
            - Sub_Location_Type
            - UTC_Timezone
            - WEP_Key
            - WEP_Key_Entry_Method
            - WEP_Key_Size
            - id
            type: string
          type: array
        style: simple
      - description: 'Comma delimited list of fields and respective order to sort
          items (`default: [ id ASC ]`).'
        explode: false
        in: query
        name: sort
        required: true
        schema:
          example:
          - id ASC
          items:
            enum:
            - Client_Support ASC
            - Client_Support DESC
            - Coverage_Area ASC
            - Coverage_Area DESC
            - English_Location_City ASC
            - English_Location_City DESC
            - English_Location_Name ASC
            - English_Location_Name DESC
            - Latitude ASC
            - Latitude DESC
            - Location_Address1 ASC
            - Location_Address1 DESC
            - Location_Address2 ASC
            - Location_Address2 DESC
            - Location_Country_Name ASC
            - Location_Country_Name DESC
            - Location_Identifier ASC
            - Location_Identifier DESC
            - Location_Phone_Number ASC
            - Location_Phone_Number DESC
            - Location_State_Province_Name ASC
            - Location_State_Province_Name DESC
            - Location_Type ASC
            - Location_Type DESC
            - Location_URL ASC
            - Location_URL DESC
            - Location_Zip_Postal_Code ASC
            - Location_Zip_Postal_Code DESC
            - Longitude ASC
            - Longitude DESC
            - MAC_Address ASC
            - MAC_Address DESC
            - Open_Friday ASC
            - Open_Friday DESC
            - Open_Monday ASC
            - Open_Monday DESC
            - Open_Saturday ASC
            - Open_Saturday DESC
            - Open_Sunday ASC
            - Open_Sunday DESC
            - Open_Thursday ASC
            - Open_Thursday DESC
            - Open_Tuesday ASC
            - Open_Tuesday DESC
            - Open_Wednesday ASC
            - Open_Wednesday DESC
            - Provider_Identifier ASC
            - Provider_Identifier DESC
            - Restricted_Access ASC
            - Restricted_Access DESC
            - SSID_1X ASC
            - SSID_1X DESC
            - SSID_1X_Broadcasted ASC
            - SSID_1X_Broadcasted DESC
            - SSID_Broadcasted ASC
            - SSID_Broadcasted DESC
            - SSID_Open_Auth ASC
            - SSID_Open_Auth DESC
            - Security_Protocol_1X ASC
            - Security_Protocol_1X DESC
            - Service_Provider_Brand ASC
            - Service_Provider_Brand DESC
            - Sub_Location_Type ASC
            - Sub_Location_Type DESC
            - UTC_Timezone ASC
            - UTC_Timezone DESC
            - WEP_Key ASC
            - WEP_Key DESC
            - WEP_Key_Entry_Method ASC
            - WEP_Key_Entry_Method DESC
            - WEP_Key_Size ASC
            - WEP_Key_Size DESC
            - id ASC
            - id DESC
            type: string
          type: array
        style: simple
      - $ref: '#/components/parameters/limit'
        in: query
      - $ref: '#/components/parameters/cursor'
        in: query
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WrixLocationsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - WrixLocations
    post:
      description: Create a new item.
      operationId: api.v1.WrixLocations.create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WrixLocation'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - WrixLocations
  /api/v1/wrix_locations/search:
    description: pf::UnifiedApi::Controller::WrixLocations
    post:
      description: Search all items.
      operationId: api.v1.WrixLocations.search
      parameters: []
      requestBody:
        content:
          application/json:
            example:
              cursor: 0
              fields:
              - Client_Support
              - Coverage_Area
              - English_Location_City
              - English_Location_Name
              - Latitude
              - Location_Address1
              - Location_Address2
              - Location_Country_Name
              - Location_Identifier
              - Location_Phone_Number
              - Location_State_Province_Name
              - Location_Type
              - Location_URL
              - Location_Zip_Postal_Code
              - Longitude
              - MAC_Address
              - Open_Friday
              - Open_Monday
              - Open_Saturday
              - Open_Sunday
              - Open_Thursday
              - Open_Tuesday
              - Open_Wednesday
              - Provider_Identifier
              - Restricted_Access
              - SSID_1X
              - SSID_1X_Broadcasted
              - SSID_Broadcasted
              - SSID_Open_Auth
              - Security_Protocol_1X
              - Service_Provider_Brand
              - Sub_Location_Type
              - UTC_Timezone
              - WEP_Key
              - WEP_Key_Entry_Method
              - WEP_Key_Size
              - id
              limit: 25
              query:
                op: and
                values:
                - op: or
                  values:
                  - field: Client_Support
                    op: contains
                    value: foo
                  - field: Coverage_Area
                    op: contains
                    value: foo
                  - field: English_Location_City
                    op: contains
                    value: foo
                  - field: English_Location_Name
                    op: contains
                    value: foo
                  - field: Latitude
                    op: contains
                    value: foo
                  - field: Location_Address1
                    op: contains
                    value: foo
                  - field: Location_Address2
                    op: contains
                    value: foo
                  - field: Location_Country_Name
                    op: contains
                    value: foo
                  - field: Location_Identifier
                    op: contains
                    value: foo
                  - field: Location_Phone_Number
                    op: contains
                    value: foo
                  - field: Location_State_Province_Name
                    op: contains
                    value: foo
                  - field: Location_Type
                    op: contains
                    value: foo
                  - field: Location_URL
                    op: contains
                    value: foo
                  - field: Location_Zip_Postal_Code
                    op: contains
                    value: foo
                  - field: Longitude
                    op: contains
                    value: foo
                  - field: MAC_Address
                    op: contains
                    value: foo
                  - field: Open_Friday
                    op: contains
                    value: foo
                  - field: Open_Monday
                    op: contains
                    value: foo
                  - field: Open_Saturday
                    op: contains
                    value: foo
                  - field: Open_Sunday
                    op: contains
                    value: foo
                  - field: Open_Thursday
                    op: contains
                    value: foo
                  - field: Open_Tuesday
                    op: contains
                    value: foo
                  - field: Open_Wednesday
                    op: contains
                    value: foo
                  - field: Provider_Identifier
                    op: contains
                    value: foo
                  - field: Restricted_Access
                    op: contains
                    value: foo
                  - field: SSID_1X
                    op: contains
                    value: foo
                  - field: SSID_1X_Broadcasted
                    op: contains
                    value: foo
                  - field: SSID_Broadcasted
                    op: contains
                    value: foo
                  - field: SSID_Open_Auth
                    op: contains
                    value: foo
                  - field: Security_Protocol_1X
                    op: contains
                    value: foo
                  - field: Service_Provider_Brand
                    op: contains
                    value: foo
                  - field: Sub_Location_Type
                    op: contains
                    value: foo
                  - field: UTC_Timezone
                    op: contains
                    value: foo
                  - field: WEP_Key
                    op: contains
                    value: foo
                  - field: WEP_Key_Entry_Method
                    op: contains
                    value: foo
                  - field: WEP_Key_Size
                    op: contains
                    value: foo
                  - field: id
                    op: contains
                    value: foo
              sort:
              - id ASC
            schema:
              allOf:
              - $ref: '#/components/schemas/Search'
              - properties:
                  cursor:
                    type: string
                  fields:
                    items:
                      enum:
                      - Client_Support
                      - Coverage_Area
                      - English_Location_City
                      - English_Location_Name
                      - Latitude
                      - Location_Address1
                      - Location_Address2
                      - Location_Country_Name
                      - Location_Identifier
                      - Location_Phone_Number
                      - Location_State_Province_Name
                      - Location_Type
                      - Location_URL
                      - Location_Zip_Postal_Code
                      - Longitude
                      - MAC_Address
                      - Open_Friday
                      - Open_Monday
                      - Open_Saturday
                      - Open_Sunday
                      - Open_Thursday
                      - Open_Tuesday
                      - Open_Wednesday
                      - Provider_Identifier
                      - Restricted_Access
                      - SSID_1X
                      - SSID_1X_Broadcasted
                      - SSID_Broadcasted
                      - SSID_Open_Auth
                      - Security_Protocol_1X
                      - Service_Provider_Brand
                      - Sub_Location_Type
                      - UTC_Timezone
                      - WEP_Key
                      - WEP_Key_Entry_Method
                      - WEP_Key_Size
                      - id
                      type: string
                    type: array
                  limit:
                    maximum: 1000
                    minimum: 1
                    type: integer
                  sort:
                    items:
                      enum:
                      - Client_Support ASC
                      - Client_Support DESC
                      - Coverage_Area ASC
                      - Coverage_Area DESC
                      - English_Location_City ASC
                      - English_Location_City DESC
                      - English_Location_Name ASC
                      - English_Location_Name DESC
                      - Latitude ASC
                      - Latitude DESC
                      - Location_Address1 ASC
                      - Location_Address1 DESC
                      - Location_Address2 ASC
                      - Location_Address2 DESC
                      - Location_Country_Name ASC
                      - Location_Country_Name DESC
                      - Location_Identifier ASC
                      - Location_Identifier DESC
                      - Location_Phone_Number ASC
                      - Location_Phone_Number DESC
                      - Location_State_Province_Name ASC
                      - Location_State_Province_Name DESC
                      - Location_Type ASC
                      - Location_Type DESC
                      - Location_URL ASC
                      - Location_URL DESC
                      - Location_Zip_Postal_Code ASC
                      - Location_Zip_Postal_Code DESC
                      - Longitude ASC
                      - Longitude DESC
                      - MAC_Address ASC
                      - MAC_Address DESC
                      - Open_Friday ASC
                      - Open_Friday DESC
                      - Open_Monday ASC
                      - Open_Monday DESC
                      - Open_Saturday ASC
                      - Open_Saturday DESC
                      - Open_Sunday ASC
                      - Open_Sunday DESC
                      - Open_Thursday ASC
                      - Open_Thursday DESC
                      - Open_Tuesday ASC
                      - Open_Tuesday DESC
                      - Open_Wednesday ASC
                      - Open_Wednesday DESC
                      - Provider_Identifier ASC
                      - Provider_Identifier DESC
                      - Restricted_Access ASC
                      - Restricted_Access DESC
                      - SSID_1X ASC
                      - SSID_1X DESC
                      - SSID_1X_Broadcasted ASC
                      - SSID_1X_Broadcasted DESC
                      - SSID_Broadcasted ASC
                      - SSID_Broadcasted DESC
                      - SSID_Open_Auth ASC
                      - SSID_Open_Auth DESC
                      - Security_Protocol_1X ASC
                      - Security_Protocol_1X DESC
                      - Service_Provider_Brand ASC
                      - Service_Provider_Brand DESC
                      - Sub_Location_Type ASC
                      - Sub_Location_Type DESC
                      - UTC_Timezone ASC
                      - UTC_Timezone DESC
                      - WEP_Key ASC
                      - WEP_Key DESC
                      - WEP_Key_Entry_Method ASC
                      - WEP_Key_Entry_Method DESC
                      - WEP_Key_Size ASC
                      - WEP_Key_Size DESC
                      - id ASC
                      - id DESC
                      type: string
                    type: array
                required:
                - fields
                - sort
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WrixLocationsList'
          description: Request successful.
        '401':
          $ref: '#/components/responses/Forbidden'
        '404':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
      tags:
      - WrixLocations
  /config/device_registration/{device_registration_id}:
    delete:
      deprecated: true
      description: Remove an item
      operationId: api.v1.Config::DeviceRegistrations.remove
      parameters:
      - in: path
        name: device_registration_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Deleted a config item
    description: pf::UnifiedApi::Controller::Config::DeviceRegistrations
    get:
      deprecated: true
      description: Get an item
      operationId: api.v1.Config::DeviceRegistrations.get
      parameters:
      - in: path
        name: device_registration_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigDeviceRegistration'
          description: Item
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
    patch:
      deprecated: true
      description: Update an item
      operationId: api.v1.Config::DeviceRegistrations.update
      parameters:
      - in: path
        name: device_registration_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigDeviceRegistration'
      responses:
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
    put:
      deprecated: true
      description: Replace an item
      operationId: api.v1.Config::DeviceRegistrations.replace
      parameters:
      - in: path
        name: device_registration_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigDeviceRegistration'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
  /config/device_registrations:
    description: pf::UnifiedApi::Controller::Config::DeviceRegistrations
    get:
      deprecated: true
      description: List items
      operationId: api.v1.Config::DeviceRegistrations.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigDeviceRegistrationsList'
          description: List
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
  /config/wmi_rule/{wmi_rule_id}:
    delete:
      deprecated: true
      description: Remove an item
      operationId: api.v1.Config.WMIRules.resource.remove
      parameters:
      - in: path
        name: wmi_rule_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Deleted a config item
    description: Configure floating devices
    get:
      deprecated: true
      description: Get an item
      operationId: api.v1.Config.WMIRules.resource.get
      parameters:
      - in: path
        name: wmi_rule_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigWMIRule'
          description: Item
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
    patch:
      deprecated: true
      description: Update an item
      operationId: api.v1.Config.WMIRules.resource.update
      parameters:
      - in: path
        name: wmi_rule_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigWMIRule'
      responses:
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
    put:
      deprecated: true
      description: Replace an item
      operationId: api.v1.Config.WMIRules.resource.replace
      parameters:
      - in: path
        name: wmi_rule_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConfigWMIRule'
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
  /config/wmi_rules:
    description: Configure floating devices
    get:
      deprecated: true
      description: List items
      operationId: api.v1.Config.WMIRules.list
      parameters: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConfigWMIRulesList'
          description: List
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
  /tenant/{tenant_id}:
    delete:
      deprecated: true
      description: Remove an item
      operationId: api.v1.Tenants.remove
      parameters:
      - in: path
        name: tenant_id
        required: true
        schema:
          type: string
      responses:
        '204':
          description: Item deleted
    description: pf::UnifiedApi::Controller::Tenants
    get:
      deprecated: true
      description: Get an item
      operationId: api.v1.Tenants.get
      parameters:
      - in: path
        name: tenant_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                description: Item
                type: object
          description: Get item
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
    patch:
      deprecated: true
      description: Update an item
      operationId: api.v1.Tenants.update
      parameters:
      - in: path
        name: tenant_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
    put:
      deprecated: true
      description: Replace an item
      operationId: api.v1.Tenants.replace
      parameters:
      - in: path
        name: tenant_id
        required: true
        schema:
          type: string
      responses:
        '200':
          $ref: '#/components/responses/Message'
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
  /tenants:
    description: pf::UnifiedApi::Controller::Tenants
    get:
      deprecated: true
      description: List items
      operationId: api.v1.Tenants.list
      parameters:
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/fields'
      - $ref: '#/components/parameters/sort'
      responses:
        '400':
          $ref: '#/components/responses/BadRequest'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
    post:
      deprecated: true
      description: Create an item
      operationId: api.v1.Tenants.create
      parameters: []
      responses:
        '201':
          $ref: '#/components/responses/Created'
        '400':
          $ref: '#/components/responses/BadRequest'
        '409':
          $ref: '#/components/responses/Duplicate'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
security:
- bearerAuth: []
servers:
- description: Secure PacketFence API.
  url: https://{hostname}:{port}
  variables:
    hostname:
      default: localhost
      description: Hostname or IP address of the PacketFence API.
    port:
      default: '9999'
      description: Port of the PacketFence API
- description: Insecure PacketFence API.
  url: http://{hostname}:{port}
  variables:
    hostname:
      default: localhost
      description: Hostname or IP address of the PacketFence API.
    port:
      default: '9999'
      description: Port of the PacketFence API.
tags:
- description: Runs tasks asyncronously.
  name: Async
- description: Manage PacketFence cluster.
  name: Cluster
- description: Manage PacketFence Authoritative DNS server.
  name: DHCP
- description: Send email using SMTP configuration.
  name: Email
- description: Fingerbank device discovery.
  name: Fingerbank
- description: Manage PacketFence Ipset firewall.
  name: Ipset
- description: Tail logs in real time.
  name: LiveLogs
- description: Locale translations.
  name: Locales
- description: Manage PacketFence nodes/devices.
  name: Nodes
- description: PacketFence Queue.
  name: Pfqueue
- description: PacketFence Public Key Infrastructure.
  name: PKI
- description: RADIUS Helpers.
  name: RADIUS
- description: Manage Security Events and Violations.
  name: SecurityEvents
- description: Manage PacketFence services.
  name: Services
- description: Manage session, get the current users' allowed roles and actions.
  name: Session
- description: Single-Sign-On status.
  name: SSO
- description: Perform LDAP search.
  name: LDAP
- description: System summary.
  name: System
- description: Manage PacketFence users/persons.
  name: Users
