Juniper Mist AI Sites Gateway Templates API

The API Endpoints for the Gateway Templates at the site level can be used to get the site derived networks, meaning the org level configuration with the site variables resolved..

Operations 1

GET /api/v1/sites/{site_id}/gatewaytemplates/derived listSiteGatewayTemplatesDerived #

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-ai-sites-gateway-templates-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-ai-sites-gateway-templates-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: tmunzer@juniper.net
    name: Thomas Munzer
  description: '> Version: **2604.1.1**

    >

    > Date: **May 13, 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 Sites Gateway Templates 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: The API Endpoints for the Gateway Templates at the site level can be used to get the site derived networks, meaning the org level configuration with the site variables resolved..
  name: Sites Gateway Templates
paths:
  /api/v1/sites/{site_id}/gatewaytemplates/derived:
    parameters:
    - $ref: '#/components/parameters/site_id'
    get:
      description: Get the list of derived Gateway Templates a Site
      operationId: listSiteGatewayTemplatesDerived
      parameters:
      - description: Whether resolve the site variables
        in: query
        name: resolve
        schema:
          type: boolean
      responses:
        '200':
          $ref: '#/components/responses/GatewaytemplatesArray'
        '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: listSiteGatewayTemplatesDerived
      tags:
      - Sites Gateway Templates
