openapi: 3.2.0 info: title: Mist Sites Clients - Wireless API description: '> Version: **2607.1.1** > > Date: **August 17, 2026** NOTE: Some important API changes will be introduced.' contact: name: Thomas Munzer email: tmunzer@juniper.net version: 2607.1.1 servers: - url: https://api.mist.com variables: {} - url: https://api.gc1.mist.com variables: {} - url: https://api.ac2.mist.com variables: {} - url: https://api.gc2.mist.com variables: {} - url: https://api.gc4.mist.com variables: {} - url: https://api.eu.mist.com variables: {} - url: https://api.gc3.mist.com variables: {} - url: https://api.ac6.mist.com variables: {} - url: https://api.gc6.mist.com variables: {} - url: https://api.ac5.mist.com variables: {} - url: https://api.gc5.mist.com variables: {} - url: https://api.gc7.mist.com variables: {} security: - apiToken: [] - csrfToken: [] tags: - name: Sites Clients - Wireless description: Wireless Clients are Wi-Fi devices connected to a Juniper Mist Access Point. paths: /api/v1/sites/{site_id}/clients/count: parameters: [] get: tags: - Sites Clients - Wireless summary: countSiteWirelessClients description: Count wireless clients for a site, optionally grouped by the `distinct` field and filtered by client attributes and time range. Use Count Org Wireless Clients to count wireless clients across the organization. operationId: countSiteWirelessClients parameters: - name: site_id in: path description: '' required: true schema: type: string contentEncoding: uuid examples: - 000000ab-00ab-00ab-00ab-0000000000ab - name: distinct in: query description: 'Field used to group this count response. enum: `ap`, `device`, `hostname`, `ip`, `model`, `os`, `ssid`, `vlan`' style: form explode: true schema: allOf: - $ref: '#/components/schemas/site_clients_count_distinct' - description: 'Field used to group this count response. enum: `ap`, `device`, `hostname`, `ip`, `model`, `os`, `ssid`, `vlan`' examples: - hostname - name: ssid in: query description: Filter results by SSID style: form explode: true schema: type: string - name: ap in: query description: Filter results by AP MAC address style: form explode: true schema: type: string - name: ip in: query description: Filter results by IPv4 address style: form explode: true schema: type: string contentEncoding: ipv4 examples: - 192.168.1.1 - name: vlan in: query description: Filter client results by VLAN ID style: form explode: true schema: type: string - name: hostname in: query description: Filter results by hostname style: form explode: true schema: type: string - name: os in: query description: Filter client results by operating system style: form explode: true schema: type: string - name: model in: query description: Filter results by device model style: form explode: true schema: type: string - name: device in: query description: Filter client results by device type style: form explode: true schema: type: string - name: start in: query description: Lower bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d` or `-1w` style: form explode: true schema: type: string - name: end in: query description: Upper bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d`, `-2h`, or `now` style: form explode: true schema: type: string - name: duration in: query description: Time range duration for the query, using relative units such as `10m`, `7d`, or `2w` style: form explode: true schema: type: string default: 1d examples: - 10m - name: limit in: query description: Maximum number of results to return per page style: form explode: true schema: minimum: 0 type: integer contentEncoding: int32 default: 100 responses: '200': description: Result of Count headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_count' - description: Distinct count response for time-bounded search results examples: - distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 contentMediaType: application/json examples: Example: value: distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_count' - description: Distinct count response for time-bounded search results examples: - distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 contentMediaType: application/vnd.api+json examples: Example: value: distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 '400': description: Bad Syntax headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/vnd.api+json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' '401': description: Unauthorized headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/json examples: Example: value: detail: Authentication credentials were not provided. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/vnd.api+json examples: Example: value: detail: Authentication credentials were not provided. '403': description: Permission Denied headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/json examples: Example: value: detail: You do not have permission to perform this action. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/vnd.api+json examples: Example: value: detail: You do not have permission to perform this action. '404': description: Not found. The API endpoint doesn’t exist or resource doesn’ t exist headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/json application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/vnd.api+json '429': description: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/vnd.api+json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold deprecated: false /api/v1/sites/{site_id}/clients/events/count: parameters: [] get: tags: - Sites Clients - Wireless summary: countSiteWirelessClientEvents description: Count wireless client events for a site, optionally grouped by the `distinct` field and filtered by event attributes and time range. Use Count Org Wireless Client Events to count wireless client events across the organization. operationId: countSiteWirelessClientEvents parameters: - name: site_id in: path description: '' required: true schema: type: string contentEncoding: uuid examples: - 000000ab-00ab-00ab-00ab-0000000000ab - name: distinct in: query description: 'Field used to group this count response. enum: `band`, `channel`, `proto`, `ssid`, `type`, `wlan_id`' style: form explode: true schema: allOf: - $ref: '#/components/schemas/site_client_events_count_distinct' - description: 'Field used to group this count response. enum: `band`, `channel`, `proto`, `ssid`, `type`, `wlan_id`' examples: - type - name: type in: query description: See [List Device Events Definitions]($e/Constants%20Events/listDeviceEventsDefinitions) style: form explode: true schema: type: string - name: reason_code in: query description: Reason code filter for association and disassociation events style: form explode: true schema: type: integer contentEncoding: int32 - name: ssid in: query description: Filter results by SSID style: form explode: true schema: type: string - name: ap in: query description: Filter results by AP MAC address style: form explode: true schema: type: string - name: proto in: query description: '802.11 protocol used to filter results. enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`' style: form explode: true schema: allOf: - $ref: '#/components/schemas/dot11_proto' - description: '802.11 protocol used to filter results. enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`' - name: band in: query description: '802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`' style: form explode: true schema: allOf: - $ref: '#/components/schemas/dot11_band' - description: '802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`' - name: wlan_id in: query description: Filter results by WLAN identifier style: form explode: true schema: type: string - name: start in: query description: Lower bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d` or `-1w` style: form explode: true schema: type: string - name: end in: query description: Upper bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d`, `-2h`, or `now` style: form explode: true schema: type: string - name: duration in: query description: Time range duration for the query, using relative units such as `10m`, `7d`, or `2w` style: form explode: true schema: type: string default: 1d examples: - 10m - name: limit in: query description: Maximum number of results to return per page style: form explode: true schema: minimum: 0 type: integer contentEncoding: int32 default: 100 responses: '200': description: Result of Count headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_count' - description: Distinct count response for time-bounded search results examples: - distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 contentMediaType: application/json examples: Example: value: distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_count' - description: Distinct count response for time-bounded search results examples: - distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 contentMediaType: application/vnd.api+json examples: Example: value: distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 '400': description: Bad Syntax headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/vnd.api+json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' '401': description: Unauthorized headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/json examples: Example: value: detail: Authentication credentials were not provided. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/vnd.api+json examples: Example: value: detail: Authentication credentials were not provided. '403': description: Permission Denied headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/json examples: Example: value: detail: You do not have permission to perform this action. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/vnd.api+json examples: Example: value: detail: You do not have permission to perform this action. '404': description: Not found. The API endpoint doesn’t exist or resource doesn’ t exist headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/json application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/vnd.api+json '429': description: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/vnd.api+json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold deprecated: false /api/v1/sites/{site_id}/clients/events/search: parameters: [] get: tags: - Sites Clients - Wireless summary: searchSiteWirelessClientEvents description: Search wireless client events for a site with filters for event type, AP, SSID, WLAN, radio band, and time range. Use Search Org Wireless Client Events to search wireless client events across the organization. operationId: searchSiteWirelessClientEvents parameters: - name: site_id in: path description: '' required: true schema: type: string contentEncoding: uuid examples: - 000000ab-00ab-00ab-00ab-0000000000ab - name: type in: query description: See [List Device Events Definitions]($e/Constants%20Events/listDeviceEventsDefinitions) style: form explode: true schema: type: string - name: reason_code in: query description: Reason code filter for association and disassociation events style: form explode: true schema: type: integer contentEncoding: int32 - name: ssid in: query description: Filter results by SSID style: form explode: true schema: type: string - name: ap in: query description: Filter results by AP MAC address style: form explode: true schema: type: string - name: proto in: query description: '802.11 protocol used to filter results. enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`' style: form explode: true schema: allOf: - $ref: '#/components/schemas/dot11_proto' - description: '802.11 protocol used to filter results. enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`' - name: band in: query description: '802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`' style: form explode: true schema: allOf: - $ref: '#/components/schemas/dot11_band' - description: '802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`' - name: wlan_id in: query description: Filter results by WLAN identifier style: form explode: true schema: type: string - name: nacrule_id in: query description: Filter results by NAC rule identifier style: form explode: true schema: type: string - name: limit in: query description: Maximum number of results to return per page style: form explode: true schema: minimum: 0 type: integer contentEncoding: int32 default: 100 - name: start in: query description: Lower bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d` or `-1w` style: form explode: true schema: type: string - name: end in: query description: Upper bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d`, `-2h`, or `now` style: form explode: true schema: type: string - name: duration in: query description: Time range duration for the query, using relative units such as `10m`, `7d`, or `2w` style: form explode: true schema: type: string default: 1d examples: - 10m - name: sort in: query description: On which field the list should be sorted, -prefix represents DESC order style: form explode: true schema: type: string default: timestamp examples: - -site_id - name: search_after in: query description: Pagination cursor for retrieving subsequent pages of results. This value is automatically populated by Mist in the `next` URL from the previous response and should not be manually constructed. style: form explode: true schema: type: string responses: '200': description: OK headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_events_search' - description: Paginated response for wireless client event search results examples: - end: 0 limit: 0 results: - ap: string band: '24' bssid: string channel: 0 proto: a ssid: string text: string timestamp: 0 type: string type_code: 0 wlan_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1 start: 0 total: 0 contentMediaType: application/json examples: Example: value: end: 0 limit: 0 results: - ap: string band: '24' bssid: string channel: 0 proto: a ssid: string text: string timestamp: 0 type: string type_code: 0 wlan_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1 start: 0 total: 0 application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_events_search' - description: Paginated response for wireless client event search results examples: - end: 0 limit: 0 results: - ap: string band: '24' bssid: string channel: 0 proto: a ssid: string text: string timestamp: 0 type: string type_code: 0 wlan_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1 start: 0 total: 0 contentMediaType: application/vnd.api+json examples: Example: value: end: 0 limit: 0 results: - ap: string band: '24' bssid: string channel: 0 proto: a ssid: string text: string timestamp: 0 type: string type_code: 0 wlan_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1 start: 0 total: 0 '400': description: Bad Syntax headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/vnd.api+json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' '401': description: Unauthorized headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/json examples: Example: value: detail: Authentication credentials were not provided. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/vnd.api+json examples: Example: value: detail: Authentication credentials were not provided. '403': description: Permission Denied headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/json examples: Example: value: detail: You do not have permission to perform this action. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/vnd.api+json examples: Example: value: detail: You do not have permission to perform this action. '404': description: Not found. The API endpoint doesn’t exist or resource doesn’ t exist headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/json application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/vnd.api+json '429': description: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/vnd.api+json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold deprecated: false /api/v1/sites/{site_id}/clients/search: parameters: [] get: tags: - Sites Clients - Wireless summary: searchSiteWirelessClients description: Search wireless clients connected to a site with filters for client identity, AP, SSID, VLAN, radio band, and time range. Fuzzy matching with `*` is supported on `mac`, `hostname`, `device`, `os`, and `model`, for example `/clients/search?device=Mac*&hostname=jerry`. Use Search Org Wireless Clients to search wireless clients across the organization. operationId: searchSiteWirelessClients parameters: - name: site_id in: path description: '' required: true schema: type: string contentEncoding: uuid examples: - 000000ab-00ab-00ab-00ab-0000000000ab - name: ap in: query description: Filter results by AP MAC address style: form explode: true schema: type: string examples: - 5c5b53010101 - name: band in: query description: 'Comma separated list of Radio band (e.g. `24,5`). enum: `24`, `5`, `6`' style: form explode: true schema: type: string examples: - '5' - name: device in: query description: Comma separated list of Device type (e.g. `Mac,iPhone`). Case sensitive style: form explode: true schema: type: string examples: - iPhone - name: hostname in: query description: Partial / full Client hostname. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `everest*` and `*rest*` match `my-everest-client`). Suffix-only wildcards (e.g. `*everest`) are not supported style: form explode: true schema: type: string examples: - my-everest-client - my-everest* - '*everest*' examples: Untitled Example1: value: my-everest-client Untitled Example2: value: my-everest* Untitled Example3: value: '*everest*' - name: ip in: query description: Partial / full Client IP address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `10.100.10.*` and `*100.10.*` match `10.100.10.54`). Suffix-only wildcards (e.g. `*.54`) are not supported style: form explode: true schema: type: string examples: - 10.100.10.54 - 10.100.10.* - '*100.10.*' examples: Untitled Example1: value: 10.100.10.54 Untitled Example2: value: 10.100.10.* Untitled Example3: value: '*100.10.*' - name: mac in: query description: Partial / full Client MAC address. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `aabbcc*` and `*bbcc*` match `aabbccddeeff`). Suffix-only wildcards (e.g. `*bccddeeff`) are not supported style: form explode: true schema: type: string examples: - aabbccddeeff - aabbcc* - '*bbcc*' examples: Untitled Example1: value: aabbccddeeff Untitled Example2: value: aabbcc* Untitled Example3: value: '*bbcc*' - name: model in: query description: Only available for clients running the Marvis Client app, model, e.g. "MBP 15 late 2013", 6, 6s, "8+ GSM" style: form explode: true schema: type: string examples: - iPhone 8 - name: os in: query description: Only available for clients running the Marvis Client app, os, e.g. Sierra, Yosemite, Windows 10 style: form explode: true schema: type: string examples: - Windows 10 - name: psk_id in: query description: PSK identifier used to filter the results style: form explode: true schema: type: string examples: - 000000ab-00ab-00ab-00ab-0000000000ab - name: psk_name in: query description: Only available for clients using PPSK authentication, the Name of the PSK style: form explode: true schema: type: string examples: - MyPPSK - name: ssid in: query description: Filter results by SSID style: form explode: true schema: type: string examples: - MySSID - name: text in: query description: Partial / full MAC address, hostname, username, psk_name or ip. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `everest*` and `*rest*` match `my-everest-client`). Suffix-only wildcards (e.g. `*client`) are not supported style: form explode: true schema: type: string examples: - 5c5b530 - name: username in: query description: Partial / full username. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `johndoe*` and `*mycorp*` match `johndoe@mycorp.com`). Suffix-only wildcards (e.g. `*mycorp.com`) are not supported style: form explode: true schema: type: string examples: - johndoe - johnd* - '*ohnd*' examples: Untitled Example1: value: johndoe Untitled Example2: value: johnd* Untitled Example3: value: '*ohnd*' - name: vlan in: query description: Filter results by VLAN ID style: form explode: true schema: type: string examples: - '10' - name: limit in: query description: Maximum number of results to return per page style: form explode: true schema: minimum: 0 type: integer contentEncoding: int32 default: 100 - name: start in: query description: Lower bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d` or `-1w` style: form explode: true schema: type: string - name: end in: query description: Upper bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d`, `-2h`, or `now` style: form explode: true schema: type: string - name: duration in: query description: Time range duration for the query, using relative units such as `10m`, `7d`, or `2w` style: form explode: true schema: type: string default: 1d examples: - 10m - name: sort in: query description: On which field the list should be sorted, -prefix represents DESC order style: form explode: true schema: type: string default: timestamp examples: - -site_id - name: search_after in: query description: Pagination cursor for retrieving subsequent pages of results. This value is automatically populated by Mist in the `next` URL from the previous response and should not be manually constructed. style: form explode: true schema: type: string responses: '200': description: OK headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_client_search' - description: Paginated wireless client search response examples: - end: 17141231418.812 limit: 118 next: next8 results: - ap: - a83a79a947ee - 003e73170b4c app_version: - 0.100.3 band: '5' device: - Mac ftc: false hardware: Apple Wi-Fi adapter hostname: - hostname-a - hostname-b ip: - 10.5.23.43 - 192.168.0.2 last_ap: a83a79a947ee last_device: Mac last_firmware: 'wl0: Jan 20 2024 04:08:41 version 20.103.12.0.8.7.171 FWID 01-e09d2675' last_hostname: hostname-a last_ip: 10.5.23.43 last_model: MBP 16\" M1 2021 last_os: Sonoma last_os_version: 14.4.1 (Build 23E224) last_psk_id: abf7dc5c-bb51-4bb7-93b6-5547400ffe11 last_psk_name: iot last_ssid: IoT SSID last_username: user@corp.com last_vlan: 10 last_wlan_id: e5d67b07-aae8-494b-8584-cbc20c8110aa mac: bcd074000000 mfg: Apple model: MBP 16\" M1 2021 org_id: 1abff1aa-4571-4c1f-a409-153a1e7a7a24 os: - Sonoma os_version: - 14.4.1 (Build 23E224) protocol: ax psk_id: - abf7dc5c-bb51-4bb7-93b6-5547400ffe11 psk_name: - iot sdk_version: - 0.100.3 site_id: 25ff5219-9be7-4db9-907d-0c9b60445147 site_ids: - 25ff5219-9be7-4db9-907d-0c9b60445147 ssid: - IoT SSID timestamp: 1714124722.113 username: - user@corp.com vlan: - 10 start: 10 total: 44 contentMediaType: application/json examples: Example: value: end: 17141231418.812 limit: 118 next: next8 results: - ap: - a83a79a947ee - 003e73170b4c app_version: - 0.100.3 band: '5' device: - Mac ftc: false hardware: Apple Wi-Fi adapter hostname: - hostname-a - hostname-b ip: - 10.5.23.43 - 192.168.0.2 last_ap: a83a79a947ee last_device: Mac last_firmware: 'wl0: Jan 20 2024 04:08:41 version 20.103.12.0.8.7.171 FWID 01-e09d2675' last_hostname: hostname-a last_ip: 10.5.23.43 last_model: MBP 16\" M1 2021 last_os: Sonoma last_os_version: 14.4.1 (Build 23E224) last_psk_id: abf7dc5c-bb51-4bb7-93b6-5547400ffe11 last_psk_name: iot last_ssid: IoT SSID last_username: user@corp.com last_vlan: 10 last_wlan_id: e5d67b07-aae8-494b-8584-cbc20c8110aa mac: bcd074000000 mfg: Apple model: MBP 16\" M1 2021 org_id: 1abff1aa-4571-4c1f-a409-153a1e7a7a24 os: - Sonoma os_version: - 14.4.1 (Build 23E224) protocol: ax psk_id: - abf7dc5c-bb51-4bb7-93b6-5547400ffe11 psk_name: - iot sdk_version: - 0.100.3 site_id: 25ff5219-9be7-4db9-907d-0c9b60445147 site_ids: - 25ff5219-9be7-4db9-907d-0c9b60445147 ssid: - IoT SSID timestamp: 1714124722.113 username: - user@corp.com vlan: - 10 start: 10 total: 44 application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_client_search' - description: Paginated wireless client search response examples: - end: 17141231418.812 limit: 118 next: next8 results: - ap: - a83a79a947ee - 003e73170b4c app_version: - 0.100.3 band: '5' device: - Mac ftc: false hardware: Apple Wi-Fi adapter hostname: - hostname-a - hostname-b ip: - 10.5.23.43 - 192.168.0.2 last_ap: a83a79a947ee last_device: Mac last_firmware: 'wl0: Jan 20 2024 04:08:41 version 20.103.12.0.8.7.171 FWID 01-e09d2675' last_hostname: hostname-a last_ip: 10.5.23.43 last_model: MBP 16\" M1 2021 last_os: Sonoma last_os_version: 14.4.1 (Build 23E224) last_psk_id: abf7dc5c-bb51-4bb7-93b6-5547400ffe11 last_psk_name: iot last_ssid: IoT SSID last_username: user@corp.com last_vlan: 10 last_wlan_id: e5d67b07-aae8-494b-8584-cbc20c8110aa mac: bcd074000000 mfg: Apple model: MBP 16\" M1 2021 org_id: 1abff1aa-4571-4c1f-a409-153a1e7a7a24 os: - Sonoma os_version: - 14.4.1 (Build 23E224) protocol: ax psk_id: - abf7dc5c-bb51-4bb7-93b6-5547400ffe11 psk_name: - iot sdk_version: - 0.100.3 site_id: 25ff5219-9be7-4db9-907d-0c9b60445147 site_ids: - 25ff5219-9be7-4db9-907d-0c9b60445147 ssid: - IoT SSID timestamp: 1714124722.113 username: - user@corp.com vlan: - 10 start: 10 total: 44 contentMediaType: application/vnd.api+json examples: Example: value: end: 17141231418.812 limit: 118 next: next8 results: - ap: - a83a79a947ee - 003e73170b4c app_version: - 0.100.3 band: '5' device: - Mac ftc: false hardware: Apple Wi-Fi adapter hostname: - hostname-a - hostname-b ip: - 10.5.23.43 - 192.168.0.2 last_ap: a83a79a947ee last_device: Mac last_firmware: 'wl0: Jan 20 2024 04:08:41 version 20.103.12.0.8.7.171 FWID 01-e09d2675' last_hostname: hostname-a last_ip: 10.5.23.43 last_model: MBP 16\" M1 2021 last_os: Sonoma last_os_version: 14.4.1 (Build 23E224) last_psk_id: abf7dc5c-bb51-4bb7-93b6-5547400ffe11 last_psk_name: iot last_ssid: IoT SSID last_username: user@corp.com last_vlan: 10 last_wlan_id: e5d67b07-aae8-494b-8584-cbc20c8110aa mac: bcd074000000 mfg: Apple model: MBP 16\" M1 2021 org_id: 1abff1aa-4571-4c1f-a409-153a1e7a7a24 os: - Sonoma os_version: - 14.4.1 (Build 23E224) protocol: ax psk_id: - abf7dc5c-bb51-4bb7-93b6-5547400ffe11 psk_name: - iot sdk_version: - 0.100.3 site_id: 25ff5219-9be7-4db9-907d-0c9b60445147 site_ids: - 25ff5219-9be7-4db9-907d-0c9b60445147 ssid: - IoT SSID timestamp: 1714124722.113 username: - user@corp.com vlan: - 10 start: 10 total: 44 '400': description: Bad Syntax headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/vnd.api+json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' '401': description: Unauthorized headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/json examples: Example: value: detail: Authentication credentials were not provided. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/vnd.api+json examples: Example: value: detail: Authentication credentials were not provided. '403': description: Permission Denied headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/json examples: Example: value: detail: You do not have permission to perform this action. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/vnd.api+json examples: Example: value: detail: You do not have permission to perform this action. '404': description: Not found. The API endpoint doesn’t exist or resource doesn’ t exist headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/json application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/vnd.api+json '429': description: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/vnd.api+json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold deprecated: false /api/v1/sites/{site_id}/clients/sessions/count: parameters: [] get: tags: - Sites Clients - Wireless summary: countSiteWirelessClientSessions description: Count wireless client sessions for a site, optionally grouped by the `distinct` field and filtered by AP, SSID, WLAN, client attributes, and time range. Use Count Org Wireless Client Sessions to count wireless client sessions across the organization. operationId: countSiteWirelessClientSessions parameters: - name: site_id in: path description: '' required: true schema: type: string contentEncoding: uuid examples: - 000000ab-00ab-00ab-00ab-0000000000ab - name: distinct in: query description: 'Field used to group this count response. enum: `ap`, `client_family`, `client_manufacture`, `client_model`, `client_os`, `mac`, `ssid`, `wlan_id`' style: form explode: true schema: allOf: - $ref: '#/components/schemas/site_client_sessions_count_distinct' - description: 'Field used to group this count response. enum: `ap`, `client_family`, `client_manufacture`, `client_model`, `client_os`, `mac`, `ssid`, `wlan_id`' - name: ap in: query description: Filter results by AP MAC address style: form explode: true schema: type: string - name: band in: query description: '802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`' style: form explode: true schema: allOf: - $ref: '#/components/schemas/dot11_band' - description: '802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`' - name: client_family in: query description: E.g. "Mac", "iPhone", "Apple watch" style: form explode: true schema: type: string - name: client_manufacture in: query description: Filter results by client manufacturer, e.g. "Apple" style: form explode: true schema: type: string - name: client_model in: query description: Filter results by client model, e.g. "8+", "XS" style: form explode: true schema: type: string - name: client_os in: query description: E.g. "Mojave", "Windows 10", "Linux" style: form explode: true schema: type: string - name: ssid in: query description: Filter results by SSID style: form explode: true schema: type: string - name: wlan_id in: query description: Filter results by WLAN identifier style: form explode: true schema: type: string - name: start in: query description: Lower bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d` or `-1w` style: form explode: true schema: type: string - name: end in: query description: Upper bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d`, `-2h`, or `now` style: form explode: true schema: type: string - name: duration in: query description: Time range duration for the query, using relative units such as `10m`, `7d`, or `2w` style: form explode: true schema: type: string default: 1d examples: - 10m - name: limit in: query description: Maximum number of results to return per page style: form explode: true schema: minimum: 0 type: integer contentEncoding: int32 default: 100 responses: '200': description: Result of Count headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_count' - description: Distinct count response for time-bounded search results examples: - distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 contentMediaType: application/json examples: Example: value: distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_count' - description: Distinct count response for time-bounded search results examples: - distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 contentMediaType: application/vnd.api+json examples: Example: value: distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 '400': description: Bad Syntax headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/vnd.api+json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' '401': description: Unauthorized headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/json examples: Example: value: detail: Authentication credentials were not provided. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/vnd.api+json examples: Example: value: detail: Authentication credentials were not provided. '403': description: Permission Denied headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/json examples: Example: value: detail: You do not have permission to perform this action. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/vnd.api+json examples: Example: value: detail: You do not have permission to perform this action. '404': description: Not found. The API endpoint doesn’t exist or resource doesn’ t exist headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/json application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/vnd.api+json '429': description: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/vnd.api+json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold deprecated: false /api/v1/sites/{site_id}/clients/sessions/search: parameters: [] get: tags: - Sites Clients - Wireless summary: searchSiteWirelessClientSessions description: Search wireless client sessions for a site with filters for AP, SSID, WLAN, client attributes, PSK, and time range. Use Search Org Wireless Client Sessions to search wireless client sessions across the organization. operationId: searchSiteWirelessClientSessions parameters: - name: site_id in: path description: '' required: true schema: type: string contentEncoding: uuid examples: - 000000ab-00ab-00ab-00ab-0000000000ab - name: ap in: query description: Filter results by AP MAC address style: form explode: true schema: type: string - name: band in: query description: '802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`' style: form explode: true schema: allOf: - $ref: '#/components/schemas/dot11_band' - description: '802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`' - name: client_family in: query description: E.g. "Mac", "iPhone", "Apple watch" style: form explode: true schema: type: string - name: client_manufacture in: query description: Filter results by client manufacturer, e.g. "Apple" style: form explode: true schema: type: string - name: client_model in: query description: Filter results by client model, e.g. "8+", "XS" style: form explode: true schema: type: string - name: client_username in: query description: Filter results by client username style: form explode: true schema: type: string - name: client_os in: query description: E.g. "Mojave", "Windows 10", "Linux" style: form explode: true schema: type: string - name: ssid in: query description: Filter results by SSID style: form explode: true schema: type: string - name: wlan_id in: query description: Filter results by WLAN identifier style: form explode: true schema: type: string - name: psk_id in: query description: PSK identifier used to filter the results style: form explode: true schema: type: string examples: - 000000ab-00ab-00ab-00ab-0000000000ab - name: psk_name in: query description: Filter results by PSK name style: form explode: true schema: type: string - name: limit in: query description: Maximum number of results to return per page style: form explode: true schema: minimum: 0 type: integer contentEncoding: int32 default: 100 - name: start in: query description: Lower bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d` or `-1w` style: form explode: true schema: type: string - name: end in: query description: Upper bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d`, `-2h`, or `now` style: form explode: true schema: type: string - name: duration in: query description: Time range duration for the query, using relative units such as `10m`, `7d`, or `2w` style: form explode: true schema: type: string default: 1d examples: - 10m - name: sort in: query description: On which field the list should be sorted, -prefix represents DESC order style: form explode: true schema: type: string default: timestamp examples: - -site_id - name: search_after in: query description: Pagination cursor for retrieving subsequent pages of results. This value is automatically populated by Mist in the `next` URL from the previous response and should not be manually constructed. style: form explode: true schema: type: string responses: '200': description: OK headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_client_sessions_search' - description: Paginated wireless client session search response examples: - end: 1513177200 limit: 10 results: - ap: 5c5b350e0262 band: '5' client_manufacture: Apple connect: 1565208388 disconnect: 1565208448 duration: 60.09423865 mac: b019c66c8348 org_id: 3139f2c2-fac6-11e5-8156-0242ac110006 site_id: 70e0f468-fc13-11e5-85ad-0242ac110008 ssid: Dummy WLAN 2 tags: - disassociate timestamp: 1565208448.662 wlan_id: 99bb4c74-f954-4f36-b844-6b030faffabc start: 1511967600 total: 100 contentMediaType: application/json examples: Example: value: end: 1513177200 limit: 10 results: - ap: 5c5b350e0262 band: '5' client_manufacture: Apple connect: 1565208388 disconnect: 1565208448 duration: 60.09423865 mac: b019c66c8348 org_id: 3139f2c2-fac6-11e5-8156-0242ac110006 site_id: 70e0f468-fc13-11e5-85ad-0242ac110008 ssid: Dummy WLAN 2 tags: - disassociate timestamp: 1565208448.662 wlan_id: 99bb4c74-f954-4f36-b844-6b030faffabc start: 1511967600 total: 100 application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_client_sessions_search' - description: Paginated wireless client session search response examples: - end: 1513177200 limit: 10 results: - ap: 5c5b350e0262 band: '5' client_manufacture: Apple connect: 1565208388 disconnect: 1565208448 duration: 60.09423865 mac: b019c66c8348 org_id: 3139f2c2-fac6-11e5-8156-0242ac110006 site_id: 70e0f468-fc13-11e5-85ad-0242ac110008 ssid: Dummy WLAN 2 tags: - disassociate timestamp: 1565208448.662 wlan_id: 99bb4c74-f954-4f36-b844-6b030faffabc start: 1511967600 total: 100 contentMediaType: application/vnd.api+json examples: Example: value: end: 1513177200 limit: 10 results: - ap: 5c5b350e0262 band: '5' client_manufacture: Apple connect: 1565208388 disconnect: 1565208448 duration: 60.09423865 mac: b019c66c8348 org_id: 3139f2c2-fac6-11e5-8156-0242ac110006 site_id: 70e0f468-fc13-11e5-85ad-0242ac110008 ssid: Dummy WLAN 2 tags: - disassociate timestamp: 1565208448.662 wlan_id: 99bb4c74-f954-4f36-b844-6b030faffabc start: 1511967600 total: 100 '400': description: Bad Syntax headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/vnd.api+json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' '401': description: Unauthorized headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/json examples: Example: value: detail: Authentication credentials were not provided. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/vnd.api+json examples: Example: value: detail: Authentication credentials were not provided. '403': description: Permission Denied headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/json examples: Example: value: detail: You do not have permission to perform this action. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/vnd.api+json examples: Example: value: detail: You do not have permission to perform this action. '404': description: Not found. The API endpoint doesn’t exist or resource doesn’ t exist headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/json application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/vnd.api+json '429': description: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/vnd.api+json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold deprecated: false /api/v1/sites/{site_id}/clients/{client_mac}/events: parameters: [] get: tags: - Sites Clients - Wireless summary: getSiteEventsForClient description: Get the list of events for a specific client operationId: getSiteEventsForClient parameters: - name: site_id in: path description: '' required: true schema: type: string contentEncoding: uuid examples: - 000000ab-00ab-00ab-00ab-0000000000ab - name: client_mac in: path description: '' required: true schema: pattern: ^[0-9a-fA-F]{12}$ type: string examples: - 0000000000ab - name: type in: query description: Filter results by type, e.g. MARVIS_EVENT_CLIENT_DHCP_STUCK style: form explode: true schema: type: string - name: proto in: query description: '802.11 protocol used to filter results. enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`' style: form explode: true schema: allOf: - $ref: '#/components/schemas/dot11_proto' - description: '802.11 protocol used to filter results. enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`' - name: band in: query description: '802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`' style: form explode: true schema: allOf: - $ref: '#/components/schemas/dot11_band' - description: '802.11 band used to filter radio results. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`' - name: channel in: query description: Filter available versions by release channel style: form explode: true schema: type: string - name: wlan_id in: query description: Filter results by WLAN identifier style: form explode: true schema: type: string - name: ssid in: query description: Filter results by SSID style: form explode: true schema: type: string - name: start in: query description: Lower bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d` or `-1w` style: form explode: true schema: type: string - name: end in: query description: Upper bound of the time range, as an epoch timestamp in seconds or a relative value such as `-1d`, `-2h`, or `now` style: form explode: true schema: type: string - name: duration in: query description: Time range duration for the query, using relative units such as `10m`, `7d`, or `2w` style: form explode: true schema: type: string default: 1d examples: - 10m - name: limit in: query description: Maximum number of results to return per page style: form explode: true schema: minimum: 0 type: integer contentEncoding: int32 default: 100 - name: page in: query description: Select the page number to return when using page-based pagination; starts at `1` style: form explode: true schema: minimum: 1 type: integer contentEncoding: int32 default: 1 responses: '200': description: OK headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_client_events_search' - description: Paginated client event search response examples: - end: 1513176951 limit: 10 results: - ap: 5c5b350eb31b band: '5' bssid: 5c5b350918f1 channel: 149 proto: ac ssid: Guest text: Status code 0 "Successful" timestamp: 1513358874.667 type: CLIENT_DNS_OK type_code: 15 wlan_id: be22bba7-8e22-e1cf-5185-b880816fe2cf start: 1512572151 total: 1 contentMediaType: application/json examples: Example: value: end: 1513176951 limit: 10 results: - ap: 5c5b350eb31b band: '5' bssid: 5c5b350918f1 channel: 149 proto: ac ssid: Guest text: Status code 0 "Successful" timestamp: 1513358874.667 type: CLIENT_DNS_OK type_code: 15 wlan_id: be22bba7-8e22-e1cf-5185-b880816fe2cf start: 1512572151 total: 1 application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_client_events_search' - description: Paginated client event search response examples: - end: 1513176951 limit: 10 results: - ap: 5c5b350eb31b band: '5' bssid: 5c5b350918f1 channel: 149 proto: ac ssid: Guest text: Status code 0 "Successful" timestamp: 1513358874.667 type: CLIENT_DNS_OK type_code: 15 wlan_id: be22bba7-8e22-e1cf-5185-b880816fe2cf start: 1512572151 total: 1 contentMediaType: application/vnd.api+json examples: Example: value: end: 1513176951 limit: 10 results: - ap: 5c5b350eb31b band: '5' bssid: 5c5b350918f1 channel: 149 proto: ac ssid: Guest text: Status code 0 "Successful" timestamp: 1513358874.667 type: CLIENT_DNS_OK type_code: 15 wlan_id: be22bba7-8e22-e1cf-5185-b880816fe2cf start: 1512572151 total: 1 '400': description: Bad Syntax headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http400' - description: Standard HTTP 400 bad request error response examples: - detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' contentMediaType: application/vnd.api+json examples: Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' '401': description: Unauthorized headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/json examples: Example: value: detail: Authentication credentials were not provided. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http401' - description: Standard HTTP 401 authentication error response examples: - detail: Authentication credentials were not provided. contentMediaType: application/vnd.api+json examples: Example: value: detail: Authentication credentials were not provided. '403': description: Permission Denied headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/json examples: Example: value: detail: You do not have permission to perform this action. application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http403' - description: Standard HTTP 403 permission error response examples: - detail: You do not have permission to perform this action. contentMediaType: application/vnd.api+json examples: Example: value: detail: You do not have permission to perform this action. '404': description: Not found. The API endpoint doesn’t exist or resource doesn’ t exist headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/json application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http404' - description: Standard HTTP 404 not found error response contentMediaType: application/vnd.api+json '429': description: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold headers: {} content: application/json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold application/vnd.api+json: schema: allOf: - $ref: '#/components/schemas/response_http429' - description: Standard HTTP 429 rate limit error response examples: - detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold contentMediaType: application/vnd.api+json examples: Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold deprecated: false components: schemas: response_http403: title: response_http403 type: object properties: detail: type: string description: Human-readable explanation of the permission error examples: - You do not have permission to perform this action. description: Standard HTTP 403 permission error response response_events_search: title: response_events_search required: - end - limit - results - start - total type: object properties: end: type: integer description: Epoch timestamp for the end of the wireless client event search window contentEncoding: int32 limit: type: integer description: Maximum number of wireless client event records returned in this page contentEncoding: int32 next: type: string description: Pagination cursor or URL for retrieving the next page of wireless client event records results: uniqueItems: true type: array items: $ref: '#/components/schemas/events_client' description: Wireless client event records matching the search filters start: type: integer description: Epoch timestamp for the start of the wireless client event search window contentEncoding: int32 total: type: integer description: Number of wireless client event records matching the search filters across all pages contentEncoding: int32 description: Paginated response for wireless client event search results site_client_events_count_distinct: title: site_client_events_count_distinct enum: - band - channel - proto - ssid - type - wlan_id type: string description: 'enum: `band`, `channel`, `proto`, `ssid`, `type`, `wlan_id`' response_http400: title: response_http400 type: object properties: detail: type: string description: Human-readable explanation of the bad request error examples: - 'JSON parse error - Expecting value: line 5 column 8 (char 56)' description: Standard HTTP 400 bad request error response dot11_band: title: dot11_band enum: - '24' - '5' - 5-dedicated - 5-selectable - '6' - 6-dedicated - 6-selectable type: string description: 'enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`' response_http401: title: response_http401 type: object properties: detail: type: string description: Human-readable explanation of the authentication error examples: - Authentication credentials were not provided. description: Standard HTTP 401 authentication error response response_client_sessions_search: title: response_client_sessions_search required: - end - limit - results - start - total type: object properties: end: type: integer description: Search window end timestamp for wireless client sessions, in epoch seconds contentEncoding: int32 limit: type: integer description: Maximum number of wireless client session results requested contentEncoding: int32 next: type: string description: URL for the next page of wireless client session results results: type: array items: $ref: '#/components/schemas/response_client_sessions_search_item' description: Wireless client session records returned for this page start: type: integer description: Search window start timestamp for wireless client sessions, in epoch seconds contentEncoding: int32 total: type: integer description: Number of wireless client session records matching the search contentEncoding: int32 description: Paginated wireless client session search response client_key_mgmt1: title: client_key_mgmt1 enum: - WPA2-PSK - WPA2-PSK/CCMP - WPA2-PSK-FT - WPA2-PSK-SHA256 - WPA3-EAP-SHA256 - WPA3-EAP-SHA256/CCMP - WPA3-EAP-FT/GCMP256 - WPA3-SAE-FT - WPA3-SAE-PSK type: string description: 'Key management protocol used by the client session. enum: `WPA2-PSK`, `WPA2-PSK/CCMP`, `WPA2-PSK-FT`, `WPA2-PSK-SHA256`, `WPA3-EAP-SHA256`, `WPA3-EAP-SHA256/CCMP`, `WPA3-EAP-FT/GCMP256`, `WPA3-SAE-FT`, `WPA3-SAE-PSK`.' examples: - WPA2-PSK response_client_events_search: title: response_client_events_search required: - end - limit - results - start - total type: object properties: end: type: integer description: Search window end timestamp for client events, in epoch seconds contentEncoding: int32 limit: type: integer description: Maximum number of client event results requested contentEncoding: int32 next: type: string description: URL for the next page of client event results results: uniqueItems: true type: array items: $ref: '#/components/schemas/events_client' description: Client event records returned for this page start: type: integer description: Search window start timestamp for client events, in epoch seconds contentEncoding: int32 total: type: integer description: Number of client event records matching the search contentEncoding: int32 description: Paginated client event search response dot11_band1: title: dot11_band1 enum: - '24' - '5' - 5-dedicated - 5-selectable - '6' - 6-dedicated - 6-selectable type: string description: 'Radio band used for the wireless client event. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`.' response_client_sessions_search_item: title: response_client_sessions_search_item required: - ap - band - client_manufacture - connect - disconnect - duration - mac - org_id - site_id - ssid - timestamp - wlan_id type: object properties: ap: type: string description: Access point MAC address associated with the client session readOnly: true band: type: string description: Radio band used by the client session readOnly: true client_manufacture: type: string description: Manufacturer reported for the client device readOnly: true connect: type: number description: Epoch timestamp when the client session connected readOnly: true disconnect: type: number description: Epoch timestamp when the client session disconnected readOnly: true duration: type: number description: Length of the client session, in seconds readOnly: true mac: type: string description: Client MAC address for the session readOnly: true org_id: type: string description: Organization associated with the client session contentEncoding: uuid readOnly: true examples: - a97c1b22-a4e9-411e-9bfd-d8695a0f9e61 site_id: type: string description: Site associated with the client session contentEncoding: uuid readOnly: true examples: - 441a1214-6928-442a-8e92-e1d34b8ec6a6 ssid: type: string description: WLAN SSID used by the client session readOnly: true tags: type: array items: type: string description: Event or classification tags attached to the client session readOnly: true timestamp: type: number description: Epoch timestamp when the client session record was observed readOnly: true wlan_id: type: string description: WLAN identifier associated with the client session contentEncoding: uuid description: Wireless client session record response_client_search: title: response_client_search required: - end - limit - results - start - total type: object properties: end: type: number description: Search window end timestamp for wireless clients, in epoch seconds limit: type: integer description: Maximum number of wireless client results requested contentEncoding: int32 next: type: string description: URL for the next page of wireless client results results: uniqueItems: true type: array items: $ref: '#/components/schemas/client_wireless' description: Wireless client records returned for this page start: type: number description: Search window start timestamp for wireless clients, in epoch seconds total: type: integer description: Number of wireless client records matching the search contentEncoding: int32 description: Paginated wireless client search response dot11_proto1: title: dot11_proto1 enum: - a - ac - ax - b - be - g - n type: string description: '802.11 protocol used by the client session. enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`.' site_client_sessions_count_distinct: title: site_client_sessions_count_distinct enum: - ap - client_family - client_manufacture - client_model - client_os - mac - ssid - wlan_id type: string description: 'enum: `ap`, `client_family`, `client_manufacture`, `client_model`, `client_os`, `mac`, `ssid`, `wlan_id`' count_result: title: count_result required: - count type: object properties: count: type: integer description: Number of matching items for the distinct value or values in this result contentEncoding: int32 additionalProperties: type: string description: Count result row with the matching distinct field values site_clients_count_distinct: title: site_clients_count_distinct enum: - ap - device - hostname - ip - model - os - ssid - vlan type: string description: 'enum: `ap`, `device`, `hostname`, `ip`, `model`, `os`, `ssid`, `vlan`' events_client: title: events_client required: - band - timestamp type: object properties: ap: type: string description: Access point MAC address associated with the wireless client event band: allOf: - $ref: '#/components/schemas/dot11_band1' - description: 'Radio band used for the wireless client event. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`.' bssid: type: string description: Wireless BSSID involved in the client event channel: type: integer description: Radio channel used for the wireless client event contentEncoding: int32 key_mgmt: allOf: - $ref: '#/components/schemas/client_key_mgmt1' - description: 'Key management protocol used by the client session. enum: `WPA2-PSK`, `WPA2-PSK/CCMP`, `WPA2-PSK-FT`, `WPA2-PSK-SHA256`, `WPA3-EAP-SHA256`, `WPA3-EAP-SHA256/CCMP`, `WPA3-EAP-FT/GCMP256`, `WPA3-SAE-FT`, `WPA3-SAE-PSK`.' examples: - WPA2-PSK proto: allOf: - $ref: '#/components/schemas/dot11_proto1' - description: '802.11 protocol used by the client session. enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`.' ssid: type: string description: Wireless network SSID involved in the client event text: type: string description: Human-readable message for the client event timestamp: type: number description: Time when the client event occurred readOnly: true type: type: string description: Event type, e.g. MARVIS_EVENT_CLIENT_FBT_FAILURE type_code: type: integer description: Reason code for association or disassociation client events contentEncoding: int32 wlan_id: type: string description: Wireless LAN identifier associated with the client event contentEncoding: uuid description: Wireless client event returned by client event search APIs dot11_proto: title: dot11_proto enum: - a - ac - ax - b - be - g - n type: string description: 'enum: `a`, `ac`, `ax`, `b`, `be`, `g`, `n`' response_http404: title: response_http404 type: object properties: id: type: string description: Missing resource identifier, when the API includes one description: Standard HTTP 404 not found error response response_count: title: response_count required: - distinct - end - limit - results - start - total type: object properties: distinct: type: string description: Field used to group the count results end: type: integer description: Search window end timestamp for the count request, in epoch seconds contentEncoding: int32 limit: type: integer description: Maximum number of distinct count results requested contentEncoding: int32 results: uniqueItems: true type: array items: $ref: '#/components/schemas/count_result' description: Count results grouped by the distinct field start: type: integer description: Search window start timestamp for the count request, in epoch seconds contentEncoding: int32 total: type: integer description: Number of distinct result buckets returned contentEncoding: int32 description: Distinct count response for time-bounded search results response_http429: title: response_http429 type: object properties: detail: type: string description: Human-readable explanation of the rate limit error examples: - Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold description: Standard HTTP 429 rate limit error response client_wireless: title: client_wireless type: object properties: ap: type: array items: type: string description: Observed AP MAC addresses for the wireless client during the query duration examples: - - a83a79a947ee - 003e73170b4c app_version: type: array items: type: string description: Marvis Client application versions reported by the wireless client during the query duration examples: - - 0.100.3 band: type: string description: Wi-Fi radio band used by the wireless client examples: - '5' device: type: array items: type: string description: Detected device types for the wireless client during the query duration examples: - - Mac ftc: type: boolean description: Whether fast transition information is reported for the wireless client hardware: type: string description: Only when client has the Marvis Client app running. Type of Wi-Fi adapter examples: - Apple Wi-Fi adapter hostname: type: array items: type: string description: Detected hostnames for the wireless client during the query duration examples: - - hostname-a - hostname-b ip: type: array items: type: string description: Detected IP addresses for the wireless client during the query duration examples: - - 10.5.23.43 - 192.168.0.2 last_ap: type: string description: Most recent AP MAC address used by the wireless client examples: - a83a79a947ee last_device: type: string description: Most recent device type detected for the wireless client examples: - Zebra last_firmware: type: string description: Only when client has the Marvis Client app running. Same as "firmware" examples: - 'wl0: Jan 20 2024 04:08:41 version 20.103.12.0.8.7.171 FWID 01-e09d2675' last_hostname: type: string description: Latest hostname we detected for the client examples: - hostname-a last_ip: type: string description: Most recent IP address detected for the wireless client examples: - 10.100.0.157 last_model: type: string description: Only when client has the Marvis Client app running. latest client hardware model we detected for the client examples: - MBP 16\" M1 2021 last_os: type: string description: Only when client has the Marvis Client app running. Latest version of OS Type we detected for the client examples: - Sonoma last_os_version: type: string description: Only when client has the Marvis Client app running. Latest version of OS Version we detected for the client examples: - 14.4.1 (Build 23E224) last_psk_id: type: string description: Only for PPSK authentication. Latest PPSK ID used by the client contentEncoding: uuid examples: - abf7dc5c-bb51-4bb7-93b6-5547400ffe11 last_psk_name: type: string description: Only for PPSK authentication. Latest PPSK Name used by the client examples: - iot last_ssid: type: string description: Most recent SSID used by the wireless client examples: - john@mycorp.net last_username: type: string description: Most recent username associated with the wireless client last_vlan: type: integer description: Most recent VLAN associated with the wireless client contentEncoding: int32 examples: - 10 last_wlan_id: type: string description: ID of the latest SSID (WLAN) the client is/was connected to contentEncoding: uuid examples: - e5d67b07-aae8-494b-8584-cbc20c8110aa mac: type: string description: Client MAC address for the wireless client examples: - bcd074000000 mfg: type: string description: Manufacturer of the client hardware (MAC OUI based) examples: - Apple model: type: string description: Only when client has the Marvis Client app running. Client hardware model examples: - MBP 16\" M1 2021 org_id: type: string description: Owning organization identifier for the wireless client contentEncoding: uuid readOnly: true examples: - a97c1b22-a4e9-411e-9bfd-d8695a0f9e61 os: type: array items: type: string description: Operating systems detected for the wireless client during the query duration examples: - - Sonoma os_version: type: array items: type: string description: Operating system versions detected for the wireless client during the query duration examples: - - 14.4.1 (Build 23E224) protocol: type: string description: 802.11 protocol amendment used by the wireless client examples: - ax psk_id: type: array items: type: string contentEncoding: uuid description: PPSK identifiers used by the wireless client during the query duration examples: - - abf7dc5c-bb51-4bb7-93b6-5547400ffe11 psk_name: type: array items: type: string description: PPSK names used by the wireless client during the query duration examples: - - iot random_mac: type: boolean description: Whether the wireless client uses a randomized MAC address sdk_version: type: array items: type: string description: Marvis Client SDK versions reported by the wireless client during the query duration examples: - - 0.100.3 site_id: type: string description: Mist Site ID where the client is connected contentEncoding: uuid examples: - 25ff5219-9be7-4db9-907d-0c9b60445147 site_ids: type: array items: type: string contentEncoding: uuid description: Site identifiers where the wireless client was observed during the query duration examples: - - 25ff5219-9be7-4db9-907d-0c9b60445147 ssid: type: array items: type: string description: Wireless network SSIDs used by the client during the query duration examples: - - IoT SSID timestamp: type: number description: Time when the wireless client record was observed readOnly: true username: type: array items: type: string description: User identities associated with the wireless client during the query duration examples: - - user@corp.com vlan: type: array items: type: integer contentEncoding: int32 description: Network VLANs associated with the wireless client during the query duration examples: - - 10 wlan_id: type: array items: type: string contentEncoding: uuid description: WLAN identifiers used by the wireless client during the query duration examples: - - e5d67b07-aae8-494b-8584-cbc20c8110aa description: Wireless client record observed during a client search or stats query securitySchemes: apiToken: type: apiKey description: "Preferred authentication method for automation and integrations. Send the API token in the HTTP `Authorization` header.\n\n**Format**:\n `Authorization: Token {apitoken}`\n\n**Notes**:\n* An API token generated for a specific admin has the same privileges as that admin\n* An API token is automatically removed if it is not used for more than 90 days\n* SSO admins cannot generate admin API tokens. Use organization API tokens when scoped Org/Site privileges are needed." name: Authorization in: header csrfToken: type: apiKey description: 'Session-based authentication for browser or login/password flows. After a successful [Login]($e/Admins%20Login/login) request, Mist returns a `csrftoken` cookie. Send that value in the `X-CSRFToken` header on later API requests that use the login session. **Format**: ``` X-CSRFToken: vwvBuq9qkqaKh7lu8tNc0gkvBfEaLAmx ``` For automation, API Token authentication is preferred.' name: X-CSRFToken in: header