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 SCEP 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: - name: Orgs SCEP paths: /api/v1/orgs/{org_id}/setting/mist_scep: parameters: - $ref: '#/components/parameters/org_id' delete: description: Disable Mist SCEP Org setting operationId: disableOrgMistScep responses: '200': $ref: '#/components/responses/OrgScep' '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: disableOrgMistScep tags: - Orgs SCEP get: description: Get Mist SCEP Org setting operationId: getOrgMistScep responses: '200': $ref: '#/components/responses/OrgScep' '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: getOrgMistScep tags: - Orgs SCEP put: description: Update Mist SCEP Org setting operationId: updateOrgMistScep requestBody: content: application/json: examples: Example: value: enabled: true schema: $ref: '#/components/schemas/org_setting_scep' responses: '200': $ref: '#/components/responses/OrgScep' '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: updateOrgMistScep tags: - Orgs SCEP /api/v1/orgs/{org_id}/setting/mist_scep/client_certs: parameters: - $ref: '#/components/parameters/org_id' get: description: Get Issued Client Certificates operationId: listOrgIssuedClientCertificates parameters: - description: sso_name_id obtained from NAC Portal in: query name: sso_name_id schema: type: string - description: Serial Number of the certificate in: query name: serial_number schema: type: string - description: Device ID in: query name: device_id schema: type: string responses: '200': $ref: '#/components/responses/IssuedClientCertificates' '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: listOrgIssuedClientCertificates tags: - Orgs SCEP /api/v1/orgs/{org_id}/setting/mist_scep/client_certs/revoke: parameters: - $ref: '#/components/parameters/org_id' post: description: Revoke Issued Client Certificates operationId: revokeOrgIssuedClientCertificates requestBody: content: application/json: examples: Example: value: serial_numbers: - 13 00 13 03 23 EE D5 84 01 schema: $ref: '#/components/schemas/client_cert_serial_numbers' 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: revokeOrgIssuedClientCertificates tags: - Orgs SCEP components: schemas: org_setting_scep_response: additionalProperties: false properties: cert_providers: $ref: '#/components/schemas/org_setting_scep_cert_providers' enabled: readOnly: true type: boolean intune_scep_url: examples: - https://scep.mistsys.com/api/v1/incoming/intune/:org_id/scep readOnly: true type: string jamf_access_token: examples: - 1Z4QqEnCt05Jjt3TV5LgPJ4V_WL_RWnJ7dqVMLYHj81= readOnly: true type: string jamf_scep_url: examples: - https://scep.mistsys.com/api/v1/incoming/intune/:org_id/scep readOnly: true type: string jamf_webhook_url: examples: - https://scep.mistsys.com/api/v1/webhook/jamf/:org_id/scep readOnly: true type: string suspended: default: false description: Whether SCEP is suspended for this org type: boolean type: object org_setting_scep_cert_provider: description: 'enum: `intune`, `jamf`, `byod`' enum: - intune - jamf - byod type: string strings: items: type: string type: array uniqueItems: true response_http403: additionalProperties: false properties: detail: examples: - You do not have permission to perform this action. type: string type: object org_setting_scep: properties: cert_providers: $ref: '#/components/schemas/org_setting_scep_cert_providers' enable: description: Whether SCEP is enabled for this org type: boolean suspended: default: false description: Whether SCEP is suspended for this org type: boolean type: object issued_client_certificates_results: additionalProperties: false properties: results: $ref: '#/components/schemas/issued_client_certificates' type: object response_http404: additionalProperties: false properties: id: type: string type: object issued_client_certificate: additionalProperties: false properties: cert_provider: examples: - byod type: string common_name: examples: - john@corp.com type: string created_time: description: When the certificate has been created examples: - '2025-08-18 10:10:30.949165+00:00' type: string device_id: $ref: '#/components/schemas/device_id' expire_time: description: When the certificate will expire examples: - '2026-08-18 10:06:00+00:00' type: string serial_number: examples: - 91984382552102771A2B3C4E5F224719956718003374658 type: string type: object org_setting_scep_cert_providers: description: List of SCEP cert providers, e.g. `intune`, `jamf`, `byod` items: $ref: '#/components/schemas/org_setting_scep_cert_provider' type: array response_http400: additionalProperties: false properties: detail: examples: - 'JSON parse error - Expecting value: line 5 column 8 (char 56)' type: string type: object device_id: examples: - 00000000-0000-0000-1000-d8695a0f9e61 format: uuid readOnly: true type: string issued_client_certificates: items: $ref: '#/components/schemas/issued_client_certificate' type: array 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 client_cert_serial_numbers: examples: - serial_numbers: - 13 00 13 03 23 EE D5 84 01 properties: serial_numbers: $ref: '#/components/schemas/strings' type: object response_http401: additionalProperties: false properties: detail: examples: - Authentication credentials were not provided. type: string type: object parameters: org_id: in: path name: org_id required: true schema: examples: - 000000ab-00ab-00ab-00ab-0000000000ab format: uuid type: string examples: IssuedClientCertificatesExample: value: results: - common_name: john@corp.com created_time: '2025-08-18 10:10:30.949165+00:00' device_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1 expire_time: '2026-08-18 10:06:00+00:00' serial_number: 91984382552102771A2B3C4E5F224719956718003374658 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. OrgScepExample: value: cert_providers: - jamf - intune - byod enabled: false intune_scep_url: https://scep.mistsys.com/api/v1/incoming/intune/:org_id/scep jamf_access_token: 1Z4QqEnCt05Jjt3TV5LgPJ4V_WL_RWnJ7dqVMLYHj81= jamf_scep_url: https://scep.mistsys.com/api/v1/incoming/intune/:org_id/scep jamf_webhook_url: https://scep.mistsys.com/api/v1/webhook/jamf/:org_id/scep responses: 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 OrgScep: content: application/json: examples: Example: $ref: '#/components/examples/OrgScepExample' schema: $ref: '#/components/schemas/org_setting_scep_response' application/vnd.api+json: examples: Example: $ref: '#/components/examples/OrgScepExample' schema: $ref: '#/components/schemas/org_setting_scep_response' description: OK 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 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 OK: description: OK 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 IssuedClientCertificates: content: application/json: examples: Example: $ref: '#/components/examples/IssuedClientCertificatesExample' schema: $ref: '#/components/schemas/issued_client_certificates_results' application/vnd.api+json: examples: Example: $ref: '#/components/examples/IssuedClientCertificatesExample' schema: $ref: '#/components/schemas/issued_client_certificates_results' description: OK 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