Mist Orgs Device Profiles API

While Templates / RF Templates / Network Templates / Gateway Templates provides powerful ways to control how a Device\'s configuration is derived for a Site. There are cases where you\'d like another level of control at the Org Level. A Device Profile contains a subset of Device\'s configurations you\'d like a device to have. It will be merged at runtime when we\'re provisioning an AP.

Operations 7

GET /api/v1/orgs/{org_id}/deviceprofiles listOrgDeviceProfiles #
POST /api/v1/orgs/{org_id}/deviceprofiles createOrgDeviceProfile #
DELETE /api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id} deleteOrgDeviceProfile #
GET /api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id} getOrgDeviceProfile #
PUT /api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id} updateOrgDeviceProfile #
POST /api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id}/assign assignOrgDeviceProfile #
POST /api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id}/unassign unassignOrgDeviceProfile #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/mist-orgs-device-profiles-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

mist-orgs-device-profiles-api-openapi.yml Raw ↑
openapi: 3.2.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 Orgs Device Profiles 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: 'While Templates / RF Templates / Network Templates / Gateway Templates provides powerful ways to control how a Device\''s configuration is derived for a Site. There are cases where you\''d like another level of control at the Org Level.

    A Device Profile contains a subset of Device\''s configurations you\''d like a device to have. It will be merged at runtime when we\''re provisioning an AP.'
  name: Orgs Device Profiles
