Cisco Catalyst Center Clients API

Operations related to Catalyst Center - Assurance Network Clients

OpenAPI Specification

cisco-catalyst-center-clients-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: OpenAPI specification for Assurance Clients API
  description: 'OpenAPI specification for Catalyst Center - Assurance Network Clients


    A Client is an end device (computer, phone, and so on) that is connected to a network through wired or wireless medium. Catalyst Center supports both Wired and Wireless clients

    '
  termsOfService: https://www.cisco.com/c/en/us/about/legal/cloud-and-software/end_user_license_agreement.html
  contact:
    name: Cisco TAC World Wide
    url: https://www.cisco.com/c/en/us/support/web/tsd-cisco-worldwide-contacts.html
    email: tac@cisco.com
  license:
    name: Cisco Catalyst Center License
    url: https://www.cisco.com/c/en/us/products/collateral/software/dna-software-ebook-cte.html
  version: 3.2.3
  x-provenance:
    method: harvested
    authored_by: Cisco Catalyst Center
    harvested_by: API Evangelist
    harvested_on: '2026-08-19'
    first_party: true
    provider_published: true
    source_host: developer.cisco.com
    note: 27 Cisco-published OpenAPI 3.0 Assurance documents (185 operations). Ownership confirmed from the tac@cisco.com contact, the Cisco EULA terms-of-service URL and the Cisco Catalyst Center license block carried in each document.
  x-evidence:
  - type: source
    url: https://developer.cisco.com/docs/catalyst-center/
  - type: source
    url: https://developer.cisco.com/dnacenter/
servers:
- url: https://developer.cisco.com
tags:
- name: clients
  description: Operations related to Catalyst Center - Assurance Network Clients
  externalDocs:
    description: Catalyst Center Assurance user guide
    url: https://www.cisco.com/c/en/us/support/cloud-systems-management/dna-center/products-user-guide-list.html
