Juniper Mist AI Orgs Gateway Templates API

Gateway Template is applied to a site for gateway(s) in a site. When Templates are not used, Site Setting holds settings for multiple device types and they can differ to set device_type specific configs, use this whatever is defined under `gateway` will overwrite/shadow the one at root-level

Operations 5

GET /api/v1/orgs/{org_id}/gatewaytemplates listOrgGatewayTemplates #
POST /api/v1/orgs/{org_id}/gatewaytemplates createOrgGatewayTemplate #
DELETE /api/v1/orgs/{org_id}/gatewaytemplates/{gatewaytemplate_id} deleteOrgGatewayTemplate #
GET /api/v1/orgs/{org_id}/gatewaytemplates/{gatewaytemplate_id} getOrgGatewayTemplate #
PUT /api/v1/orgs/{org_id}/gatewaytemplates/{gatewaytemplate_id} updateOrgGatewayTemplate #

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-orgs-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-orgs-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 Orgs 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: 'Gateway Template is applied to a site for gateway(s) in a site.


    When Templates are not used, Site Setting holds settings for multiple device types and they can differ to set device_type specific configs, use this whatever is defined under `gateway` will overwrite/shadow the one at root-level'
  name: Orgs Gateway Templates
paths:
  /api/v1/orgs/{org_id}/gatewaytemplates:
    parameters:
    - $ref: '#/components/parameters/org_id'
    get:
      description: Get List of Org Gateway Templates
      operationId: listOrgGatewayTemplates
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/page'
      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: listOrgGatewayTemplates
      tags:
      - Orgs Gateway Templates
    post:
      description: Create Org Gateway Template
      operationId: createOrgGatewayTemplate
      requestBody:
        content:
          application/json:
            examples:
              Example:
                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: standalone
            schema:
              $ref: '#/components/schemas/gateway_template'
        description: Gateway Template
      responses:
        '200':
          $ref: '#/components/responses/Gatewaytemplate'
        '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: createOrgGatewayTemplate
      tags:
      - Orgs Gateway Templates
  /api/v1/orgs/{org_id}/gatewaytemplates/{gatewaytemplate_id}:
    parameters:
    - $ref: '#/components/parameters/org_id'
    - $ref: '#/components/parameters/gatewaytemplate_id'
    delete:
      description: Delete Organization Gateway Template
      operationId: deleteOrgGatewayTemplate
      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: deleteOrgGatewayTemplate
      tags:
      - Orgs Gateway Templates
    get:
      description: Get Organization Gateway Template details
      operationId: getOrgGatewayTemplate
      responses:
        '200':
          $ref: '#/components/responses/Gatewaytemplate'
        '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: getOrgGatewayTemplate
      tags:
      - Orgs Gateway Templates
    put:
      description: Update Organization Gateway Template
      operationId: updateOrgGatewayTemplate
      requestBody:
        content:
          application/json:
            examples:
              Example:
                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: standalone
            schema:
              $ref: '#/components/schemas/gateway_template'
        description: Gateway Template
      responses:
        '200':
          $ref: '#/components/responses/Gatewaytemplate'
        '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: updateOrgGatewayTemplate
      tags:
      - Orgs 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

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