paths:
  /api/v1/orgs/{org_id}/deviceprofiles:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: List org-level device profiles, which define reusable AP, switch, or gateway configuration subsets that can be applied to matching devices.
      operationId: listOrgDeviceProfiles
      parameters:
      - description: 'Filter results by one device profile type. Use a single value; comma-separated values are not supported. enum: `ap`, `gateway`, `switch`'
        in: query
        name: type
        schema:
          $ref: '#/components/schemas/device_type_default_ap'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/page'
      responses:
        '200':
          $ref: '#/components/responses/DeviceprofilesArray'
        '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: listOrgDeviceProfiles
      tags:
      - Orgs Device Profiles
    post:
      description: Create an org-level device profile containing reusable AP, switch, or gateway configuration.
      operationId: createOrgDeviceProfile
      requestBody:
        content:
          application/json:
            examples:
              deviceprofile_ap:
                value:
                  aeroscout:
                    enabled: false
                    host: aero.pvt.net
                    locate_connected: true
                  led:
                    brightness: 255
                    enabled: true
                  name: string
                  ntp_servers:
                  - 10.10.10.10
                  type: ap
                  usb_config:
                    cacert: string
                    channel: 3
                    enabled: true
                    host: 1.1.1.1
                    port: 0
                    type: imagotag
                    verify_cert: true
                    vlan_id: 1
              deviceprofile_hub:
                value:
                  dhcpd_config:
                    Corp-Mgmt:
                      dns_servers:
                      - 8.8.8.8
                      dns_suffix:
                      - stag.one
                      gateway: 10.3.172.9
                      ip_end: 10.3.172.99
                      ip_start: 10.3.172.50
                      type: local
                    Corp-lan:
                      dns_servers:
                      - 8.8.8.8
                      dns_suffix:
                      - stag.one
                      gateway: 10.3.171.9
                      ip_end: 10.3.171.99
                      ip_start: 10.3.171.50
                      type: local
                  dnsOverride: true
                  dns_servers:
                  - 10.3.20.201
                  - 10.3.51.222
                  - 1.1.1.1
                  dns_suffix:
                  - example.com
                  extra_routes:
                    10.101.0.0/16:
                      via: 10.3.100.10
                  ip_configs:
                    Corp-Core:
                      ip: 10.3.100.9
                      netmask: /24
                      type: static
                    Corp-Mgmt:
                      ip: 10.3.172.9
                      netmask: /24
                      type: static
                    Corp-lan:
                      ip: 10.3.171.9
                      netmask: /24
                      type: static
                  name: Demo
                  ntpOverride: true
                  ntp_servers:
                  - 10.3.51.222
                  path_preferences:
                    core:
                      paths:
                      - networks:
                        - Corp-Core
                        type: local
                      strategy: ordered
                    lab:
                      paths:
                      - networks:
                        - Corp-lan
                        type: local
                      strategy: ordered
                    mgmt:
                      paths:
                      - networks:
                        - Corp-Mgmt
                        type: local
                      strategy: ordered
                    untrust:
                      paths:
                      - name: wan
                        type: wan
                      strategy: ordered
                  port_config:
                    ge-0/0/0:
                      aggregated: false
                      ip_config:
                        gateway: 192.168.1.1
                        ip: 192.168.1.9
                        netmask: /24
                        type: static
                      name: wan
                      redundant: false
                      usage: wan
                      wan_type: broadband
                    ge-0/0/6-7:
                      ae_disable_lacp: false
                      ae_idx: '0'
                      ae_lacp_force_up: true
                      aggregated: true
                      networks:
                      - Corp-lan
                      - Corp-Mgmt
                      - Corp-Core
                      usage: lan
                  service_policies:
                  - action: allow
                    idp:
                      enabled: false
                    name: ITParis-Internal
                    path_preference: core
                    services:
                    - internal_dns
                    - drive
                    tenants:
                    - ITParis
                  type: gateway
            schema:
              $ref: '#/components/schemas/deviceprofile'
        description: Request Body
      responses:
        '200':
          $ref: '#/components/responses/Deviceprofile'
        '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: createOrgDeviceProfile
      tags:
      - Orgs Device Profiles
  /api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id}:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/deviceprofile_id'
    delete:
      description: Delete an org-level device profile and remove that reusable device configuration object from the organization.
      operationId: deleteOrgDeviceProfile
      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: deleteOrgDeviceProfile
      tags:
      - Orgs Device Profiles
    get:
      description: Retrieve the AP, switch, or gateway configuration stored in a specific org-level device profile.
      operationId: getOrgDeviceProfile
      responses:
        '200':
          $ref: '#/components/responses/Deviceprofile'
        '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: getOrgDeviceProfile
      tags:
      - Orgs Device Profiles
    put:
      description: Update the AP, switch, or gateway configuration stored in an org-level device profile.
      operationId: updateOrgDeviceProfile
      requestBody:
        content:
          application/json:
            examples:
              deviceprofile_ap:
                value:
                  aeroscout:
                    enabled: true
                    host: aero.pvt.net
                  disable_eth1: true
                  disable_module: true
                  mesh:
                    enabled: true
                    group: 1
                    role: base
                  name: string
                  poe_passthrough: true
                  radio_config:
                    ant_gain_24: 0
                    ant_gain_5: 0
                    band_24:
                      allow_rrm_disable: true
                      antenna_mode: default
                      bandwidth: 20
                      channel: 6
                      disabled: true
                      power: 8
                      preamble: auto
                    band_24_usage: '24'
                    band_5:
                      allow_rrm_disable: true
                      antenna_mode: default
                      bandwidth: 20
                      channel: 50
                      disabled: true
                      power_max: 8
                      power_min: 15
                      preamble: auto
                    scanning_enabled: true
                  type: ap
              deviceprofile_hub:
                value:
                  dhcpd_config:
                    Corp-Mgmt:
                      dns_servers:
                      - 8.8.8.8
                      dns_suffix:
                      - stag.one
                      gateway: 10.3.172.9
                      ip_end: 10.3.172.99
                      ip_start: 10.3.172.50
                      type: local
                    Corp-lan:
                      dns_servers:
                      - 8.8.8.8
                      dns_suffix:
                      - stag.one
                      gateway: 10.3.171.9
                      ip_end: 10.3.171.99
                      ip_start: 10.3.171.50
                      type: local
                  dnsOverride: true
                  dns_servers:
                  - 10.3.20.201
                  - 10.3.51.222
                  - 1.1.1.1
                  dns_suffix:
                  - example.com
                  extra_routes:
                    10.101.0.0/16:
                      via: 10.3.100.10
                  ip_configs:
                    Corp-Core:
                      ip: 10.3.100.9
                      netmask: /24
                      type: static
                    Corp-Mgmt:
                      ip: 10.3.172.9
                      netmask: /24
                      type: static
                    Corp-lan:
                      ip: 10.3.171.9
                      netmask: /24
                      type: static
                  name: ITParis
                  ntpOverride: true
                  ntp_servers:
                  - 10.3.51.222
                  path_preferences:
                    core:
                      paths:
                      - networks:
                        - Corp-Core
                        type: local
                      strategy: ordered
                    lab:
                      paths:
                      - networks:
                        - Corp-lan
                        type: local
                      strategy: ordered
                    mgmt:
                      paths:
                      - networks:
                        - Corp-Mgmt
                        type: local
                      strategy: ordered
                    untrust:
                      paths:
                      - name: wan
                        type: wan
                      strategy: ordered
                  port_config:
                    ge-0/0/0:
                      aggregated: false
                      ip_config:
                        gateway: 192.168.1.1
                        ip: 192.168.1.9
                        netmask: /24
                        type: static
                      name: wan
                      redundant: false
                      traffic_shaping:
                        enabled: false
                      usage: wan
                      wan_type: broadband
                    ge-0/0/6-7:
                      ae_disable_lacp: false
                      ae_idx: '0'
                      ae_lacp_force_up: true
                      aggregated: true
                      networks:
                      - Corp-lan
                      - Corp-Mgmt
                      - Corp-Core
                      usage: lan
                  service_policies:
                  - action: allow
                    idp:
                      enabled: false
                    name: ITParis-Internal
                    path_preference: core
                    services:
                    - internal_dns
                    - drive
                    tenants:
                    - ITParis
                  - action: deny
                    idp:
                      enabled: false
                    name: ITParis-internet
                    path_preference: untrust
                    services:
                    - internet_any
                    tenants:
                    - ITParis
                  type: gateway
            schema:
              $ref: '#/components/schemas/deviceprofile'
        description: Request Body
      responses:
        '200':
          $ref: '#/components/responses/Deviceprofile'
        '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: updateOrgDeviceProfile
      tags:
      - Orgs Device Profiles
  /api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id}/assign:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/deviceprofile_id'
    post:
      description: Assign Org Device Profile to Devices
      operationId: assignOrgDeviceProfile
      requestBody:
        content:
          application/json:
            examples:
              Example:
                value:
                  macs:
                  - 5c5b350e0001
                  - 5c5b350e0003
            schema:
              $ref: '#/components/schemas/mac_addresses'
        description: Request Body
      responses:
        '200':
          $ref: '#/components/responses/AssignSuccess'
        '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: assignOrgDeviceProfile
      tags:
      - Orgs Device Profiles
  /api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id}/unassign:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/deviceprofile_id'
    post:
      description: Unassign Org Device Profile from Devices
      operationId: unassignOrgDeviceProfile
      requestBody:
        content:
          application/json:
            examples:
              Example:
                value:
                  macs:
                  - 5c5b350e0001
                  - 5c5b350e0003
            schema:
              $ref: '#/components/schemas/mac_addresses'
        description: Request Body
      responses:
        '200':
          $ref: '#/components/responses/AssignSuccess'
        '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: unassignOrgDeviceProfile
      tags:
      - Orgs Device Profiles