paths:
  /dna/data/api/v1/clients:
    get:
      tags:
      - clients
      summary: Retrieves the list of clients, while also offering basic filtering and sorting capabilities.
      description: Retrieves the list of clients, while also offering basic filtering and sorting capabilities. If startTime and endTime are not provided, the API defaults to the last 24 hours.
      operationId: readClients
      parameters:
      - name: startTime
        in: query
        description: 'Start time from which API queries the data set related to the resource. It must be specified in UNIX epochtime in milliseconds. Value is inclusive.

          '
        schema:
          type: integer
          format: int64
        example: 1705348800000
      - name: endTime
        in: query
        description: 'End time to which API queries the data set related to the resource. It must be specified in UNIX epochtime in milliseconds. Value is inclusive.

          '
        required: false
        schema:
          type: integer
          format: int64
        example: 1705435200000
      - name: limit
        in: query
        description: Maximum number of records to return
        schema:
          maximum: 500
          minimum: 1
          type: integer
          default: 100
      - name: offset
        in: query
        description: Specifies the starting point within all records returned by the API. It's one based offset. The starting value is 1.
        schema:
          minimum: 1
          type: integer
          default: 1
      - name: sortBy
        in: query
        description: A field within the response to sort by.
        schema:
          type: string
      - name: order
        in: query
        description: The sort order of the field ascending or descending.
        schema:
          type: string
          default: asc
          enum:
          - asc
          - desc
      - name: type
        in: query
        description: 'The client device type whether client is connected to network through Wired or Wireless medium.

          '
        required: false
        schema:
          type: string
          enum:
          - Wired
          - Wireless
        example: Wireless
      - name: osType
        in: query
        description: "Client device operating system type.\nThis field supports wildcard (`*`) character-based search. If the value contains the (`*`) character, please use the /query API for regex search. \nEx: `*iOS*` or `iOS*` or `*iOS`\nExamples:\n\n`osType=iOS` (single osType requested)\n\n`osType=iOS&osType=Android` (multiple osType requested)\n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: osVersion
        in: query
        description: "Client device operating system version\nThis field supports wildcard (`*`) character-based search. If the value contains the (`*`) character, please use the /query API for regex search. \nEx: `*14.3*` or `14.3*` or `*14.3`\nExamples:\n\n`osVersion=14.3` (single osVersion requested)\n\n`osVersion=14.3&osVersion=10.1` (multiple osVersion requested)\n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: siteHierarchy
        in: query
        description: 'The full hierarchical breakdown of the site tree starting from Global site name and ending with the specific site name. The Root site is named "Global" (Ex. "Global/AreaName/BuildingName/FloorName") This field supports partial search. All the records containing the filter value will be returned

          Examples:

          `siteHierarchy=Global/AreaName/BuildingName/FloorName` (single siteHierarchy requested)

          `siteHierarchy=Global/AreaName/BuildingName1/FloorName1&siteHierarchy=Global/AreaName/BuildingName1/FloorName2` (multiple siteHierarchy requested)'
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: siteHierarchyId
        in: query
        description: 'The full hierarchy breakdown of the site tree in id form starting from Global site UUID and ending with the specific site UUID. (Ex. "/globalUuid/areaUuid/buildingUuid/floorUuid/") This field supports partial search. All the records containing the filter value will be returned

          Examples:

          `siteHierarchyId=/globalUuid/areaUuid/buildingUuid/floorUuid/` (single siteHierarchyId requested)

          `siteHierarchyId=/globalUuid/areaUuid/buildingUuid1/floorUuid1/&siteHierarchyId=/globalUuid/areaUuid/buildingUuid1/floorUuid2/` (multiple siteHierarchyId requested)'
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: siteId
        in: query
        description: 'The site UUID without the top level hierarchy. (Ex."floorUuid") Examples:

          `siteId=floorUuid` (single siteId requested)

          `siteId=floorUuid1&siteId=floorUuid2` (multiple siteId requested)'
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: ipv4Address
        in: query
        description: "IPv4 Address of the network entity either network device or client\nThis field supports wildcard (`*`) character-based search. \nEx: `*1.1*` or `1.1*` or `*1.1`\n\nExamples:\n\n`ipv4Address=1.1.1.1` (single ipv4Address requested)\n\n`ipv4Address=1.1.1.1&ipv4Address=2.2.2.2` (multiple ipv4Address requested)\n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
            format: ipv4
      - name: ipv6Address
        in: query
        description: 'IPv6 Address of the network entity either network device or client

          This field supports wildcard (`*`) character-based search.

          Ex: `*2001:db8*` or `2001:db8*` or `*2001:db8`


          Examples:


          `ipv6Address=2001:db8:0:0:0:0:2:1` (single ipv6Address requested)


          `ipv6Address=2001:db8:0:0:0:0:2:1&ipv6Address=2001:db8:85a3:8d3:1319:8a2e:370:7348` (multiple ipv6Address requested)

          '
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
            format: ipv6
      - name: macAddress
        in: query
        description: "The macAddress of the network device or client\nThis field supports wildcard (`*`) character-based search. \nEx: `*AB:AB:AB*` or `AB:AB:AB*` or `*AB:AB:AB`\nExamples:\n\n`macAddress=AB:AB:AB:CD:CD:CD` (single macAddress requested)\n\n`macAddress=AB:AB:AB:CD:CD:DC&macAddress=AB:AB:AB:CD:CD:FE` (multiple macAddress requested)\n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: wlcName
        in: query
        description: 'Wireless Controller name that reports the wireless client.

          This field supports wildcard (`*`) character-based search. If the value contains the (`*`) character, please use the /query API for regex search.

          Ex: `*wlc-25*` or `wlc-25*` or `*wlc-25`


          Examples:


          `wlcName=wlc-25` (single wlcName requested)


          `wlcName=wlc-25&wlc-34` (multiple wlcName requested)

          '
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: connectedNetworkDeviceName
        in: query
        description: "Name of the neighbor network device that client is connected to.\nThis field supports wildcard (`*`) character-based search. If the value contains the (`*`) character, please use the /query API for regex search.\nEx: `*ap-25*` or `ap-25*` or `*ap-25`\n\nExamples:\n\n`connectedNetworkDeviceName=ap-25` (single connectedNetworkDeviceName requested)\n\n`connectedNetworkDeviceName=ap-25&ap-34` (multiple connectedNetworkDeviceName requested)    \n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: ssid
        in: query
        description: "SSID is the name of wireless network to which client connects to. It is also referred to as WLAN ID - Wireless Local Area Network Identifier.\nThis field supports wildcard (`*`) character-based search. If the value contains the (`*`) character, please use the /query API for regex search. \nEx: `*Alpha*` or `Alpha*` or `*Alpha`\n\nExamples:\n\n`ssid=Alpha` (single ssid requested)\n\n`ssid=Alpha&ssid=Guest` (multiple ssid requested)\n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: band
        in: query
        description: 'WiFi frequency band that client or Access Point operates. Band value is represented in Giga Hertz - GHz

          Examples:


          `band=5GHZ` (single band requested)


          `band=2.4GHZ&band=6GHZ` (multiple band requested)

          '
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - 2.4GHZ
            - 5GHZ
            - 6GHZ
      - name: view
        in: query
        description: 'Client related Views

          Refer to ClientView schema for list of views supported

          Examples:


          `view=Wireless` (single view requested)


          `view=WirelessHealth&view=WirelessTraffic` (multiple view requested)

          '
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: attribute
        in: query
        description: 'List of attributes related to resource that can be requested to only be part of the response along with the required attributes. Refer to ClientAttribute schema for list of attributes supported Examples:

          `attribute=band` (single attribute requested)

          `attribute=band&attribute=ssid&attribute=overallScore` (multiple attribute requested)'
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: X-CALLER-ID
        in: header
        description: 'Caller ID is used to trace the origin of API calls and their associated queries executed on the database. It''s an optional header parameter that can be added to an API request.

          '
        required: false
        schema:
          type: string
          default: unknown
        example: ui:client360
      responses:
        '200':
          $ref: '#/components/responses/ClientsResponseModel'
        '400':
          $ref: '#/components/responses/400'
        '500':
          $ref: '#/components/responses/500'
        1XX:
          $ref: '#/components/responses/1XX'
        2XX:
          $ref: '#/components/responses/2XX'
        3XX:
          $ref: '#/components/responses/3XX'
        4XX:
          $ref: '#/components/responses/4XX'
        5XX:
          $ref: '#/components/responses/5XX'
        default:
          $ref: '#/components/responses/defaultError'
  /dna/data/api/v1/clients/{id}:
    get:
      tags:
      - clients
      summary: Retrieves specific client information matching the MAC address.
      description: Retrieves specific client information matching the MAC address. If startTime and endTime are not provided, the API defaults to the last 24 hours.
      operationId: readClientById
      parameters:
      - name: id
        in: path
        description: "id is the client mac address. It can be specified is any notational conventions \n01:23:45:67:89:AB or 01-23-45-67-89-AB or 0123.4567.89AB and is case insensitive\n"
        required: true
        schema:
          pattern: ^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$|^[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}\.[0-9A-Fa-f]{4}$
          type: string
      - name: startTime
        in: query
        description: 'Start time from which API queries the data set related to the resource. It must be specified in UNIX epochtime in milliseconds. Value is inclusive.

          '
        schema:
          type: integer
          format: int64
        example: 1705348800000
      - name: endTime
        in: query
        description: 'End time to which API queries the data set related to the resource. It must be specified in UNIX epochtime in milliseconds. Value is inclusive.

          '
        required: false
        schema:
          type: integer
          format: int64
        example: 1705435200000
      - name: view
        in: query
        description: 'Client related Views

          Refer to ClientView schema for list of views supported

          Examples:


          `view=Wireless` (single view requested)


          `view=WirelessHealth&view=WirelessTraffic` (multiple view requested)

          '
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: attribute
        in: query
        description: 'List of attributes related to resource that can be requested to only be part of the response along with the required attributes. Refer to ClientAttribute schema for list of attributes supported Examples:

          `attribute=band` (single attribute requested)

          `attribute=band&attribute=ssid&attribute=overallScore` (multiple attribute requested)'
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: X-CALLER-ID
        in: header
        description: 'Caller ID is used to trace the origin of API calls and their associated queries executed on the database. It''s an optional header parameter that can be added to an API request.

          '
        required: false
        schema:
          type: string
          default: unknown
        example: ui:client360
      responses:
        '200':
          $ref: '#/components/responses/ClientResponseModel'
        '400':
          $ref: '#/components/responses/400'
        '404':
          $ref: '#/components/responses/404'
        '500':
          $ref: '#/components/responses/500'
        1XX:
          $ref: '#/components/responses/1XX'
        2XX:
          $ref: '#/components/responses/2XX'
        3XX:
          $ref: '#/components/responses/3XX'
        4XX:
          $ref: '#/components/responses/4XX'
        5XX:
          $ref: '#/components/responses/5XX'
        default:
          $ref: '#/components/responses/defaultError'
  /dna/data/api/v1/clients/count:
    get:
      tags:
      - clients
      summary: Retrieves the total count of clients by applying basic filtering
      description: Retrieves the number of clients by applying basic filtering. If startTime and endTime are not provided, the API defaults to the last 24 hours.
      operationId: readClientsCount
      parameters:
      - name: startTime
        in: query
        description: 'Start time from which API queries the data set related to the resource. It must be specified in UNIX epochtime in milliseconds. Value is inclusive.

          '
        schema:
          type: integer
          format: int64
        example: 1705348800000
      - name: endTime
        in: query
        description: 'End time to which API queries the data set related to the resource. It must be specified in UNIX epochtime in milliseconds. Value is inclusive.

          '
        required: false
        schema:
          type: integer
          format: int64
        example: 1705435200000
      - name: type
        in: query
        description: 'The client device type whether client is connected to network through Wired or Wireless medium.

          '
        required: false
        schema:
          type: string
          enum:
          - Wired
          - Wireless
        example: Wireless
      - name: osType
        in: query
        description: "Client device operating system type.\nThis field supports wildcard (`*`) character-based search. If the value contains the (`*`) character, please use the /query API for regex search. \nEx: `*iOS*` or `iOS*` or `*iOS`\nExamples:\n\n`osType=iOS` (single osType requested)\n\n`osType=iOS&osType=Android` (multiple osType requested)\n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: osVersion
        in: query
        description: "Client device operating system version\nThis field supports wildcard (`*`) character-based search. If the value contains the (`*`) character, please use the /query API for regex search. \nEx: `*14.3*` or `14.3*` or `*14.3`\nExamples:\n\n`osVersion=14.3` (single osVersion requested)\n\n`osVersion=14.3&osVersion=10.1` (multiple osVersion requested)\n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: siteHierarchy
        in: query
        description: 'The full hierarchical breakdown of the site tree starting from Global site name and ending with the specific site name. The Root site is named "Global" (Ex. "Global/AreaName/BuildingName/FloorName") This field supports partial search. All the records containing the filter value will be returned

          Examples:

          `siteHierarchy=Global/AreaName/BuildingName/FloorName` (single siteHierarchy requested)

          `siteHierarchy=Global/AreaName/BuildingName1/FloorName1&siteHierarchy=Global/AreaName/BuildingName1/FloorName2` (multiple siteHierarchy requested)'
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: siteHierarchyId
        in: query
        description: 'The full hierarchy breakdown of the site tree in id form starting from Global site UUID and ending with the specific site UUID. (Ex. "/globalUuid/areaUuid/buildingUuid/floorUuid/") This field supports partial search. All the records containing the filter value will be returned

          Examples:

          `siteHierarchyId=/globalUuid/areaUuid/buildingUuid/floorUuid/` (single siteHierarchyId requested)

          `siteHierarchyId=/globalUuid/areaUuid/buildingUuid1/floorUuid1/&siteHierarchyId=/globalUuid/areaUuid/buildingUuid1/floorUuid2/` (multiple siteHierarchyId requested)'
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: siteId
        in: query
        description: 'The site UUID without the top level hierarchy. (Ex."floorUuid") Examples:

          `siteId=floorUuid` (single siteId requested)

          `siteId=floorUuid1&siteId=floorUuid2` (multiple siteId requested)'
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: ipv4Address
        in: query
        description: "IPv4 Address of the network entity either network device or client\nThis field supports wildcard (`*`) character-based search. \nEx: `*1.1*` or `1.1*` or `*1.1`\n\nExamples:\n\n`ipv4Address=1.1.1.1` (single ipv4Address requested)\n\n`ipv4Address=1.1.1.1&ipv4Address=2.2.2.2` (multiple ipv4Address requested)\n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
            format: ipv4
      - name: ipv6Address
        in: query
        description: 'IPv6 Address of the network entity either network device or client

          This field supports wildcard (`*`) character-based search.

          Ex: `*2001:db8*` or `2001:db8*` or `*2001:db8`


          Examples:


          `ipv6Address=2001:db8:0:0:0:0:2:1` (single ipv6Address requested)


          `ipv6Address=2001:db8:0:0:0:0:2:1&ipv6Address=2001:db8:85a3:8d3:1319:8a2e:370:7348` (multiple ipv6Address requested)

          '
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
            format: ipv6
      - name: macAddress
        in: query
        description: "The macAddress of the network device or client\nThis field supports wildcard (`*`) character-based search. \nEx: `*AB:AB:AB*` or `AB:AB:AB*` or `*AB:AB:AB`\nExamples:\n\n`macAddress=AB:AB:AB:CD:CD:CD` (single macAddress requested)\n\n`macAddress=AB:AB:AB:CD:CD:DC&macAddress=AB:AB:AB:CD:CD:FE` (multiple macAddress requested)\n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: wlcName
        in: query
        description: 'Wireless Controller name that reports the wireless client.

          This field supports wildcard (`*`) character-based search. If the value contains the (`*`) character, please use the /query API for regex search.

          Ex: `*wlc-25*` or `wlc-25*` or `*wlc-25`


          Examples:


          `wlcName=wlc-25` (single wlcName requested)


          `wlcName=wlc-25&wlc-34` (multiple wlcName requested)

          '
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: connectedNetworkDeviceName
        in: query
        description: "Name of the neighbor network device that client is connected to.\nThis field supports wildcard (`*`) character-based search. If the value contains the (`*`) character, please use the /query API for regex search.\nEx: `*ap-25*` or `ap-25*` or `*ap-25`\n\nExamples:\n\n`connectedNetworkDeviceName=ap-25` (single connectedNetworkDeviceName requested)\n\n`connectedNetworkDeviceName=ap-25&ap-34` (multiple connectedNetworkDeviceName requested)    \n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: ssid
        in: query
        description: "SSID is the name of wireless network to which client connects to. It is also referred to as WLAN ID - Wireless Local Area Network Identifier.\nThis field supports wildcard (`*`) character-based search. If the value contains the (`*`) character, please use the /query API for regex search. \nEx: `*Alpha*` or `Alpha*` or `*Alpha`\n\nExamples:\n\n`ssid=Alpha` (single ssid requested)\n\n`ssid=Alpha&ssid=Guest` (multiple ssid requested)\n"
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: band
        in: query
        description: 'WiFi frequency band that client or Access Point operates. Band value is represented in Giga Hertz - GHz

          Examples:


          `band=5GHZ` (single band requested)


          `band=2.4GHZ&band=6GHZ` (multiple band requested)

          '
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
            enum:
            - 2.4GHZ
            - 5GHZ
            - 6GHZ
      - name: X-CALLER-ID
        in: header
        description: 'Caller ID is used to trace the origin of API calls and their associated queries executed on the database. It''s an optional header parameter that can be added to an API request.

          '
        required: false
        schema:
          type: string
          default: unknown
        example: ui:client360
      responses:
        '200':
          $ref: '#/components/responses/CountIntegerResponse'
        '400':
          $ref: '#/components/responses/400'
        '500':
          $ref: '#/components/responses/500'
        1XX:
          $ref: '#/components/responses/1XX'
        2XX:
          $ref: '#/components/responses/2XX'
        3XX:
          $ref: '#/components/responses/3XX'
        4XX:
          $ref: '#/components/responses/4XX'
        5XX:
          $ref: '#/components/responses/5XX'
        default:
          $ref: '#/components/responses/defaultError'
  /dna/data/api/v1/clients/query:
    post:
      tags:
      - clients
      summary: Retrieves the list of clients by applying complex filters while also supporting aggregate attributes.
      description: "Retrieves the list of clients by applying complex filters while also supporting aggregate attributes. If startTime and endTime are not provided, the API defaults to the last 24 hours.\n\n**The input payload contains the following fields,**\n|Field Name | Description |\n| --- | --- |\n| `startTime` | The start time indicates when the API begins retrieving data related to the resource. It must be specified in the UNIX epoch time format, measured in milliseconds. This value is inclusive, and if left unspecified, the default is 1 day before the endTime. |\n| `endTime` | The end time indicates the upper limit until which the API retrieves data related to the resource. It must be defined in the UNIX epoch time format, measured in milliseconds. This value is inclusive, and if left unspecified, the default is the latest available data. |\n| `views` |  A collection of attributes classified as \"view\" associated with the resource, which can be requested to be included in the response alongside the required attributes. Each view comprises a predetermined set of attributes. Refer to `ClientView` for the supported views |\n| `attributes` | A list of attributes associated with the resource, which can be requested to be included in the response alongside the required attributes. Refer to `ClientAttribute` model for the supported attributes |\n| `aggregateAttributes` | This specifies the attribute name and the function to be applied during data querying. The aggregate function is then applied to data within the specified start and end times. Refer to `ClientAggregateField` model for the supported aggregate attributes |\n|`filters`| This is used to specify one or more conditions for filtering the queried data. Refer to `ClientFilterField` model for the supported filters |\n|`page`| It includes the **limit, offset, and sortBy** fields. *limit* denotes the number of records to retrieve per page, *offset* signifies the initial data position, and *sortBy* is used to sort the response based on the sortBy fields. It contains the attribute name, order, and optional function for sorting by the aggregated field. Refer to `ClientSortByField` model for the supported sortBy names.|\n**How the filtering behavior works**\nThe `filters` field in each post body can be used in various ways:\nEach filter in the list of filters will be applied simultaneously. For instance, the following example would request filtering to retrieve clients with an RSSI value greater than -50 dBm and a osType of either iOS or Android.\n``` \"filters\": [\n    {\n      \"key\": \"rssi\",\n      \"operator\": \"gt\",\n      \"value\": -50\n    },\n    {\n      \"key\": \"osType\",\n      \"operator\": \"in\",\n      \"value\": [\n        \"iOS\",\n        \"Android\"\n      ]\n    }\n]\n```\n\nEach filter object can utilize its logical operator differently to offer nested filtering functionality.\nIn the example below, you can observe a logical `OR` filter being applied using the nested filtering functionality:\nThe main filter object doesn't have its `key`, `value`, or `operator` fields populated. Only the `logicalOperator` field is populated to indicate that the filters within the nested filters list are to be logically combined.\n``` \"filters\": [\n    {\n      \"logicalOperator\": \"or\",\n      \"filters\": [\n        {\n          \"key\": \"vlanId\",\n          \"operator\": \"eq\",\n          \"value\": \"187\"\n        },\n        {\n          \"key\": \"siteHierarchy\",\n          \"operator\": \"in\",\n          \"value\": [\"Global/San Jose\", \"Global/SFO\"]\n        }\n      ]\n    }\n] ```"
      operationId: queryClients
      parameters:
      - name: X-CALLER-ID
        in: header
        description: 'Caller ID is used to trace the origin of API calls and their associated queries executed on the database. It''s an optional header parameter that can be added to an API request.

          '
        required: false
        schema:
          type: string
          default: unknown
        example: ui:client360
      requestBody:
        $ref: '#/components/requestBodies/ClientsQueryRequest'
      responses:
        '200':
          $ref: '#/components/responses/ClientsWithAggregateResponseModel'
        '400':
          $ref: '#/components/responses/400'
        '500':
          $ref: '#/components/responses/500'
        1XX:
          $ref: '#/components/responses/1XX'
        2XX:
          $ref: '#/components/responses/2XX'
        3XX:
          $ref: '#/components/responses/3XX'
        4XX:
          $ref: '#/components/responses/4XX'
        5XX:
          $ref: '#/components/responses/5XX'
        default:
          $ref: '#/components/responses/defaultError'
  /dna/data/api/v1/clients/query/count:
    post:
      tags:
      - clients
      summary: Retrieves the number of clients by applying complex filters.
      description: "Retrieves the number of clients by applying complex filters. If startTime and endTime are not provided, the API defaults to the last 24 hours.\n\n**The input payload contains the following fields,**\n|Field Name | Description |\n| --- | --- |\n| `startTime` | The start time indicates when the API begins retrieving data related to the resource. It must be specified in the UNIX epoch time format, measured in milliseconds. This value is inclusive, and if left unspecified, the default is 1 day before the endTime. |\n| `endTime` | The end time indicates the upper limit until which the API retrieves data related to the resource. It must be defined in the UNIX epoch time format, measured in milliseconds. This value is inclusive, and if left unspecified, the default is the latest available data. |\n|`filters`| This is used to specify one or more conditions for filtering the queried data. Refer to `ClientFilterField` model for the supported filters |\n**How the filtering behavior works**\nThe `filters` field in each post body can be used in various ways:\nEach filter in the list of filters will be applied simultaneously. For instance, the following example would request filtering to retrieve clients with an RSSI value greater than -50 dBm and a osType of either iOS or Android.\n``` \"fi

# --- truncated at 32 KB (151 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cisco-catalyst-center/refs/heads/main/openapi/cisco-catalyst-center-clients-api-openapi.yml