Perimeter 81 Enhanced Route Tables API

The Enhanced Route Tables API allows you to manage and configure enhanced route tables of static and dynamic tunnels.

Business capability
IT Infrastructure Management BC-600.50

Operations 6

GET /v2.3/networks/enhanced/{networkId}/route-table Get route table #
POST /v2.3/networks/enhanced/{networkId}/route-table/static Create static route #
POST /v2.3/networks/enhanced/{networkId}/route-table/dynamic Create dynamic route #
GET /v2.3/networks/enhanced/{networkId}/route-table/{routeId} Get route entry #
PUT /v2.3/networks/enhanced/{networkId}/route-table/{routeId} Update route entry #
DELETE /v2.3/networks/enhanced/{networkId}/route-table/{routeId} Delete route entry #

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/perimeter-81-enhanced-route-tables-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

perimeter-81-enhanced-route-tables-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 2.3.0
  title: Harmony SASE Public Enhanced Route Tables API
  description: The YAML for Harmony SASE Public API.
  contact: {}
servers:
- description: SwaggerHub API Auto Mocking
  url: https://virtserver.swaggerhub.com/perimeter81/public-api-yaml/1.0.0
- description: Harmony SASE API US
  url: https://api.perimeter81.com/api/rest
- description: Harmony SASE API EU
  url: https://api.eu.sase.checkpoint.com/api/rest
- description: Harmony SASE API Australia
  url: https://api.au.sase.checkpoint.com/api/rest
- description: Harmony SASE API India
  url: https://api.in.sase.checkpoint.com/api/rest
security:
- bearer: []
tags:
- name: Enhanced Route Tables
  description: The Enhanced Route Tables API allows you to manage and configure enhanced route tables of static and dynamic tunnels.
paths:
  /v2.3/networks/enhanced/{networkId}/route-table:
    get:
      tags:
      - Enhanced Route Tables
      summary: Get route table
      description: Get the complete route table for an enhanced network
      operationId: getEnhancedRouteTable
      parameters:
      - $ref: '#/components/parameters/networkId'
      - name: page
        in: query
        required: false
        description: Specifies the current page of the paginated result set
        schema:
          type: integer
      - name: limit
        in: query
        required: false
        description: Defines the number of results per page
        schema:
          type: integer
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/EnhancedRouteTable'
                  itemsTotal:
                    type: number
                  page:
                    type: number
                  totalPage:
                    type: number
                required:
                - data
                - itemsTotal
                - page
                - totalPage
        '401':
          $ref: '#/components/responses/401_Unauthorized'
        '403':
          $ref: '#/components/responses/403_Forbidden'
        '404':
          $ref: '#/components/responses/404_NotFound'
  /v2.3/networks/enhanced/{networkId}/route-table/static:
    post:
      tags:
      - Enhanced Route Tables
      summary: Create static route
      description: Create a new static route entry. The selected static tunnel must not already have a route table.
      operationId: createStaticRoute
      parameters:
      - $ref: '#/components/parameters/networkId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnhancedRouteTableStaticCreate'
      responses:
        '202':
          $ref: '#/components/responses/202_Accepted'
        '400':
          $ref: '#/components/responses/400_BadRequest'
        '401':
          $ref: '#/components/responses/401_Unauthorized'
        '403':
          $ref: '#/components/responses/403_Forbidden'
        '404':
          $ref: '#/components/responses/404_NotFound'
  /v2.3/networks/enhanced/{networkId}/route-table/dynamic:
    post:
      tags:
      - Enhanced Route Tables
      summary: Create dynamic route
      description: Create a new dynamic route entry. The selected dynamic tunnel must not already have a route table.
      operationId: createDynamicRoute
      parameters:
      - $ref: '#/components/parameters/networkId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnhancedRouteTableDynamicCreate'
      responses:
        '202':
          $ref: '#/components/responses/202_Accepted'
        '400':
          $ref: '#/components/responses/400_BadRequest'
        '401':
          $ref: '#/components/responses/401_Unauthorized'
        '403':
          $ref: '#/components/responses/403_Forbidden'
        '404':
          $ref: '#/components/responses/404_NotFound'
  /v2.3/networks/enhanced/{networkId}/route-table/{routeId}:
    get:
      tags:
      - Enhanced Route Tables
      summary: Get route entry
      description: Get a specific route entry
      operationId: getRouteEntry
      parameters:
      - $ref: '#/components/parameters/networkId'
      - $ref: '#/components/parameters/routeId'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnhancedRouteTable'
        '401':
          $ref: '#/components/responses/401_Unauthorized'
        '403':
          $ref: '#/components/responses/403_Forbidden'
        '404':
          $ref: '#/components/responses/404_NotFound'
    put:
      tags:
      - Enhanced Route Tables
      summary: Update route entry
      description: Update a specific route entry. Only non-propagated route tables can be edited.
      operationId: updateRouteEntry
      parameters:
      - $ref: '#/components/parameters/networkId'
      - $ref: '#/components/parameters/routeId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RouteTableUpdate'
      responses:
        '202':
          $ref: '#/components/responses/202_Accepted'
        '400':
          $ref: '#/components/responses/400_BadRequest'
        '401':
          $ref: '#/components/responses/401_Unauthorized'
        '403':
          $ref: '#/components/responses/403_Forbidden'
        '404':
          $ref: '#/components/responses/404_NotFound'
    delete:
      tags:
      - Enhanced Route Tables
      summary: Delete route entry
      description: Delete a specific route entry. Only non-propagated route tables can be deleted.
      operationId: deleteRouteEntry
      parameters:
      - $ref: '#/components/parameters/networkId'
      - $ref: '#/components/parameters/routeId'
      responses:
        '202':
          $ref: '#/components/responses/202_Accepted'
        '401':
          $ref: '#/components/responses/401_Unauthorized'
        '403':
          $ref: '#/components/responses/403_Forbidden'
        '404':
          $ref: '#/components/responses/404_NotFound'
