openapi: 3.1.0
info:
contact:
email: tmunzer@juniper.net
name: Thomas Munzer
description: '> Version: **2606.1.1**
>
> Date: **July 10, 2026**
<div class="notification"> NOTE:<br>Some important API changes will be introduced. Please make sure to read the <a href="https://www.juniper.net/documentation/us/en/software/mist/api/http/guides/important-api-changes">announcements</a> </div>
---
## Additional Documentation
* [Mist Automation Guide](https://www.juniper.net/documentation/us/en/software/mist/automation-integration/index.html)
* [Mist Location SDK](https://www.juniper.net/documentation/us/en/software/mist/location-services/topics/concept/mist-how-get-mist-sdk.html)
* [Mist Product Updates](https://www.juniper.net/documentation/us/en/software/mist/product-updates/)
## Helpful Resources
* [API Sandbox and Exercises](https://api-class.mist.com/)
* [Postman Collection, Runners and Webhook Samples](https://www.postman.com/juniper-mist/workspace/mist-systems-s-public-workspace)
* [Python Script Examples](https://github.com/tmunzer/mist_library)
* [API Demo Apps](https://apps.mist-lab.fr/)
* [Juniper Blog](https://blogs.juniper.net/)
## Mist Web Browser Extension:
* Google Chrome, Microsoft Edge and other Chromium-based browser: [Chrome Web Store](https://chromewebstore.google.com/detail/mist-extension/ejhpdcljeamillfhdihkkmoakanpbplh)
* Firefox: [Firefox Add-ons](https://addons.mozilla.org/en-US/firefox/addon/mist-extension/)
---'
license:
name: MIT
url: https://raw.githubusercontent.com/tmunzer/Mist-OAS3.0/main/LICENSE
title: Mist Admins Sites Setting API
version: 2606.1.1
x-logo:
altText: Juniper-MistAI
backgroundColor: '#FFFFFF'
url: https://www.mist.com/wp-content/uploads/logo.png
servers:
- description: Mist Global 01
url: https://api.mist.com
- description: Mist Global 02
url: https://api.gc1.mist.com
- description: Mist Global 03
url: https://api.ac2.mist.com
- description: Mist Global 04
url: https://api.gc2.mist.com
- description: Mist Global 05
url: https://api.gc4.mist.com
- description: Mist EMEA 01
url: https://api.eu.mist.com
- description: Mist EMEA 02
url: https://api.gc3.mist.com
- description: Mist EMEA 03
url: https://api.ac6.mist.com
- description: Mist EMEA 04
url: https://api.gc6.mist.com
- description: Mist APAC 01
url: https://api.ac5.mist.com
- description: Mist APAC 02
url: https://api.gc5.mist.com
- description: Mist APAC 03
url: https://api.gc7.mist.com
security:
- apiToken: []
- csrfToken: []
tags:
- description: 'Site settings refer to the configuration and management of of site within a Mist Organization.
These settings include access point settings, firmware upgrade schedules, and various features such as location services, occupancy analytics, and engagement analytics.'
name: Sites Setting
paths:
/api/v1/sites/{site_id}/setting:
parameters:
- $ref: '#/components/parameters/site_id'
get:
description: Get the Site Settings
operationId: getSiteSetting
responses:
'200':
$ref: '#/components/responses/SiteSettings'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSetting
tags:
- Sites Setting
put:
description: Update Site Settings
operationId: updateSiteSettings
requestBody:
content:
application/json:
examples:
Example:
value:
additional_config_cmds:
- set snmp community public
analytic:
enabled: false
ap_matching:
enabled: true
rules:
- match_model: string
name: string
port_config:
eth1,eth2:
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
port_vlan_id: 1
vlan_id: 9
vlan_ids: 1, 10, 50
ap_port_config:
model_specific:
AP32:
eth1,eth2:
port_vlan_id: 1
vlan_ids: 1, 10, 50
auto_upgrade:
custom_versions:
AP21: stable
AP41: 0.1.5135
AP61: 0.1.7215
day_of_week: sun
enabled: false
time_of_day: '12:00'
version: beta
config_auto_revert: false
device_updown_threshold: 0
dns_servers:
- string
dns_suffix:
- string
engagement:
dwell_tag_names:
bounce: Bounce
engaged: Engaged
passerby: Passer By
stationed: Stationed
dwell_tags:
bounce: null
engaged: 300-14400
passerby: null
stationed: 14400-43200
hours:
fri: 09:00-17:00
mon: 09:00-17:00
sat: 09:00-12:00
sun: 09:00-12:00
thu: 09:00-17:00
tue: 09:00-17:00
wed: 09:00-17:00
max_dwell: 43200
min_dwell: 0
evpn_options:
auto_loopback_subnet: 100.101.0.0/16
auto_router_id_subnet: 100.100.0.0/24
core_as_border: false
overlay:
as: 65000
per_vlan_vga_v4_mac: false
routed_at: edge
underlay:
as_base: 65001
routed_id_prefix: /24
subnet: 10.255.240.0/20
gateway_additional_config_cmds:
- set snmp community public
gateway_mgmt:
admin_sshkeys:
- string
app_probing:
apps:
- string
custom_apps:
- app_type: string
hostnames:
- string
name: string
protocol: http
enabled: true
app_usage: true
auto_signature_update:
day_of_week: any
enable: true
time_of_day: string
config_revert_timer: 10
probe_hosts:
- string
root_password: string
security_log_source_address: 192.168.1.1
security_log_source_interface: string
led:
brightness: 255
enabled: true
mxedge_mgmt:
mist_password: MIST_PASSWORD
root_password: ROOT_PASSWORD
networks:
property1:
gateway: string
subnet: string
vlan_id: 10
property2:
gateway: string
subnet: string
vlan_id: 10
ntp_servers:
- string
occupancy:
assets_enabled: false
clients_enabled: true
min_duration: 3000
sdkclients_enabled: false
unconnected_clients_enabled: false
ospf_areas:
property1:
include_loopback: false
networks:
corp:
auth_keys:
'1': auth-key-1
auth_type: md5
bfd_minimum_interval: 500
dead_interval: 40
hello_interval: 10
interface_type: nbma
metric: 10000
guest:
passive: true
type: default
property2:
include_loopback: false
networks:
corp:
auth_keys:
'1': auth-key-1
auth_type: md5
bfd_minimum_interval: 500
dead_interval: 40
hello_interval: 10
interface_type: nbma
metric: 10000
guest:
passive: true
type: default
persist_config_on_device: false
port_mirroring:
property1:
input_networks_ingress:
- corp
input_port_ids_egress:
- ge-0/0/3
input_port_ids_ingress:
- ge-0/0/3
output_network: analyze
output_port_id: ge-0/0/5
property2:
input_networks_ingress:
- corp
input_port_ids_egress:
- ge-0/0/3
input_port_ids_ingress:
- ge-0/0/3
output_network: analyze
output_port_id: ge-0/0/5
port_usages:
dynamic:
mode: dynamic
reset_default_when: link_down
rules:
- equals: string
equals_any:
- string
expression: string
src: lldp_chassis_id
usage: string
property1:
all_networks: false
allow_dhcpd: true
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_auth_protocol: pap
mac_limit: 0
mode: access
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: dot1x
port_network: string
server_reject_network: null
speed: auto
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
property2:
all_networks: false
allow_dhcpd: true
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_auth_protocol: pap
mac_limit: 0
mode: access
networks:
- string
persist_mac: false
poe_disabled: false
port_network: string
server_reject_network: null
speed: auto
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
proxy:
url: http://proxy.internal:8080/*
rogue:
enabled: false
honeypot_enabled: false
min_duration: 10
min_rssi: -80
whitelisted_bssids:
- NeighborSSID
whitelisted_ssids:
- cc:8e:6f:d4:bf:16
- cc-8e-6f-d4-bf-16
- cc-73-*
- cc:82:*
simple_alert:
arp_failure:
client_count: 10
duration: 20
incident_count: 10
dhcp_failure:
client_count: 10
duration: 10
incident_count: 20
dns_failure:
client_count: 20
duration: 10
incident_count: 30
skyatp:
enabled: true
send_ip_mac_mapping: true
srx_app:
enabled: false
ssh_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAA...Wxa6p6UW0ZbcP john@host
ssr:
conductor_hosts:
- '"1.1.1.1", "2.2.2.2"'
disable_stats: true
status_portal:
enabled: false
hostnames:
- my.misty.com
vars:
RADIUS_IP1: 172.31.2.5
RADIUS_SECRET: 11s64632d
vna:
enabled: false
wan_vna:
enabled: false
wids:
repeated_auth_failures:
duration: 60
threshold: 0
wifi:
cisco_enabled: true
disable_11k: false
disable_radios_when_power_constrained: false
enable_arp_spoof_check: false
enable_shared_radio_scanning: true
enabled: true
locate_connected: true
locate_unconnected: false
mesh_allow_dfs: false
mesh_enable_crm: false
mesh_enabled: false
mesh_psk: string
mesh_ssid: string
proxy_arp: default
wired_vna:
enabled: false
zone_occupancy_alert:
email_notifiers:
- foo@juniper.net
- bar@juniper.net
enabled: false
threshold: 5
schema:
$ref: '#/components/schemas/site_setting'
description: Request Body
responses:
'200':
$ref: '#/components/responses/SiteSettings'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteSettings
tags:
- Sites Setting
/api/v1/sites/{site_id}/setting/blacklist:
parameters:
- $ref: '#/components/parameters/site_id'
delete:
description: Delete Site Blacklist Station Clients
operationId: deleteSiteWirelessClientsBlocklist
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteWirelessClientsBlocklist
tags:
- Sites Setting
post:
description: 'This endpoint is to provide list of client macs for annotation blacklist.
Retrieve the current clients list `blacklist_url` under Site:Setting'
operationId: createSiteWirelessClientsBlocklist
requestBody:
content:
application/json:
examples:
Example:
value:
macs:
- 18-65-90-de-f4-c6
- 84-89-ad-5d-69-0d
schema:
$ref: '#/components/schemas/mac_addresses'
description: Request Body
responses:
'200':
$ref: '#/components/responses/MacsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteWirelessClientsBlocklist
tags:
- Sites Setting
/api/v1/sites/{site_id}/setting/derived:
parameters:
- $ref: '#/components/parameters/site_id'
get:
description: Get the Derived Site Settings, generated by merging the Org level templates (network templates, gateway templates) and the Site level configuration. If the same parameter is defined in both scopes, the Site level one is used. In addition, the Zoom and Teams accounts are also merged into the derived settings.
operationId: getSiteSettingDerived
responses:
'200':
$ref: '#/components/responses/SiteSettingsDerived'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSettingDerived
tags:
- Sites Setting
/api/v1/sites/{site_id}/setting/watched_station:
parameters:
- $ref: '#/components/parameters/site_id'
delete:
description: Delete Site Watched Station Clients
operationId: deleteSiteWatchedStations
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteWatchedStations
tags:
- Sites Setting
post:
description: 'This endpoint is to provide list of client macs for annotation as watched station.
Retrieve the current clients list from `watched_station_url` under Site:Setting'
operationId: createSiteWatchedStations
requestBody:
content:
application/json:
examples:
Example:
value:
macs:
- 18-65-90-de-f4-c6
- 84-89-ad-5d-69-0d
schema:
$ref: '#/components/schemas/mac_addresses'
description: Request Body
responses:
'200':
$ref: '#/components/responses/MacsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteWatchedStations
tags:
- Sites Setting
/api/v1/sites/{site_id}/setting/whitelist:
parameters:
- $ref: '#/components/parameters/site_id'
delete:
description: Delete Site Whitelist Station Clients
operationId: deleteSiteWirelessClientsAllowlist
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteWirelessClientsAllowlist
tags:
- Sites Setting
post:
description: 'This endpoint is to provide list of client macs for annotation as whitelist.
Retrieve the current clients list from `whitelist_url` under Site:Setting'
operationId: createSiteWirelessClientsAllowlist
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mac_addresses'
description: Request Body
responses:
'200':
$ref: '#/components/responses/MacsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteWirelessClientsAllowlist
tags:
- Sites Setting
components:
schemas:
acl_tag_spec:
additionalProperties: false
description: Layer 4 protocol and destination-port match constraint for an ACL tag
properties:
port_range:
default: '0'
description: Matched dst port, "0" means any
type: string
protocol:
default: any
description: '`tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254'
type: string
type: object
juniper_srx_auto_upgrade_custom_versions:
additionalProperties:
description: Firmware version to deploy on the specified SRX hardware
examples:
- 23.4R2-S2.1
type: string
description: Property key is the SRX Hardware model (e.g. "SRX4600")
type: object
routing_policy_term_action_prepend_as_path:
description: When used as export policy, optional. By default, the local AS will be prepended, to change it. Can be a Variable (e.g. `{{as_path}}`)
items:
examples:
- 65000 400
type: string
type: array
switch_networks:
additionalProperties:
$ref: '#/components/schemas/switch_network'
description: Property key is network name
type: object
vlan_ids:
description: list of VLAN IDs on which rogue APs are ignored
items:
maximum: 4096
minimum: 0
type: integer
type: array
id:
description: Unique ID of the object instance in the Mist Organization
examples:
- 53f10664-3ce8-4c27-b382-0ef66432349f
format: uuid
readOnly: true
type: string
vrf_extra_routes6:
additionalProperties:
$ref: '#/components/schemas/vrf_extra_route6'
description: Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
examples:
- 2a02:1234:420a:10c9::/64:
via: 2a02:1234:200a::100
type: object
synthetictest_config_aggressiveness:
default: auto
description: 'Aggressiveness level for a synthetic test. enum: `auto`, `high`, `med`, `low`'
enum:
- auto
- high
- med
- low
type: string
service_policy_skyatp_http_inspection:
additionalProperties: false
description: Sky ATP HTTP inspection settings
properties:
enabled:
description: Whether Sky ATP HTTP inspection is enabled
type: boolean
profile:
$ref: '#/components/schemas/service_policy_skyatp_http_inspection_profile'
description: Sky ATP HTTP inspection profile to apply
type: object
dhcpd_config_type:
default: local
description: 'enum: `local` (DHCP Server), `none`, `relay` (DHCP Relay)'
enum:
- local
- none
- relay
type: string
ap_port_config_dynamic_vlan_type:
description: 'Mapping mode for interpreting dynamic VLAN attributes returned by RADIUS.\ \ enum: `airespace-interface-name`, where the VLAN is determined by parsing\ \ the RADIUS attribute as an Airespace interface name (e.g. "guest"\ \ would map to VLAN 100), or `standard`, where the VLAN is determined by parsing\ \ the RADIUS attribute as a standard VLAN ID number'
enum:
- airespace-interface-name
- standard
type: string
remote_syslog_time_format:
description: 'enum: `millisecond`, `year`, `year millisecond`'
enum:
- millisecond
- year
- year millisecond
examples:
- millisecond
type: string
switch_port_usage_storm_control:
additionalProperties: false
description: Switch storm control. Only if `mode`!=`dynamic`
properties:
disable_port:
default: false
description: Whether to disable the port when storm control is triggered
type: boolean
no_broadcast:
default: false
description: Whether to disable storm control on broadcast traffic
type: boolean
no_multicast:
default: false
description: Whether to disable storm control on multicast traffic
type: boolean
no_registered_multicast:
default: false
description: Whether to disable storm control on registered multicast traffic
type: boolean
no_unknown_unicast:
default: false
description: Whether to disable storm control on unknown unicast traffic
type: boolean
percentage:
default: 80
description: Bandwidth-percentage, configures the storm control level as a percentage of the available bandwidth
maximum: 100
minimum: 0
type: integer
type: object
gateway_port_vpn_path_role:
default: spoke
description: 'If the VPN `type`==`hub_spoke`, enum: `hub`, `spoke`. If the VPN `type`==`mesh`, enum: `mesh`'
enum:
- hub
- mesh
- spoke
type: string
simple_alert_dhcp_failure:
additionalProperties: false
description: Thresholds for DHCP failure heuristic alerts
properties:
client_count:
default: 10
description: Number of distinct clients that must encounter DHCP failures before alerting
type: integer
duration:
default: 10
description: Time window in minutes for evaluating DHCP failures
maximum: 60
minimum: 5
type: integer
incident_count:
default: 20
description: Number of DHCP failure incidents required within the duration window
type: integer
type: object
snmp_vacm_access:
description: VACM access rules for SNMPv3
items:
$ref: '#/components/schemas/snmp_vacm_access_item'
type: array
ospf_area_network_interface_type:
default: broadcast
description: 'interface type (nbma = non-broadcast multi-access). enum: `broadcast`, `nbma`, `p2mp`, `p2p`'
enum:
- broadcast
- nbma
- p2mp
- p2p
type: string
site_setting_status_portal:
additionalProperties: false
description: End-user status portal settings for the site
properties:
enabled:
default: false
description: Whether the site status portal is enabled
type: boolean
hostnames:
$ref: '#/components/schemas/site_setting_status_portal_hostnames'
description: Portal hostnames served by the site status portal
type: object
tunnel_config_auth_algo:
description: 'enum: `md5`, `sha1`, `sha2`'
enum:
- md5
- sha1
- sha2
type: string
site_auto_upgrade_version:
default: stable
description: 'desired version. enum: `beta`, `custom`, `stable`'
enum:
- beta
- custom
- stable
examples:
- beta
type: string
response_http400:
additionalProperties: false
description: Standard HTTP 400 bad request error response
properties:
detail:
description: Human-readable explanation of the bad request error
examples:
- 'JSON parse error - Expecting value: line 5 column 8 (char 56)'
type: string
type: object
bgp_config_via:
default: lan
description: 'enum: `lan`, `tunnel`, `vpn`, `wan`'
enum:
- lan
- tunnel
- vpn
- wan
type: string
vrf_extra_route:
additionalProperties: false
description: Additional IPv4 static route for a VRF instance
properties:
via:
description: IPv4 next-hop address for this VRF extra route
format: ipv4
type: string
type: object
site_setting_switch:
allOf:
- $ref: '#/components/schemas/network_template'
- $ref: '#/components/schemas/switch_auto_upgrade_container'
description: Site switch settings combining a network template and auto-upgrade controls
account_oauth_info_account_regions:
additionalProperties:
$ref: '#/components/schemas/account_oauth_info_account_region'
description: For Prisma accounts only, property key is the region name. Regions with allocated bandwidth
type: object
snmpv3_config_target_address_item:
additionalProperties: false
description: SNMPv3 notification target address entry
properties:
address:
description: IP address or hostname of the SNMP target
examples:
- 10.11.0.2
type: string
address_mask:
description: Mask applied to the SNMP target address
examples:
- 255.255.255.0
type: string
port:
default: '161'
description: UDP port used by the SNMP target
type:
- string
- 'null'
tag_list:
description: Set of notification tags for this target address; use spaces between multiple tags
type: string
target_address_name:
description: Name of the SNMP target address entry
examples:
- target_address_name
type: string
target_parameters:
description: Target parameter profile referenced by this target address
type: string
type: object
switch_bgp_config_hold_time_integer:
description: BGP hold time value from 3 to 65535 seconds
maximum: 65535
minimum: 3
type: integer
tunnel_config_node_hosts:
description: Remote gateway host addresses for a tunnel node
items:
description: IP address of the remote host
type: string
type: array
gw_routing_policy_term_action_add_target_vrfs:
description: For SSR, target VRFs used by a hub when leaking VRF routes to spokes
items:
# --- truncated at 32 KB (428 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mist/refs/heads/main/openapi/mist-sites-setting-api-openapi.yml