Mist Orgs Wlans API

An Org Wlan is a wireless local area network that is configured at the Org level and applied to a WLAN template. It allows for the creation and management of wireless network settings, such as SSIDs (service set identifiers), authentication settings, VLAN configurations, etc... Org WLANs are created and managed at the org level and can only be referenced and used within the WLAN Templates.

OpenAPI Specification

mist-orgs-wlans-api-openapi.yml Raw ↑
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 Orgs Wlans 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: 'An Org Wlan is a wireless local area network that is configured at the Org level and applied to a WLAN template.


    It allows for the creation and management of wireless network settings, such as SSIDs (service set identifiers), authentication settings, VLAN configurations, etc...


    Org WLANs are created and managed at the org level and can only be referenced and used within the WLAN Templates.'
  name: Orgs Wlans
paths:
  /api/v1/orgs/{org_id}/wlans:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Get List of Org Wlans
      operationId: listOrgWlans
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/page'
      responses:
        '200':
          $ref: '#/components/responses/WlansArray'
        '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: listOrgWlans
      tags:
      - Orgs Wlans
    post:
      description: Create Org Wlan
      operationId: createOrgWlan
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/wlan'
        description: Request Body
      responses:
        '200':
          $ref: '#/components/responses/Wlan'
        '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: createOrgWlan
      tags:
      - Orgs Wlans
  /api/v1/orgs/{org_id}/wlans/{wlan_id}:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/wlan_id'
    delete:
      description: Delete Org WLAN
      operationId: deleteOrgWlan
      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: deleteOrgWlan
      tags:
      - Orgs Wlans
    get:
      description: Get Org Wlan Detail
      operationId: getOrgWLAN
      responses:
        '200':
          $ref: '#/components/responses/Wlan'
        '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: getOrgWLAN
      tags:
      - Orgs Wlans
    put:
      description: Update Org Wlan
      operationId: updateOrgWlan
      requestBody:
        content:
          application/json:
            examples:
              Example:
                value:
                  allow_ipv6_ndp: true
                  allow_mdns: false
                  allow_ssdp: false
                  arp_filter: false
                  band_steer: false
                  band_steer_force_band5: false
                  bands:
                  - '24'
                  - '5'
                  block_blacklist_clients: false
                  bonjour:
                    additional_vlan_ids: 10,20
                    enabled: false
                    services:
                      airplay:
                        radius_groups:
                        - teachers
                        scope: same_ap
                  client_limit_down: 1000
                  client_limit_down_enabled: false
                  client_limit_up: 512
                  client_limit_up_enabled: false
                  disable_11ax: false
                  disable_ht_vht_rates: false
                  disable_uapsd: false
                  disable_v1_roam_notify: false
                  disable_v2_roam_notify: false
                  disable_wmm: false
                  dynamic_vlan:
                    default_vlan_id: 999
                    enabled: false
                    local_vlan_ids:
                    - 1
                    type: airespace-interface-name
                    vlans:
                      '131': default
                      '322': fast,video
                  enable_local_keycaching: false
                  enable_wireless_bridging: false
                  enabled: true
                  fast_dot1x_timers: false
                  hide_ssid: false
                  hostname_ie: false
                  ssid: demo
            schema:
              $ref: '#/components/schemas/wlan'
        description: Request Body
      responses:
        '200':
          $ref: '#/components/responses/Wlan'
        '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: updateOrgWlan
      tags:
      - Orgs Wlans
  /api/v1/orgs/{org_id}/wlans/{wlan_id}/portal_image:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/wlan_id'
    delete:
      description: Delete Org WLAN Portal Image
      operationId: deleteOrgWlanPortalImage
      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: deleteOrgWlanPortalImage
      tags:
      - Orgs Wlans
    post:
      description: Upload Org WLAN Portal Image
      operationId: uploadOrgWlanPortalImage
      requestBody:
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/image_import'
        description: Request Body
      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: uploadOrgWlanPortalImage
      tags:
      - Orgs Wlans
  /api/v1/orgs/{org_id}/wlans/{wlan_id}/portal_template:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/wlan_id'
    put:
      description: 'Update a Portal Template


        #### Sponsor Email Template

        Sponsor Email Template supports following template variables:


        | **Name** | **Description** |

        | --- | --- |

        | approve_url | Renders URL to approve the request; optionally &minutes=N query param can be appended to change the Authorization period of the guest, where N is a valid integer denoting number of minutes a guest remains authorized |

        | deny_url | Renders URL to reject the request |

        | guest_email | Renders Email ID of the guest |

        | guest_name | Renders Name of the guest |

        | field1 | Renders value of the Custom Field 1 |

        | field2 | Renders value of the Custom Field 2 |

        | company | Renders value of the Company field |

        | sponsor_link_validity_duration | Renders validity time of the request (i.e. Approve/Deny URL) |

        | auth_expire_minutes | Renders Wlan-level configured Guest Authorization Expiration time period (in minutes), If not configured then default (1 day in minutes) |'
      operationId: updateOrgWlanPortalTemplate
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/wlan_portal_template'
        description: Request Body
      responses:
        '200':
          $ref: '#/components/responses/Portaltemplate'
        '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: updateOrgWlanPortalTemplate
      tags:
      - Orgs Wlans