components:
  schemas:
    switch_port_usage_dynamic_rule:
      additionalProperties: false
      description: Dynamic port usage rule evaluated against LLDP, RADIUS, or peer MAC attributes
      properties:
        description:
          description: Optional description of the rule
          type: string
        equals:
          description: Exact value that the selected source attribute must match
          type: string
        equals_any:
          $ref: '#/components/schemas/switch_port_usage_dynamic_rule_equals_any'
          description: List of values where any match satisfies this dynamic rule
        expression:
          description: '"[0:3]":"abcdef" -> "abc"

            "split(.)[1]": "a.b.c" -> "b"

            "split(-)[1][0:3]: "a1234-b5678-c90" -> "b56"'
          type: string
        src:
          $ref: '#/components/schemas/switch_port_usage_dynamic_rule_src'
          description: Source attribute evaluated by this dynamic rule
        usage:
          description: Port usage name to apply when this dynamic rule matches
          type: string
      required:
      - src
      type: object
    switch_mist_nac:
      additionalProperties: false
      description: Mist NAC RadSec settings for a switch
      properties:
        enabled:
          description: Whether Mist NAC RadSec is enabled for the switch
          type: boolean
        network:
          description: Switch network used for Mist NAC RadSec connectivity
          type: string
      type: object
    switch_dhcpd_config_property:
      additionalProperties: false
      description: DHCP server or relay configuration for one switch network. The property key is the network name. In case of DHCP relay, it's common for many networks to use the same dhcp relay, comma-separated network names can be used here (e.g. "net1,net2")
      properties:
        dns_servers:
          $ref: '#/components/schemas/switch_dhcpd_config_dns_servers'
          description: If `type`==`server` or `type6`==`server`, DNS servers advertised to DHCP clients
        dns_suffix:
          $ref: '#/components/schemas/switch_dhcpd_config_dns_suffix'
          description: If `type`==`server` or `type6`==`server`, DNS search suffixes advertised to DHCP clients
        fixed_bindings:
          $ref: '#/components/schemas/switch_dhcpd_config_fixed_bindings'
          description: If `type`==`server` or `type6`==`server`, fixed client bindings for DHCP service
        gateway:
          description: If `type`==`server` - optional, `ip` will be used if not provided
          examples:
          - 192.168.70.1
          type: string
        ip_end:
          description: If `type`==`server`, ending IPv4 address for the DHCP lease pool
          examples:
          - 192.168.70.200
          type: string
        ip_end6:
          description: If `type6`==`server`, ending IPv6 address for the DHCP lease pool
          examples:
          - 2607:f8b0:4005:808::ff
          type: string
        ip_start:
          description: If `type`==`server`, starting IPv4 address for the DHCP lease pool
          examples:
          - 192.168.70.100
          type: string
        ip_start6:
          description: If `type6`==`server`, starting IPv6 address for the DHCP lease pool
          examples:
          - 2607:f8b0:4005:808::2
          type: string
        lease_time:
          default: 86400
          description: In seconds, lease time has to be between 3600 [1hr] - 604800 [1 week], default is 86400 [1 day]
          maximum: 604800
          minimum: 3600
          type: integer
        options:
          $ref: '#/components/schemas/switch_dhcpd_config_options'
          description: If `type`==`server` or `type6`==`server`, custom DHCP options advertised to clients
        server_id_override:
          default: false
          description: "`server_id_override`==`true` means the device, when acts as DHCP relay and forwards DHCP responses from DHCP server to clients, \nshould overwrite the Sever Identifier option (i.e. DHCP option 54) in DHCP responses with its own IP address."
          type: boolean
        servers:
          $ref: '#/components/schemas/dhcpd_config_servers'
          description: If `type`==`relay`, upstream IPv4 DHCP servers
        servers6:
          $ref: '#/components/schemas/dhcpd_config_servers6'
          description: If `type6`==`relay`, upstream IPv6 DHCP servers
        type:
          $ref: '#/components/schemas/switch_dhcpd_config_type'
          description: IPv4 DHCP mode for this switch network
        type6:
          $ref: '#/components/schemas/switch_dhcpd_config_type6'
          description: IPv6 DHCP mode for this switch network
        vendor_encapsulated:
          $ref: '#/components/schemas/switch_dhcpd_config_vendor_options'
          description: If `type`==`server` or `type6`==`server`, vendor-encapsulated DHCP options advertised to clients
      type: object
    service_policy_skyatp_dns_tunnel_detection_profile:
      description: 'enum: `default`, `standard`, `strict`'
      enum:
      - default
      - standard
      - strict
      type: string
    dhcpd_config_property:
      additionalProperties: false
      description: DHCP server or relay configuration for one network
      properties:
        dns_servers:
          $ref: '#/components/schemas/dhcpd_config_dns_servers'
          description: If `type`==`local` or `type6`==`local`, DNS servers advertised to DHCP clients
        dns_suffix:
          $ref: '#/components/schemas/dhcpd_config_dns_suffix'
          description: If `type`==`local` or `type6`==`local`, DNS search suffixes advertised to DHCP clients
        fixed_bindings:
          $ref: '#/components/schemas/dhcpd_config_fixed_bindings'
          description: If `type`==`local` or `type6`==`local`, fixed client bindings for local DHCP service
        gateway:
          description: If `type`==`local` - optional, `ip` will be used if not provided
          examples:
          - 192.168.70.1
          type: string
        ip6_end:
          description: If `type6`==`local`, ending IPv6 address for the DHCP lease pool
          examples:
          - 2607:f8b0:4005:808::ff
          type: string
        ip6_start:
          description: If `type6`==`local`, starting IPv6 address for the DHCP lease pool
          examples:
          - 2607:f8b0:4005:808::2
          type: string
        ip_end:
          description: If `type`==`local`, ending IPv4 address for the DHCP lease pool
          examples:
          - 192.168.70.200
          type: string
        ip_start:
          description: If `type`==`local`, starting IPv4 address for the DHCP lease pool
          examples:
          - 192.168.70.100
          type: string
        lease_time:
          default: 86400
          description: In seconds, lease time has to be between 3600 [1hr] - 604800 [1 week], default is 86400 [1 day]
          maximum: 604800
          minimum: 3600
          type: integer
        options:
          $ref: '#/components/schemas/dhcpd_config_options'
          description: If `type`==`local` or `type6`==`local`, custom DHCP options advertised to clients
        server_id_override:
          default: false
          description: "`server_id_override`==`true` means the device, when acts as DHCP relay and forwards DHCP responses from DHCP server to clients, \nshould overwrite the Sever Identifier option (i.e. DHCP option 54) in DHCP responses with its own IP address."
          type: boolean
        servers:
          $ref: '#/components/schemas/dhcpd_config_servers'
          description: If `type`==`relay`, upstream IPv4 DHCP servers
        serversv6:
          $ref: '#/components/schemas/dhcpd_config_servers6'
          description: If `type6`==`relay`, upstream IPv6 DHCP servers
        type:
          $ref: '#/components/schemas/dhcpd_config_type'
          description: IPv4 DHCP mode for this network
        type6:
          $ref: '#/components/schemas/dhcpd_config_type6'
          description: IPv6 DHCP mode for this network
        vendor_encapsulated:
          $ref: '#/components/schemas/dhcpd_config_vendor_options'
          description: If `type`==`local` or `type6`==`local`, vendor-encapsulated DHCP options advertised to clients
      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
    ntp_servers:
      description: List of NTP servers specific to this device. By default, those in Site Settings will be used
      items:
        type: string
      type: array
    junos_port_config:
      additionalProperties: false
      description: Junos switch port configuration
      properties:
        ae_disable_lacp:
          description: To disable LACP support for the AE interface
          type: boolean
        ae_idx:
          description: Users could force to use the designated AE name
          type: integer
        ae_lacp_force_up:
          default: false
          description: 'If `aggregated`==`true`, sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only'
          type: boolean
        ae_lacp_passive:
          default: false
          description: If `aggregated`==`true`, sets LACP to passive mode on this AE interface; by default, active (fast) mode is used
          type: boolean
        ae_lacp_slow:
          description: To use slow timeout
          type: boolean
        aggregated:
          default: false
          description: Whether this port is configured as an aggregated Ethernet member
          type: boolean
        critical:
          default: false
          description: To generate port up/down alarm
          type: boolean
        description:
          description: Human-readable description for this Junos port
          type: string
        disable_autoneg:
          default: false
          description: If `speed` and `duplex` are specified, whether to disable autonegotiation
          type: boolean
        duplex:
          $ref: '#/components/schemas/junos_port_config_duplex'
          description: Link duplex mode for this Junos port
        dynamic_usage:
          description: Enable dynamic usage for this port. Set to `dynamic` to enable.
          type:
          - string
          - 'null'
        esilag:
          description: Whether this Junos port participates in an ESI-LAG
          type: boolean
        mtu:
          default: 1514
          description: Media maximum transmission unit (MTU) is the largest data unit that can be forwarded without fragmentation
          type: integer
        networks:
          description: List of network names. Required if `usage`==`inet`
          items:
            type: string
          type: array
        no_local_overwrite:
          default: true
          description: Prevent helpdesk to override the port config
          type: boolean
        poe_disabled:
          default: false
          description: Whether PoE capabilities are disabled for this Junos port
          type: boolean
        port_network:
          description: Required if `usage`==`vlan_tunnel`. Q-in-Q tunneling using All-in-one bundling. This also enables standard L2PT for interfaces that are not encapsulation tunnel interfaces and uses MAC rewrite operation. [View more information](https://www.juniper.net/documentation/us/en/software/junos/multicast-l2/topics/topic-map/q-in-q.html#id-understanding-qinq-tunneling-and-vlan-translation)
          type: string
        speed:
          $ref: '#/components/schemas/junos_port_config_speed'
          description: Link speed for this Junos port
        usage:
          description: Port usage name. For Q-in-Q, use `vlan_tunnel`. If EVPN is used, use `evpn_uplink`or `evpn_downlink`
          type: string
      required:
      - usage
      type: object
    vrf_extra_route6:
      additionalProperties: false
      description: Additional IPv6 static route for a VRF instance
      properties:
        via:
          description:

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