components:
  responses:
    404_NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    401_Unauthorized:
      description: Unauthorized
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    400_BadRequest:
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    202_Accepted:
      description: Request accepted
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/AsyncOperationResponse'
    403_Forbidden:
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    AsyncOperationResponse:
      type: object
      properties:
        statusUrl:
          type: string
        samplingTime:
          type: integer
    RouteTableUpdate:
      type: object
      properties:
        subnets:
          type: array
          items:
            type: string
          minItems: 1
          uniqueItems: true
          description: List of subnet CIDR blocks
      required:
      - subnets
    EnhancedRouteTableDynamicCreate:
      type: object
      properties:
        tunnelIds:
          type: array
          items:
            type: string
          minItems: 1
          uniqueItems: true
          description: All IDs of dynamic tunnels
        subnets:
          type: array
          items:
            type: string
          minItems: 1
          uniqueItems: true
          description: List of subnet CIDR blocks
      required:
      - tunnelIds
      - subnets
    EnhancedRouteTableStaticCreate:
      type: object
      properties:
        tunnelId:
          type: string
          description: Static tunnel ID
        subnets:
          type: array
          items:
            type: string
          minItems: 1
          uniqueItems: true
          description: List of subnet CIDR blocks
      required:
      - tunnelId
      - subnets
    Error:
      type: object
      properties:
        id:
          type: string
        message:
          type: string
    EnhancedRouteTable:
      type: object
      properties:
        id:
          type: string
          description: Route table entry ID
        tunnelIds:
          type: array
          items:
            type: string
          minItems: 1
          description: List of tunnels ID
        subnets:
          type: array
          items:
            type: string
          minItems: 1
          description: List of subnet CIDR blocks
        propagated:
          type: boolean
          description: Whether the route is propagated automatically
          default: false
      required:
      - id
      - tunnelIds
      - subnets
      - propagated
  parameters:
    routeId:
      name: routeId
      in: path
      required: true
      schema:
        type: string
    networkId:
      name: networkId
      in: path
      required: true
      schema:
        type: string
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http