components:
  schemas:
    vlan_id_with_variable:
      description: VLAN ID, either numeric or expressed as a template variable string
      oneOf:
      - type: string
      - maximum: 4094
        minimum: 1
        type: integer
    wlan_portal_sponsors:
      description: Object of allowed sponsors email with name. Required if `sponsor_enabled` is `true` and `sponsor_email_domains` is empty. Property key is the sponsor email, Property value is the sponsor name. List of email allowed for backward compatibility
      oneOf:
      - $ref: '#/components/schemas/wlan_portal_sponsors_list'
      - $ref: '#/components/schemas/wlan_portal_sponsors_object'
    wlan_limit:
      anyOf:
      - maximum: 999000
        minimum: 1
        type: integer
      - type: string
      description: In kbps, value from 1 to 999000
    wlan_airwatch:
      additionalProperties: false
      description: AirWatch integration settings for the WLAN
      properties:
        api_key:
          default: ''
          description: API key used to authenticate to the AirWatch service
          examples:
          - aHhlbGxvYXNkZmFzZGZhc2Rmc2RmCg=="
          type: string
        console_url:
          default: ''
          description: Base console URL of the AirWatch deployment
          examples:
          - https://hs1.airwatchportals.com
          type: string
        enabled:
          default: false
          description: Whether AirWatch integration is enabled for the WLAN
          type: boolean
        password:
          default: ''
          description: AirWatch integration account password for this WLAN
          examples:
          - user1
          format: password
          type: string
        username:
          default: ''
          description: AirWatch integration account username for this WLAN
          examples:
          - test123
          type: string
      type: object
    wlan_auth_owe:
      default: disabled
      description: 'if `type`==`open`. enum: `disabled`, `enabled` (means transition mode), `required`'
      enum:
      - disabled
      - enabled
      - required
      type: string
    id:
      description: Unique ID of the object instance in the Mist Organization
      examples:
      - 53f10664-3ce8-4c27-b382-0ef66432349f
      format: uuid
      readOnly: true
      type: string
    wlan_vlan_ids_string:
      description: If `vlan_enabled`==`true` and `vlan_pooling`==`true`. List of VLAN IDs to be used in the VLAN Pool
      examples:
      - 1,2
      type: string
    wlan_datarates_legacy:
      description: If `template`==`custom`. List of supported rates (IE=1) and extended supported rates (IE=50) for custom template, append ‘b’ at the end to indicate a rate being basic/mandatory. If `template`==`custom` is configured and legacy does not define at least one basic rate, it will use `no-legacy` default values
      examples:
      - - '6'
        - '9'
        - '12'
        - '18'
        - 24b
        - '36'
        - '48'
        - '54'
      items:
        $ref: '#/components/schemas/wlan_datarates_legacy_item'
      type: array
    wlan_bands:
      default:
      - '24'
      - '5'
      - '6'
      description: 'List of radios that the wlan should apply to. enum: `24`, `5`, `5-dedicated`, `5-selectable`, `6`, `6-dedicated`, `6-selectable`'
      items:
        $ref: '#/components/schemas/dot11_band'
      type: array
    wlan_portal_sponsor_email_domains:
      description: List of domain allowed for sponsor email. Required if `sponsor_enabled` is `true` and `sponsors` is empty.
      examples:
      - - reserved.net
        - reserved.org
      items:
        type: string
      type: array
    wlan_qos:
      additionalProperties: false
      description: QoS override settings for WLAN client traffic
      properties:
        class:
          $ref: '#/components/schemas/wlan_qos_class'
          description: QoS traffic class applied when WLAN QoS override is enabled
        overwrite:
          default: false
          description: Whether to overwrite QoS
          type: boolean
      type: object
    radius_acct_server:
      additionalProperties: false
      description: RADIUS accounting server settings
      properties:
        host:
          description: Address or hostname of the RADIUS accounting server
          examples:
          - 1.2.3.4
          type: string
        keywrap_enabled:
          description: Whether RADIUS keywrap is enabled for messages sent to this accounting server
          type: boolean
        keywrap_format:
          $ref: '#/components/schemas/radius_keywrap_format'
          description: Encoding format for RADIUS keywrap KEK and MACK values
        keywrap_kek:
          description: RADIUS keywrap key encryption key (KEK)
          examples:
          - '1122334455'
          type: string
        keywrap_mack:
          description: RADIUS keywrap message authentication code key (MACK)
          examples:
          - '1122334455'
          type: string
        port:
          $ref: '#/components/schemas/radius_acct_port'
          description: UDP port used by the RADIUS accounting server
        secret:
          description: Shared secret used with this RADIUS accounting server
          examples:
          - testing123
          format: password
          type: string
      required:
      - host
      - secret
      type: object
    wlan_portal_sms_provider:
      default: manual
      description: 'Optional if `sms_enabled`==`true`. enum: `broadnet`, `clickatell`, `gupshup`, `manual`, `puzzel`, `smsglobal`, `telstra`, `twilio`'
      enum:
      - broadnet
      - clickatell
      - gupshup
      - manual
      - puzzel
      - telstra
      - twilio
      - smsglobal
      examples:
      - twilio
      type: string
    radsec_proxy_hosts:
      description: Default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site Mist Edges) are used irrespective of `use_site_mxedge`
      items:
        examples:
        - mxedge1.local
        type: string
      type: array
    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
    wlan_hotspot20_operators_item:
      description: 'enum: `ameriband`, `att`, `boingo`, `charter`, `eduroam`, `global_reach`, `google`, `hughes_systique`, `openroaming_legacy`, `openroaming_settled`, `openroaming_settlement_free`, `single_digits`, `tmobile`, `verizon`'
      enum:
      - ameriband
      - att
      - boingo
      - charter
      - eduroam
      - global_reach
      - google
      - hughes_systique
      - openroaming_legacy
      - openroaming_settled
      - openroaming_settlement_free
      - single_digits
      - tmobile
      - verizon
      type: string
    dscp:
      anyOf:
      - type: string
      - maximum: 63
        minimum: 0
        type: integer
      description: DSCP value range between 0 and 63
    additional_vlan_ids_array:
      description: Additional VLAN IDs represented as an array
      items:
        $ref: '#/components/schemas/vlan_id_with_variable'
      type: array
    wlan_hotspot20_operators:
      description: List of operators to support
      examples:
      - - google
        - att
      items:
        $ref: '#/components/schemas/wlan_hotspot20_operators_item'
      type: array
    wlan_app_limit:
      additionalProperties: false
      description: Bandwidth limiting for apps (applies to up/down)
      properties:
        apps:
          additionalProperties:
            type: integer
          default: {}
          description: "Map from app key to bandwidth in kbps. \nProperty key is the app key, defined in Get Application List"
          examples:
          - dropbox: 300
            netflix: 60
          type: object
        enabled:
          default: false
          description: Whether application bandwidth limits are enabled for this WLAN
          type: boolean
        wxtag_ids:
          additionalProperties:
            type: integer
          default: {}
          description: Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id`
          examples:
          - f99862d9-2726-931f-7559-3dfdf5d070d3: 30
          type: object
      type: object
    radsec_server:
      additionalProperties: false
      description: External RadSec server settings
      properties:
        host:
          description: Address or hostname of the RadSec server
          examples:
          - 1.1.1.1
          type: string
        port:
          description: TCP port used by the RadSec server
          examples:
          - 1812
          maximum: 65535
          minimum: 1
          type: integer
      type: object
    site_id:
      description: Unique identifier of a Mist site
      examples:
      - 441a1214-6928-442a-8e92-e1d34b8ec6a6
      format: uuid
      readOnly: true
      type: string
    msp_id:
      description: Managed service provider identifier
      examples:
      - b9d42c2e-88ee-41f8-b798-f009ce7fe909
      format: uuid
      readOnly: true
      type: string
    wlan_vlan_id_with_variable:
      description: WLAN VLAN ID, either numeric, a variable string, or null
      oneOf:
      - type: string
      - maximum: 4094
        minimum: 1
        type: integer
      - type: 'null'
    wlan_datarates_template:
      default: compatible
      description: "Data Rates template to apply. enum: \n  * `no-legacy`: no 11b\n  * `compatible`: all, like before, default setting that Broadcom/Atheros used\n  * `legacy-only`: disable 802.11n and 802.11ac\n  * `high-density`: no 11b, no low rates\n  * `custom`: user defined"
      enum:
      - compatible
      - legacy-only
      - custom
      - no-legacy
      - high-density
      type:
      - string
      - 'null'
    wlan_auth:
      additionalProperties: false
      description: WLAN client authentication settings
      properties:
        anticlog_threshold:
          default: 16
          description: SAE anti-clogging token threshold
          examples:
          - 16
          maximum: 32
          minimum: 16
          type: integer
        eap_reauth:
          default: false
          description: Whether to trigger EAP reauth when the session ends
          type: boolean
        enable_beacon_protection:
          default: false
          description: Enable Beacon Protection; default is false for better compatibility
          type: boolean
        enable_gcmp256:
          default: false
          description: Enable GCMP-256 encryption suite; default is false for better compatibility
          type: boolean
        enable_mac_auth:
          default: false
          description: Whether to enable MAC Auth, uses the same auth_servers
          type: boolean
        key_idx:
          default: 1
          description: When `type`==`wep`, index of the WEP key used as the default transmit key
          maximum: 4
          minimum: 1
          type: integer
        keys:
          $ref: '#/components/schemas/wlan_auth_keys'
          description: When `type`==`wep`, WEP keys configured for this WLAN
        multi_psk_only:
          default: false
          description: When `type`==`psk`, whether to only use multi_psk
          type: boolean
        owe:
          $ref: '#/components/schemas/wlan_auth_owe'
          description: When `type`==`open`, Opportunistic Wireless Encryption mode for this WLAN
        pairwise:
          $ref: '#/components/schemas/wlan_auth_pairwise'
          description: When `type`==`psk` or `type`==`eap`, pairwise cipher suites allowed for this WLAN
        private_wlan:
          default: false
          description: When `multi_psk_only`==`true`, whether private wlan is enabled
          type: boolean
        psk:
          default: ''
          description: When `type`==`psk`, 8-64 characters, or 64 hex characters
          examples:
          - foryoureyesonly
          maxLength: 64
          minLength: 8
          type:
          - string
          - 'null'
        type:
          $ref: '#/components/schemas/wlan_auth_type'
          description: Authentication mode used by this WLAN
        wep_as_secondary_auth:
          default: false
          description: Enable WEP as secondary auth
          type: boolean
      required:
      - type
      type: object
    wlan_portal_template_setting_locale:
      additionalProperties: false
      description: Localized portal template strings for a specific language
      properties:
        authButtonAmazon:
          description: Label for Amazon auth button
          type: string
        authButtonAzure:
          description: Label for Azure auth button
          type: string
        authButtonEmail:
          description: Label for Email auth button
          type: string
        authButtonFacebook:
          description: Label for Facebook auth button
          type: string
        authButtonGoogle:
          description: Label for Google auth button
          type: string
        authButtonMicrosoft:
          description: Label for Microsoft auth button
          type: string
        authButtonPassphrase:
          description: Label for passphrase auth button
          type: string
        authButtonSms:
          description: Label for SMS auth button
          type: string
        authButtonSponsor:
          description: Label for Sponsor auth button
          type: string
        authLabel:
          description: Localized heading text displayed above portal authentication options
          type: string
        backLink:
          description: Label of the link to go back to /logon
          type: string
        companyError:
          description: Error message when company not provided
          type: string
        companyLabel:
          description: Localized label displayed for the company input field
          type: string
        emailAccessDomainError:
          description: Error message when a user has valid social login but doesn't match specified email domains.
          type: string
        emailCancel:
          description: Label for cancel confirmation code submission using email auth
          type: string
        emailCodeCancel:
          description: Localized link text for requesting help when the email access code was not received
          type: string
        emailCodeError:
          description: Localized error message shown when the alternate email address for access-code delivery is invalid
          type: string
        emailCodeFieldLabel:
          description: Localized label for the email access-code input field
          type: string
        emailCodeMessage:
          description: Localized instructional text shown before entering the email access code
          type: string
        emailCodeSubmit:
          description: Localized button label for submitting the email access code
          type: string
        emailCodeTitle:
          description: Localized title shown on the email access-code entry page
          type: string
        emailError:
          description: Error message when email not provided
          type: string
        emailFieldLabel:
          description: Localized label for the email address input field
          type: string
        emailLabel:
          description: Localized label displayed for the email input field
          type: string
        emailMessage:
          description: Localized instructional text explaining email access-code delivery
          type: string
        emailSubmit:
          description: Label for confirmation code submit button using email auth
          type: string
        emailTitle:
          description: Title for the Email registration
          type: string
        field1Error:
          description: Error message when field1 not provided
          type: string
        field1Label:
          description: Localized label for custom field 1 input
          type: string
        field2Error:
          description: Error message when field2 not provided
          type: string
        field2Label:
          description: Localized label for custom field 2 input
          type: string
        field3Error:
          description: Error message when field3 not provided
          type: string
        field3Label:
          description: Localized label for custom field 3 input
          type: string
        field4Error:
          description: Error message when field4 not provided
          type: string
        field4Label:
          description: Localized label for custom field 4 input
          type: string
        marketingPolicyLink:
          description: label of the link to go to /marketing_policy
          type: string
        marketingPolicyOptIn:
          description: Whether marketing policy optin is enabled
          type: boolean
        marketingPolicyOptInLabel:
          description: label for marketing optin
          type: string
        marketingPolicyOptInText:
          description: Localized text of the marketing policy opt-in content
          type: string
        message:
          description: Localized main message displayed on the guest portal sign-in page
          type: string
        nameError:
          description: Error message when name not provided
          type: string
        nameLabel:
          description: Localized label displayed for the name input field
          type: string
        optoutLabel:
          description: Label for Do Not Store My Personal Information
          type: string
        pageTitle:
          description: Localized browser or page title shown for the guest portal
          type: string
        passphraseCancel:
          description: Label for the Passphrase cancel button
          type: string
        passphraseError:
          description: Error message when invalid passphrase is provided
          type: string
        passphraseLabel:
          description: Localized label for the passphrase input field
          type: string
        passphraseMessage:
          description: Localized instructional text shown on the passphrase sign-in page
          type: string
        passphraseSubmit:
          description: Label for the Passphrase submit button
          type: string
        passphraseTitle:
          description: Title for passphrase details page
          type: string
        privacyPolicyAcceptLabel:
          description: Prefix of the label of the link to go to Privacy Policy
          type: string
        privacyPolicyError:
          description: Error message when Privacy Policy not accepted
          type: string
        privacyPolicyLink:
          description: Label of the link to go to Privacy Policy
          type: string
        privacyPolicyText:
          description: Text of the Privacy Policy
          type: string
        requiredFieldLabel:
          description: Localized text used to mark a form field as required
          type: string
        signInLabel:
          description: Label of the button to signin
          type: string
        smsCarrierDefault:
          description: Localized default option text shown in the SMS carrier selector
          type: string
        smsCarrierError:
          description: Localized error message shown when no mobile carrier is selected
          type: string
        smsCarrierFieldLabel:
          description: Label for mobile carrier drop-down list
          type: string
        smsCodeCancel:
          description: Label for cancel confirmation code submission
          type: string
        smsCodeError:
          description: Error message when confirmation code is invalid
          type: string
        smsCodeFieldLabel:
          description: Localized label for the SMS confirmation-code input field
          type: string
        smsCodeMessage:
          description: Localized instructional text shown before entering the SMS access code
          type: string
        smsCodeSubmit:
          description: Label for confirmation code submit button
          type: string
        smsCodeTitle:
          description: Localized title shown on the SMS access-code entry page
          type: string
        smsCountryFieldLabel:
          description: Localized label for the SMS country-code input field
          type: string
        smsCountryFormat:
          description: Localized example country code format shown for SMS authentication
          type: string
        smsHaveAccessCode:
          description: Label for checkbox to specify that the user has access code
          type: string
        smsMessageFormat:
          description: Format of access code sms message. {{code}} and {{duration}} are placeholders and should be retained as is.
          type: st

# --- truncated at 32 KB (144 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mist/refs/heads/main/openapi/mist-orgs-wlans-api-openapi.yml