openapi: 3.1.0 info: contact: email: tmunzer@juniper.net name: Thomas Munzer description: '> Version: **2604.1.1** > > Date: **May 13, 2026**
NOTE:
Some important API changes will be introduced. Please make sure to read the announcements
--- ## 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 Orgs Sites API version: 2604.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: [] - basicAuth: [] - basicAuth: [] csrfToken: [] tags: - description: 'API Calls to Create or Get the Organization Sites. Use the [Site Settings](https://www.juniper.net/documentation/us/en/software/mist/api/http/api/sites/setting/overview) to configure or update the Site information.' name: Orgs Sites paths: /api/v1/orgs/{org_id}/sites: parameters: - $ref: '#/components/parameters/org_id' get: description: Get List of Org Sites operationId: listOrgSites parameters: - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/page' responses: '200': $ref: '#/components/responses/SitesArray' '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: listOrgSites tags: - Orgs Sites post: description: Create Org Site operationId: createOrgSite requestBody: content: application/json: examples: Example: value: address: 1601 S. Deanza Blvd., Cupertino, CA, 95014 alarmtemplate_id: 684dfc5c-fe77-2290-eb1d-ef3d677fe168 aptemplate_id: 16bdf952-ade2-4491-80b0-85ce506c760b country_code: US gatewaytemplate_id: 6f9b2e75-9b2f-b5ae-81e3-e14c76f1a90f latlng: lat: 37.295833 lng: -122.032946 name: Mist Office networktemplate_id: 12ae9bd2-e0ab-107b-72e8-a7a005565ec2 notes: string rftemplate_id: bb8a9017-1e36-5d6c-6f2b-551abe8a76a2 secpolicy_id: 3bcd0beb-5d0a-4cbd-92c1-14aea91e98ef sitegroup_ids: - 497f6eca-6276-4997-bfeb-53cbbbba6f3b timezone: America/Los_Angeles schema: $ref: '#/components/schemas/site' description: Request Body responses: '200': $ref: '#/components/responses/Site' '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: createOrgSite tags: - Orgs Sites /api/v1/orgs/{org_id}/sites/count: parameters: - $ref: '#/components/parameters/org_id' get: description: Count by Distinct Attributes of Sites operationId: countOrgSites parameters: - in: query name: distinct schema: $ref: '#/components/schemas/org_sites_count_distinct' - $ref: '#/components/parameters/start' - $ref: '#/components/parameters/end' - $ref: '#/components/parameters/duration' - $ref: '#/components/parameters/limit' responses: '200': $ref: '#/components/responses/Count' '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: countOrgSites tags: - Orgs Sites /api/v1/orgs/{org_id}/sites/search: parameters: - $ref: '#/components/parameters/org_id' get: description: Search Sites operationId: searchOrgSites parameters: - description: If Advanced Analytic feature is enabled in: query name: analytic_enabled schema: type: boolean - description: If App Waking feature is enabled in: query name: app_waking schema: type: boolean - description: If Asset Tracking is enabled in: query name: asset_enabled schema: type: boolean - description: If Auto Upgrade feature is enabled in: query name: auto_upgrade_enabled schema: type: boolean - description: If Auto Upgrade feature is enabled in: query name: auto_upgrade_version schema: type: string - description: Site country code in: query name: country_code schema: type: string - description: If Honeypot detection is enabled in: query name: honeypot_enabled schema: type: boolean - description: Site id in: query name: id schema: type: string - description: If unconnected client are located in: query name: locate_unconnected schema: type: boolean - description: If Mesh feature is enabled in: query name: mesh_enabled schema: type: boolean - $ref: '#/components/parameters/partial_filter_name_site' - description: If Rogue detection is enabled in: query name: rogue_enabled schema: type: boolean - description: If Remote Syslog is enabled in: query name: remote_syslog_enabled schema: type: boolean - description: If managed mobility feature is enabled in: query name: rtsa_enabled schema: type: boolean - description: If Virtual Network Assistant is enabled in: query name: vna_enabled schema: type: boolean - description: If Wi-Fi feature is enabled in: query name: wifi_enabled schema: type: boolean - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/start' - $ref: '#/components/parameters/end' - $ref: '#/components/parameters/duration' - $ref: '#/components/parameters/sort' - $ref: '#/components/parameters/search_after' responses: '200': $ref: '#/components/responses/SitesSearch' '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: searchOrgSites tags: - Orgs Sites components: responses: Site: content: application/json: examples: Example: $ref: '#/components/examples/SiteExample' schema: $ref: '#/components/schemas/site' application/vnd.api+json: examples: Example: $ref: '#/components/examples/SiteExample' schema: $ref: '#/components/schemas/site' description: OK SitesSearch: content: application/json: examples: Example: $ref: '#/components/examples/SitesSearchExample' schema: $ref: '#/components/schemas/response_site_search' application/vnd.api+json: examples: Example: $ref: '#/components/examples/SitesSearchExample' schema: $ref: '#/components/schemas/response_site_search' description: OK HTTP404: content: application/json: schema: $ref: '#/components/schemas/response_http404' application/vnd.api+json: schema: $ref: '#/components/schemas/response_http404' description: Not found. The API endpoint doesn’t exist or resource doesn’ t exist HTTP429: content: application/json: examples: Example: $ref: '#/components/examples/HTTP429Example' schema: $ref: '#/components/schemas/response_http429' application/vnd.api+json: examples: Example: $ref: '#/components/examples/HTTP429Example' schema: $ref: '#/components/schemas/response_http429' description: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold HTTP403: content: application/json: examples: Example: $ref: '#/components/examples/HTTP403Example' schema: $ref: '#/components/schemas/response_http403' application/vnd.api+json: examples: Example: $ref: '#/components/examples/HTTP403Example' schema: $ref: '#/components/schemas/response_http403' description: Permission Denied SitesArray: content: application/json: examples: Example: $ref: '#/components/examples/SitesArrayExample' schema: $ref: '#/components/schemas/sites' application/vnd.api+json: examples: Example: $ref: '#/components/examples/SitesArrayExample' schema: $ref: '#/components/schemas/sites' description: OK HTTP400: content: application/json: examples: Example: $ref: '#/components/examples/HTTP400Example' schema: $ref: '#/components/schemas/response_http400' application/vnd.api+json: examples: Example: $ref: '#/components/examples/HTTP400Example' schema: $ref: '#/components/schemas/response_http400' description: Bad Syntax HTTP401: content: application/json: examples: Example: $ref: '#/components/examples/HTTP401Example' schema: $ref: '#/components/schemas/response_http401' application/vnd.api+json: examples: Example: $ref: '#/components/examples/HTTP401Example' schema: $ref: '#/components/schemas/response_http401' description: Unauthorized Count: content: application/json: examples: Example: $ref: '#/components/examples/CountExample' schema: $ref: '#/components/schemas/response_count' application/vnd.api+json: examples: Example: $ref: '#/components/examples/CountExample' schema: $ref: '#/components/schemas/response_count' description: Result of Count schemas: id: description: Unique ID of the object instance in the Mist Organization examples: - 53f10664-3ce8-4c27-b382-0ef66432349f format: uuid readOnly: true type: string response_count: additionalProperties: false properties: distinct: type: string end: type: integer limit: type: integer results: $ref: '#/components/schemas/count_results' start: type: integer total: type: integer required: - distinct - end - limit - results - start - total type: object org_sites_count_distinct: default: id description: 'enum: `analytic_enabled`, `app_waking`, `asset_enabled`, `auto_upgrade_enabled`, `auto_upgrade_version`, `country_code`, `honeypot_enabled`, `id`, `locate_unconnected`, `mesh_enabled`, `name`, `remote_syslog_enabled`, `rogue_enabled`, `rtsa_enabled`, `vna_enabled`, `wifi_enabled`' enum: - analytic_enabled - app_waking - asset_enabled - auto_upgrade_enabled - auto_upgrade_version - country_code - honeypot_enabled - id - locate_unconnected - mesh_enabled - name - remote_syslog_enabled - rogue_enabled - rtsa_enabled - vna_enabled - wifi_enabled type: string site_sitegroup_ids: description: Sitegroups this site belongs to items: format: uuid type: string type: array response_http403: additionalProperties: false properties: detail: examples: - You do not have permission to perform this action. type: string type: object sites: items: $ref: '#/components/schemas/site' type: array site: description: Site properties: address: description: full address of the site examples: - 1601 S. Deanza Blvd., Cupertino, CA, 95014 type: - string - 'null' alarmtemplate_id: description: Alarm Template ID, this takes precedence over the Org-level alarmtemplate_id examples: - 684dfc5c-fe77-2290-eb1d-ef3d677fe168 format: uuid type: - string - 'null' aptemplate_id: description: AP Template ID, used by APs examples: - 16bdf952-ade2-4491-80b0-85ce506c760b format: uuid type: - string - 'null' country_code: description: Country code for the site (for AP config generation), in two-character examples: - US type: string created_time: $ref: '#/components/schemas/created_time' gatewaytemplate_id: description: Gateway Template ID, used by gateways examples: - 6f9b2e75-9b2f-b5ae-81e3-e14c76f1a90f format: uuid type: - string - 'null' id: $ref: '#/components/schemas/id' latlng: $ref: '#/components/schemas/lat_lng' modified_time: $ref: '#/components/schemas/modified_time' name: examples: - Mist Office type: string networktemplate_id: description: Network Template ID, this takes precedence over Site Settings examples: - 12ae9bd2-e0ab-107b-72e8-a7a005565ec2 format: uuid type: - string - 'null' notes: description: Optional, any notes about the site type: - string - 'null' org_id: $ref: '#/components/schemas/org_id' rftemplate_id: description: RF Template ID, this takes precedence over Site Settings examples: - bb8a9017-1e36-5d6c-6f2b-551abe8a76a2 format: uuid type: - string - 'null' routertemplate_id: description: Router Template ID, used by gateways examples: - 6f9b2e75-9b2f-b5ae-81e3-e14c76f1a90f format: uuid type: - string - 'null' secpolicy_id: description: SecPolicy ID examples: - 3bcd0beb-5d0a-4cbd-92c1-14aea91e98ef format: uuid type: - string - 'null' sitegroup_ids: $ref: '#/components/schemas/site_sitegroup_ids' sitetemplate_id: description: Site Template ID format: uuid type: - string - 'null' timezone: default: UTC description: Timezone the site is at examples: - America/Los_Angeles type: string tzoffset: default: 0 type: integer required: - name type: object count_results: items: $ref: '#/components/schemas/count_result' type: array uniqueItems: true count_result: additionalProperties: type: string properties: count: type: integer required: - count type: object response_site_search_item: additionalProperties: false properties: auto_upgrade_enabled: type: boolean auto_upgrade_version: readOnly: true type: string country_code: readOnly: true type: - string - 'null' honeypot_enabled: type: boolean id: $ref: '#/components/schemas/id' name: readOnly: true type: string org_id: $ref: '#/components/schemas/org_id' site_id: $ref: '#/components/schemas/site_id' timestamp: $ref: '#/components/schemas/timestamp' timezone: readOnly: true type: string vna_enabled: type: boolean wifi_enabled: type: boolean required: - honeypot_enabled - wifi_enabled - vna_enabled - timezone - timestamp - org_id - site_id - name - id - auto_upgrade_version - auto_upgrade_enabled type: object lat_lng: additionalProperties: false properties: lat: examples: - 37.295833 format: double type: number lng: examples: - -122.032946 format: double type: number required: - lat - lng type: object response_site_search: additionalProperties: false properties: end: type: integer limit: type: integer next: type: string results: $ref: '#/components/schemas/response_site_search_results' start: type: integer total: type: integer required: - results - start - end - limit - total type: object site_id: examples: - 441a1214-6928-442a-8e92-e1d34b8ec6a6 format: uuid readOnly: true type: string response_http404: additionalProperties: false properties: id: type: string type: object response_site_search_results: items: $ref: '#/components/schemas/response_site_search_item' type: array uniqueItems: true timestamp: description: Epoch (seconds) format: double readOnly: true type: number response_http400: additionalProperties: false properties: detail: examples: - 'JSON parse error - Expecting value: line 5 column 8 (char 56)' type: string type: object response_http429: additionalProperties: false properties: detail: examples: - Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold type: string type: object response_http401: additionalProperties: false properties: detail: examples: - Authentication credentials were not provided. type: string type: object org_id: examples: - a97c1b22-a4e9-411e-9bfd-d8695a0f9e61 format: uuid readOnly: true type: string modified_time: description: When the object has been modified for the last time, in epoch format: double readOnly: true type: number created_time: description: When the object has been created, in epoch format: double readOnly: true type: number examples: SiteExample: value: address: 1601 S. Deanza Blvd., Cupertino, CA, 95014 alarmtemplate_id: 684dfc5c-fe77-2290-eb1d-ef3d677fe168 aptemplate_id: 16bdf952-ade2-4491-80b0-85ce506c760b country_code: US created_time: 0 gatewaytemplate_id: 6f9b2e75-9b2f-b5ae-81e3-e14c76f1a90f id: 497f6eca-6276-5005-bfeb-53cbbbba6f17 latlng: lat: 37.295833 lng: -122.032946 modified_time: 0 name: Mist Office networktemplate_id: 12ae9bd2-e0ab-107b-72e8-a7a005565ec2 notes: string org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b rftemplate_id: bb8a9017-1e36-5d6c-6f2b-551abe8a76a2 secpolicy_id: 3bcd0beb-5d0a-4cbd-92c1-14aea91e98ef sitegroup_ids: - 497f6eca-6276-5006-bfeb-53cbbbba6f18 timezone: America/Los_Angeles CountExample: value: distinct: string end: 0 limit: 0 results: - count: 0 property: string start: 0 total: 0 SitesArrayExample: value: - address: 1601 S. Deanza Blvd., Cupertino, CA, 95014 alarmtemplate_id: 684dfc5c-fe77-2290-eb1d-ef3d677fe168 aptemplate_id: 16bdf952-ade2-4491-80b0-85ce506c760b country_code: US created_time: 0 gatewaytemplate_id: 6f9b2e75-9b2f-b5ae-81e3-e14c76f1a90f id: 497f6eca-6276-5007-bfeb-53cbbbba6f19 latlng: lat: 37.295833 lng: -122.032946 modified_time: 0 name: Mist Office networktemplate_id: 12ae9bd2-e0ab-107b-72e8-a7a005565ec2 notes: string org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b rftemplate_id: bb8a9017-1e36-5d6c-6f2b-551abe8a76a2 secpolicy_id: 3bcd0beb-5d0a-4cbd-92c1-14aea91e98ef sitegroup_ids: - 497f6eca-6276-5008-bfeb-53cbbbba6f1a timezone: America/Los_Angeles SitesSearchExample: value: end: 0 limit: 0 next: string results: - auto_upgrade_enabled: true auto_upgrade_version: string country_code: string honeypot_enabled: true id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1 name: string org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1 site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1 timestamp: 0 timezone: string vna_enabled: true wifi_enabled: true start: 0 total: 0 HTTP400Example: value: detail: 'JSON parse error - Expecting value: line 5 column 8 (char 56)' HTTP403Example: value: detail: You do not have permission to perform this action. HTTP429Example: value: detail: Too Many Request. The API Token used for the request reached the 5000 API Calls per hour threshold HTTP401Example: value: detail: Authentication credentials were not provided. parameters: org_id: in: path name: org_id required: true schema: examples: - 000000ab-00ab-00ab-00ab-0000000000ab format: uuid type: string start: description: Start time (epoch timestamp in seconds, or relative string like "-1d", "-1w") in: query name: start schema: type: string sort: description: On which field the list should be sorted, -prefix represents DESC order in: query name: sort schema: default: timestamp examples: - -site_id type: string duration: description: Duration like 7d, 2w in: query name: duration schema: default: 1d examples: - 10m type: string search_after: 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. in: query name: search_after schema: type: string page: in: query name: page schema: default: 1 minimum: 1 type: integer end: description: End time (epoch timestamp in seconds, or relative string like "-1d", "-2h", "now") in: query name: end schema: type: string limit: in: query name: limit schema: default: 100 minimum: 0 type: integer partial_filter_name_site: description: Partial / full Site name. Case insensitive. Use `prefix*` for prefix search or `*substring*` for contains search (e.g. `my-site*` and `*site*` match `my-site-01`). Suffix-only wildcards (e.g. `*site-01`) are not supported in: query name: name schema: examples: - my-site-01 - my-site* - '*site*' type: string securitySchemes: apiToken: description: "Like many other API providers, it’s also possible to generate API Tokens to be used (in HTTP Header) for authentication. An API token ties to a Admin with equal or less privileges.\n\n**Format**:\n API Token value format is `Token {apitoken}`\n\n**Notes**:\n* an API token generated for a specific admin has the same privilege as the user\n* an API token will be automatically removed if not used for > 90 days\n* SSO admins cannot generate these API tokens. Refer Org level API tokens which can have privileges of a specific Org/Site for more information." in: header name: Authorization type: apiKey basicAuth: description: While our current UI uses Session / Cookie-based authentication, it’s also possible to do Basic Auth. scheme: basic type: http csrfToken: description: "This protects the website against [Cross Site Request Forgery](https://en.wikipedia.org/wiki/Cross-site_request_forgery), all the POST / PUT / DELETE APIs needs to have CSRF token in the AJAX Request header when using Login/Password authentication (with or without MFA)\n\n\nThe CSRF Token is sent back by Mist in the Cookies from the Login Response API Call:\n`cookies[csrftoken]` \n\nThe CSRF Token must be added in the HTTP Request Headers:\n```\nX-CSRFToken: vwvBuq9qkqaKh7lu8tNc0gkvBfEaLAmx\n```" in: header name: X-CSRFToken type: apiKey