components:
  schemas:
    dhcpd_config_servers:
      description: If `type`==`relay`
      examples:
      - - 11.2.3.4
      items:
        type: string
      type: array
    wan_extra_routes6:
      additionalProperties: false
      properties:
        via:
          format: ipv6
          type: string
      type: object
    gateway_mgmt:
      additionalProperties: false
      description: Gateway Management settings
      properties:
        admin_sshkeys:
          $ref: '#/components/schemas/gateway_mgmt_admin_sshkeys'
        app_probing:
          $ref: '#/components/schemas/app_probing'
        app_usage:
          description: Consumes uplink bandwidth, requires WA license
          type: boolean
        auto_signature_update:
          $ref: '#/components/schemas/gateway_mgmt_auto_signature_update'
        config_revert_timer:
          default: 10
          description: Rollback timer for commit confirmed
          maximum: 30
          minimum: 1
          type: integer
        disable_console:
          default: false
          description: For SSR and SRX, disable console port
          type: boolean
        disable_oob:
          default: false
          description: For SSR and SRX, disable management interface
          type: boolean
        disable_usb:
          default: false
          description: For SSR and SRX, disable usb interface
          type: boolean
        fips_enabled:
          default: false
          type: boolean
        probe_hosts:
          $ref: '#/components/schemas/gateway_mgmt_probe_hosts'
        probe_hostsv6:
          $ref: '#/components/schemas/gateway_mgmt_probe_hostsv6'
        protect_re:
          $ref: '#/components/schemas/protect_re'
        root_password:
          description: SRX only
          format: password
          type: string
        security_log_source_address:
          examples:
          - 192.168.1.1
          format: ipv4
          type: string
        security_log_source_interface:
          examples:
          - ge-0/0/1.0
          type: string
      type: object
    service_policy_skyatp_dns_tunnel_detection_profile:
      description: 'enum: `default`, `standard`, `strict`'
      enum:
      - default
      - standard
      - strict
      type: string
    org_id:
      examples:
      - a97c1b22-a4e9-411e-9bfd-d8695a0f9e61
      format: uuid
      readOnly: true
      type: string
    tunnel_config_node_remote_ids:
      description: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec`
      items:
        type: string
      type: array
    dhcpd_config_property:
      additionalProperties: false
      properties:
        dns_servers:
          $ref: '#/components/schemas/dhcpd_config_dns_servers'
        dns_suffix:
          $ref: '#/components/schemas/dhcpd_config_dns_suffix'
        fixed_bindings:
          $ref: '#/components/schemas/dhcpd_config_fixed_bindings'
        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`
          examples:
          - 2607:f8b0:4005:808::ff
          type: string
        ip6_start:
          description: If `type6`==`local`
          examples:
          - 2607:f8b0:4005:808::2
          type: string
        ip_end:
          description: If `type`==`local`
          examples:
          - 192.168.70.200
          type: string
        ip_start:
          description: If `type`==`local`
          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'
        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'
        serversv6:
          $ref: '#/components/schemas/dhcpd_config_servers6'
        type:
          $ref: '#/components/schemas/dhcpd_config_type'
        type6:
          $ref: '#/components/schemas/dhcpd_config_type6'
        vendor_encapsulated:
          $ref: '#/components/schemas/dhcpd_config_vendor_options'
      type: object
    gateway_template_type:
      default: standalone
      description: 'enum: `spoke`, `standalone`'
      enum:
      - spoke
      - standalone
      examples:
      - standalone
      type: string
    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
    bgp_config:
      additionalProperties: false
      description: BFD is enabled when either bfd_minimum_interval or bfd_multiplier is configured
      properties:
        auth_key:
          description: Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`
          type: string
        bfd_minimum_interval:
          default: 350
          description: "Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`, when bfd_multiplier is configured alone. Default:\n  * 1000 if `type`==`external`\n  * 350 `type`==`internal`"
          maximum: 255000
          minimum: 1
          type:
          - integer
          - 'null'
        bfd_multiplier:
          default: 3
          description: Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`, when bfd_minimum_interval_is_configured alone
          maximum: 255
          minimum: 1
          type:
          - integer
          - 'null'
        disable_bfd:
          default: false
          description: Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. BFD provides faster path failure detection and is enabled by default
          type: boolean
        export:
          type: string
        export_policy:
          description: Default export policies if no per-neighbor policies defined
          type: string
        extended_v4_nexthop:
          description: Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. By default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this
          type: boolean
        graceful_restart_time:
          default: 0
          description: Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. `0` means disable
          maximum: 4095
          minimum: 0
          type: integer
        hold_time:
          default: 90
          description: Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. Default is 90.
          maximum: 65535
          minimum: 0
          type: integer
        import:
          type: string
        import_policy:
          description: Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. Default import policies if no per-neighbor policies defined
          type: string
        local_as:
          $ref: '#/components/schemas/bgp_local_as'
        neighbor_as:
          $ref: '#/components/schemas/bgp_as'
        neighbors:
          additionalProperties:
            $ref: '#/components/schemas/bgp_config_neighbors'
          description: Required if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. If per-neighbor as is desired. Property key is the neighbor address
          type: object
        networks:
          $ref: '#/components/schemas/bgp_config_networks'
        no_private_as:
          default: false
          description: Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. If true, we will not advertise private ASNs (AS 64512-65534) to this neighbor
          type: boolean
        no_readvertise_to_overlay:
          default: false
          description: Optional if `via`==`lan`, `via`==`tunnel` or `via`==`wan`. By default, we'll re-advertise all learned BGP routers toward overlay
          type: boolean
        tunnel_name:
          description: Optional if `via`==`tunnel`
          type: string
        type:
          $ref: '#/components/schemas/bgp_config_type'
        via:
          $ref: '#/components/schemas/bgp_config_via'
        vpn_name:
          description: Optional if `via`==`vpn`
          type: string
        wan_name:
          description: Optional if `via`==`wan`
          type: string
      required:
      - via
      type: object
    gateway_path_strategy:
      default: ordered
      description: 'enum: `ecmp`, `ordered`, `weighted`'
      enum:
      - ecmp
      - ordered
      - weighted
      type: string
    gateway_ip_configs:
      additionalProperties:
        $ref: '#/components/schemas/gateway_ip_config_property'
      description: Property key is the network name
      type: object
    gateway_port_reth_nodes:
      description: SSR only - supporting vlan-based redundancy (matching the size of `networks`)
      examples:
      - - node0
        - node1
      items:
        type: string
      type: array
    gw_routing_policy_term_matching_vpn_neighbor_mac:
      description: overlay-facing criteria (used for bgp_config where via=vpn)
      items:
        type: string
      type: array
    gateway_vrf_instances:
      additionalProperties:
        $ref: '#/components/schemas/gateway_vrf_instance'
      description: Property key is the network name
      examples:
      - CORP_VRF:
          networks:
          - CORP_NET
          - MGMT_NET
      type: object
    tunnel_config:
      additionalProperties: false
      properties:
        auto_provision:
          $ref: '#/components/schemas/tunnel_config_auto_provision'
        ike_lifetime:
          description: Only if `provider`==`custom-ipsec`
          type: integer
        ike_mode:
          $ref: '#/components/schemas/tunnel_config_ike_mode'
        ike_proposals:
          $ref: '#/components/schemas/tunnel_config_ike_proposals'
        ipsec_lifetime:
          description: If `provider`==`custom-ipsec`
          type: integer
        ipsec_proposals:
          $ref: '#/components/schemas/tunnel_config_ipsec_proposals'
        local_id:
          description: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`
          type: string
        local_subnets:
          $ref: '#/components/schemas/tunnel_config_local_subnets'
        mode:
          $ref: '#/components/schemas/tunnel_config_tunnel_mode'
        networks:
          $ref: '#/components/schemas/tunnel_config_networks'
        primary:
          $ref: '#/components/schemas/tunnel_config_node'
        probe:
          $ref: '#/components/schemas/tunnel_config_probe'
        protocol:
          $ref: '#/components/schemas/tunnel_config_protocol'
        provider:
          $ref: '#/components/schemas/tunnel_config_provider'
        psk:
          description: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`
          type: string
        remote_subnets:
          $ref: '#/components/schemas/tunnel_config_remote_subnets'
        secondary:
          $ref: '#/components/schemas/tunnel_config_node'
        version:
          $ref: '#/components/schemas/tunnel_config_version'
      type: object
    network_multicast_groups:
      additionalProperties:
        $ref: '#/components/schemas/network_multicast_group'
      description: Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32")
      type: object
    strings:
      items:
        type: string
      type: array
      uniqueItems: true
    tunnel_provider_options:
      additionalProperties: false
      properties:
        jse:
          $ref: '#/components/schemas/tunnel_provider_options_jse'
        prisma:
          $ref: '#/components/schemas/tunnel_provider_options_prisma'
        zscaler:
          $ref: '#/components/schemas/tunnel_provider_options_zscaler'
      type: object
    network_tenant_addresses:
      items:
        description: The user/tenant IP Address (i.e. "192.168.70.30"), an Subnet (i.e. "192.168.70.0/24") or a Variable (i.e. "{{myvar}}")
        examples:
        - 192.168.70.30
        type: string
      type: array
    network_source_nat:
      additionalProperties: false
      description: If `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub
      properties:
        external_ip:
          examples:
          - 172.16.0.8/30
          type: string
      type: object
    gateway_vrf_instance:
      additionalProperties: false
      examples:
      - networks:
        - CORP_NET
        - MGMT_NET
      properties:
        networks:
          $ref: '#/components/schemas/strings'
      type: object
    idp_profile_overwrites:
      items:
        $ref: '#/components/schemas/idp_profile_overwrite'
      type: array
    gw_routing_policy_term_matching_protocol_enum:
      description: 'enum: `aggregate`, `bgp`, `direct`, `ospf`, `static` (SRX Only)'
      enum:
      - aggregate
      - bgp
      - direct
      - ospf
      - static
      type: string
    tunnel_config_probe_type:
      default: icmp
      description: 'enum: `http`, `icmp`'
      enum:
      - http
      - icmp
      type: string
    allow_deny:
      description: 'enum: `allow`, `deny`'
      enum:
      - allow
      - deny
      type: string
    gateway_port_vpn_path_bfd_profile:
      default: broadband
      description: 'Only if the VPN `type`==`hub_spoke`. enum: `broadband`, `lte`'
      enum:
      - broadband
      - lte
      type: string
    gateway_path_preferences_path_networks:
      description: Required when `type`==`local`
      items:
        type: string
      type: array
    routing_policy_term_matching_prefix:
      description: zero or more criteria/filter can be specified to match the term, all criteria have to be met
      items:
        examples:
        - 192.168.0.0/16-30
        type: string
      type: array
    routing_policy_term_matching_community:
      items:
        examples:
        - '3900062'
        type: string
      type: array
    gateway_ip_config_property:
      additionalProperties: false
      properties:
        ip:
          format: ipv4
          type: string
        ip6:
          format: ipv6
          type: string
        netmask:
          examples:
          - /24
          type: string
        netmask6:
          examples:
          - 2001:db8:abcd:12::1
          type: string
        secondary_ips:
          $ref: '#/components/schemas/gateway_ip_config_property_second_ips'
        type:
          $ref: '#/components/schemas/ip_type'
        type6:
          $ref: '#/components/schemas/ip_type6'
      type: object
    gateway_path_type:
      description: 'enum: `local`, `tunnel`, `vpn`, `wan`'
      enum:
      - local
      - tunnel
      - vpn
      - wan
      type: string
    tunnel_config_probe:
      additionalProperties: false
      description: Only if `provider`==`custom-ipsec`
      properties:
        interval:
          description: How often to trigger the probe
          type: integer
        threshold:
          description: Number of consecutive misses before declaring the tunnel down
          type: integer
        timeout:
          description: Time within which to complete the connectivity check
          type: integer
        type:
          $ref: '#/components/schemas/tunnel_config_probe_type'
      type: object
    tunnel_config_ike_proposal:
      additionalProperties: false
      properties:
        auth_algo:
          $ref: '#/components/schemas/tunnel_config_auth_algo'
        dh_group:
          $ref: '#/components/schemas/tunnel_config_ike_dh_group'
        enc_algo:
          $ref: '#/components/schemas/tunnel_config_enc_algo'
      type: object
    tunnel_config_protocol:
      description: 'Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec`'
      enum:
      - gre
      - ipsec
      type: string
    bgp_config_networks:
      description: Optional if `via`==`lan`. List of networks where we expect BGP neighbor to connect to/from
      items:
        type: string
      type: array
    service_policy_secintel:
      additionalProperties: false
      description: SRX only
      properties:
        enabled:
          default: false
          type: boolean
        profile:
          $ref: '#/components/schemas/service_policy_secintel_profile'
        secintelprofile_id:
          description: org-level secintel Profile can be used, this takes precedence over 'profile'
          type: string
      type: object
    idp_profile_matching:
      additionalProperties: false
      properties:
        attack_name:
          $ref: '#/components/schemas/idp_profile_matching_attack_name'
        dst_subnet:
          $ref: '#/components/schemas/idp_profile_matching_dst_subnet'
        severity:
          $ref: '#/components/schemas/idp_profile_matching_severity'
      type: object
    dhcpd_config_vendor_option:
      additionalProperties: false
      properties:
        type:
          $ref: '#/components/schemas/dhcpd_config_vendor_option_type'
        value:
          type: string
      type: object
    network_internet_access_destination_nat:
      additionalProperties:
        $ref: '#/components/schemas/network_internet_access_destination_nat_property'
      description: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined
      type: object
    network_multicast_group:
      additionalProperties: false
      properties:
        rp_ip:
          description: RP (rendezvous point) IP Address
          type: string
      type: object
    gateway_port_lte_auth:
      default: none
      description: 'if `wan_type`==`lte`. enum: `chap`, `none`, `pap`'
      enum:
      - chap
      - none
      - pap
      type: string
    gw_routing_policy_term:
      additionalProperties: false
      properties:
        actions:
          $ref: '#/components/schemas/gw_routing_policy_term_action'
        matching:
          $ref: '#/components/schemas/gw_routing_policy_term_matching'
      type: object
    service_policy_skyatp_iot_device_policy:
      additionalProperties: false
      properties:
        enabled:
          type: boolean
      type: object
    routing_policy_term_action_prepend_as_path:
      description: When used as export policy, optional. By default, the local AS will be prepended, to change it. Can be a Variable (e.g. `{{as_path}}`)
      items:
        examples:
        - 65000 400
        type: string
      type: array
    gateway_templates:
      items:
        $ref: '#/components/schemas/gateway_template'
      type: array
    ip_type6:
      default: disabled
      description: 'enum: `autoconf`, `dhcp`, `disabled`, `static`'
      enum:
      - autoconf
      - dhcp
      - disabled
      - static
      examples:
      - static
      type: string
    gw_routing_policy_term_matching:
      additionalProperties: false
      description: zero or more criteria/filter can be specified to match the term, all criteria have to be met
      properties:
        as_path:
          $ref: '#/components/schemas/routing_policy_term_matching_as_path'
        community:
          $ref: '#/components/schemas/routing_policy_term_matching_community'
        network:
          $ref: '#/components/schemas/strings'
        prefix:
          $ref: '#/components/schemas/routing_policy_term_matching_prefix'
        protocol:
          $ref: '#/components/schemas/gw_routing_policy_term_matching_protocol'
        route_exists:
          $ref: '#/components/schemas/gw_routing_policy_term_matching_route_exists'
        vpn_neighbor_mac:
          $ref: '#/components/schemas/gw_routing_policy_term_matching_vpn_neighbor_mac'
        vpn_path:
          $ref: '#/components/schemas/gw_routing_policy_term_matching_vpn_path'
        vpn_path_sla:
          $ref: '#/components/schemas/gw_routing_policy_term_matching_vpn_path_sla'
      type: object
    dns_suffix:
      description: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting
      items:
        type: string
      type: array
    gateway_port_duplex:
      default: auto
      description: 'enum: `auto`, `full`, `half`'
      enum:
      - auto
      - full
      - half
      examples:
      - full
      type: string
    gateway_port_config:
      additionalProperties: false
      description: Gateway port config
      properties:
        ae_disable_lacp:
          default: false
          description: If `aggregated`==`true`. To disable LCP support for the AE interface
          type: boolean
        ae_idx:
          description: If `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127)
          type:
          - string
          - 'null'
        ae_lacp_force_up:
          default: false
          description: 'For SRX only, 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
        aggregated:
          default: false
          type: boolean
        critical:
          default: false
          description: To generate port up/down alarm, set it to true
          type: boolean
        description:
          description: Interface Description. Can be a variable (i.e. "{{myvar}}")
          type: string
        disable_autoneg:
          default: false
          type: boolean
        disabled:
          default: false
          description: Port admin up (true) / down (false)
          type: boolean
        dsl_type:
          $ref: '#/components/schemas/gateway_port_dsl_type'
        dsl_vci:
          default: 35
          description: If `wan_type`==`dsl`, 16 bit int
          type: integer
        dsl_vpi:
          default: 0
          description: If `wan_type`==`dsl`, 8 bit int
          type: integer
        duplex:
          $ref: '#/components/schemas/gateway_port_duplex'
        ip_config:
          $ref: '#/components/schemas/gateway_port_config_ip_config'
        lte_apn:
          description: If `wan_type`==`lte`
          type: string
        lte_auth:
          $ref: '#/components/schemas/gateway_port_lte_auth'
        lte_backup:
          type: boolean
        lte_password:
          description: If `wan_type`==`lte`
          type: string
        lte_username:
          description: If `wan_type`==`lte`
          type: string
        mtu:
          type: integer
        name:
          description: Name that we'll use to derive config
          type: string
        networks:
          $ref: '#/components/schemas/gateway_port_networks'
        outer_vlan_id:
          description: For Q-in-Q
          type: integer
        poe_disabled:
          default: false
          type: boolean
        poe_keep_state_when_reboot:
          default: false
          description: Whether Perpetual PoE capabilities are enabled for a port
          type: boolean
        port_network:
          description: Only for SRX and if `usage`==`lan`, the name of the Network to be used as the Untagged VLAN
          type: string
        preserve_dscp:
          default: true
          description: Whether to preserve dscp when sending traffic over VPN (SSR-only)
          type: boolean
        redundant:
          description: If HA mode
          type: boolean
        redundant_group:
          description: If HA mode, SRX Only - support redundancy-group. 1-128 for physical SRX, 1-64 for virtual SRX
          maximum: 128
          minimum: 1
          type: integer
        reth_idx:
          $ref: '#/components/schemas/gateway_port_config_reth_idx'
        reth_node:
          description: If HA mode
          type: string
        reth_nodes:
          $ref: '#/components/schemas/gateway_port_reth_nodes'
        speed:
          default: auto
          examples:
          - 1g
          type: string
        ssr_no_virtual_mac:
          default: false
          description: When SSR is running as VM, this is required on certain hosting platforms
          type: boolean
        svr_port_range:
          default: none
          description: For SSR only
          examples:
          - 60000-60005
          type: string
        traffic_shaping:
          $ref: '#/components/schemas/gateway_traffic_shaping'
        usage:
          $ref: '#/components/schemas/gateway_port_usage'
        vlan_id:
          $ref: '#/components/schemas/gateway_port_vlan_id_with_variable'
        vpn_paths:
          $ref: '#/components/schemas/gateway_port_vpn_paths'
        wan_arp_policer:
          $ref: '#/components/schemas/gateway_port_wan_arp_policer'
        wan_ext_ip:
          description: Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP
          examples:
          - 64.2.4.3
          type: string
        wan_ext_ip6:
          description: Only if `usage`==`wan`, optional. If spoke should reach this port by a different IPv6
          examples:
          - 2601:1700:43c0:dc0::10
          type: string
        wan_extra_routes:
          additionalProperties:
            $ref: '#/components/schemas/wan_extra_routes'
          description: Only if `usage`==`wan`. Property Key is the destination CIDR (e.g. "100.100.100.0/24")
          type: object
        wan_extra_routes6:
          additionalProperties:
            $ref: '#/components/schemas/wan_extra_routes6'
          description: Only if `usage`==`wan`. Property Key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64")
          type: object
        wan_networks:
          $ref: '#/components/schemas/gateway_port_config_wan_networks'
        wan_probe_override:
          $ref: '#/components/schemas/gateway_wan_probe_override'
        wan_source_nat:
          $ref: '#/components/schemas/gateway_port_wan_source_nat'
        wan_speedtest_mode:
          $ref: '#/components/schemas/gateway_port_config_wan_speedtest_mode'
        wan_type:
          $ref: '#/components/schemas/gateway_port_wan_type'
      required:
      - usage
      type: object
    routing_policy_term_matching_as_path:
      items:
        $ref: '#/components/schemas/bgp_as'
      type: array
    gateway_oob_ip_config_node1:
      additionalProperties: false
      description: For HA Cluster, node1 can have different IP Config
      properties:
        gateway:
          description: If `type`==`static`
          type: string
        ip:
          type: string
        netmask:
          description: Used only if `subnet` is not specified in `networks`
          type: string
        type:
          $ref: '#/components/schemas/ip_type'
        use_mgmt_vrf:
          default: false
          description: If supported on the platform. If enabled, DNS will be using this routing-instance, too
          type: boolean
        use_mgmt_vrf_for_host_out:
          default: false
          description: Whether to use `mgmt_junos` for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired
          type: boolean
        vlan_id:
          $ref: '#/components/schemas/gateway_port_vlan_id_with_variable'
      type: object
    network_tenants:
      additionalProperties:
        $ref: '#/components/schemas/network_tenant'
      description: Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}")
      type: object
    tunnel_config_remote_subnets:
      description: List of Remote protected subnet for policy-based IPSec negotiation
      items:
        type: string
      type: array
    gateway_extra_route6:
      additionalProperties: false
      properties:
        via:
          format: ipv6
          type: string
      type: object
    response_http403:
      additionalProperties: false
      properties:
        detail:
          examples:
          - You do not have permission to perform this action.
          type: string
      type: object
    dhcpd_config_type6:
      default: none
      description: 'enum: `local` (DHCP Server), `none`, `relay` (DHCP Relay)'
      enum:
      - local
      - none
      - relay
      

# --- truncated at 32 KB (100 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/mist-ai/refs/heads/main/openapi/mist-ai-sites-gateway-templates-api-openapi.yml