Cisco Expressway Zones API

Zone configuration for call routing and firewall traversal

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

cisco-expressway-zones-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Cisco Expressway Configuration Admin Account Zones API
  description: RESTful API for configuring and managing Cisco Expressway systems including zones, search rules, transforms, DNS servers, NTP servers, SFTP configuration, system upgrades, and admin account management. The API uses JSON Schema version 4 for request and response schemas and is self-documented via RAML definitions available at /api/raml on the Expressway system. All endpoints require HTTPS and HTTP Basic Authentication using Expressway administrator credentials.
  version: 14.2.0
  contact:
    name: Cisco TAC
    email: tac@cisco.com
    url: https://www.cisco.com/c/en/us/support/unified-communications/expressway-series/tsd-products-support-series-home.html
  license:
    name: Cisco EULA
    url: https://www.cisco.com/c/en/us/about/legal/cloud-and-software/end_user_license_agreement.html
  x-logo:
    url: https://www.cisco.com/c/dam/en/us/products/collateral/unified-communications/expressway-series/datasheet-c78-733751.jpg
servers:
- url: https://{host}/api
  description: Cisco Expressway server
  variables:
    host:
      default: expressway.example.com
      description: The FQDN or IP address of the Cisco Expressway node. The API is only accessible via HTTPS.
security:
- basicAuth: []
tags:
- name: Zones
  description: Zone configuration for call routing and firewall traversal
paths:
  /provisioning/edge/zone/traversalserver:
    get:
      operationId: listEdgeTraversalServerZones
      summary: Cisco Expressway List Expressway-E traversal server zones
      description: Retrieves all traversal server zones configured on the Expressway-E. Traversal server zones enable the Expressway-E to provide firewall traversal services to traversal clients (Expressway-C). Supports filtering by name using the path pattern /zone/traversalserver/name/{zoneName}.
      tags:
      - Zones
      responses:
        '200':
          description: Traversal server zone list retrieved successfully
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TraversalServerZone'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
    post:
      operationId: createEdgeTraversalServerZone
      summary: Cisco Expressway Create a traversal server zone on Expressway-E
      description: Creates a new traversal server zone on the Expressway-E to provide firewall traversal services. The zone defines connection credentials, H.323 and SIP protocol settings, and media encryption mode.
      tags:
      - Zones
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TraversalServerZoneInput'
      responses:
        '200':
          description: Traversal server zone created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TraversalServerZone'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
    put:
      operationId: updateEdgeTraversalServerZone
      summary: Cisco Expressway Update a traversal server zone on Expressway-E
      description: Modifies an existing traversal server zone configuration on the Expressway-E including connection credentials, protocol settings, and media encryption parameters.
      tags:
      - Zones
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TraversalServerZoneInput'
      responses:
        '200':
          description: Traversal server zone updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TraversalServerZone'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deleteEdgeTraversalServerZone
      summary: Cisco Expressway Delete a traversal server zone from Expressway-E
      description: Removes a traversal server zone from the Expressway-E configuration. The zone is identified by its name.
      tags:
      - Zones
      responses:
        '200':
          description: Traversal server zone deleted successfully
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /provisioning/controller/zone/traversalclient:
    get:
      operationId: listControllerTraversalClientZones
      summary: Cisco Expressway List Expressway-C traversal client zones
      description: Retrieves all traversal client zones configured on the Expressway-C. Traversal client zones define connections from the Expressway-C to a traversal server (Expressway-E) across a firewall. Supports filtering by name using the path pattern /zone/traversalclient/name/{zoneName}.
      tags:
      - Zones
      responses:
        '200':
          description: Traversal client zone list retrieved successfully
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TraversalClientZone'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
    post:
      operationId: createControllerTraversalClientZone
      summary: Cisco Expressway Create a traversal client zone on Expressway-C
      description: Creates a new traversal client zone on the Expressway-C to connect to a traversal server (Expressway-E) across a firewall. The zone defines connection credentials, retry intervals, and protocol settings.
      tags:
      - Zones
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TraversalClientZoneInput'
      responses:
        '200':
          description: Traversal client zone created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TraversalClientZone'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
    put:
      operationId: updateControllerTraversalClientZone
      summary: Cisco Expressway Update a traversal client zone on Expressway-C
      description: Modifies an existing traversal client zone configuration on the Expressway-C including connection credentials, retry intervals, and protocol settings.
      tags:
      - Zones
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TraversalClientZoneInput'
      responses:
        '200':
          description: Traversal client zone updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TraversalClientZone'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deleteControllerTraversalClientZone
      summary: Cisco Expressway Delete a traversal client zone from Expressway-C
      description: Removes a traversal client zone from the Expressway-C configuration.
      tags:
      - Zones
      responses:
        '200':
          description: Traversal client zone deleted successfully
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /provisioning/common/zone/neighbor:
    get:
      operationId: listNeighborZones
      summary: Cisco Expressway List all neighbor zones
      description: Retrieves all neighbor zones configured on the Expressway. Neighbor zones connect the local Expressway to another system such as another Expressway, Unified CM, or a gatekeeper. Supports filtering by name.
      tags:
      - Zones
      responses:
        '200':
          description: Neighbor zone list retrieved successfully
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NeighborZone'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
    post:
      operationId: createNeighborZone
      summary: Cisco Expressway Create a neighbor zone
      description: Creates a new neighbor zone on the Expressway. Neighbor zones define connections to peer systems such as other Expressway nodes, Unified CM clusters, or gatekeepers with configurable H.323 and SIP protocol settings.
      tags:
      - Zones
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NeighborZoneInput'
      responses:
        '200':
          description: Neighbor zone created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NeighborZone'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
    put:
      operationId: updateNeighborZone
      summary: Cisco Expressway Update a neighbor zone
      description: Modifies an existing neighbor zone configuration on the Expressway including peer addresses, protocol settings, zone profile, and authentication options.
      tags:
      - Zones
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NeighborZoneInput'
      responses:
        '200':
          description: Neighbor zone updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NeighborZone'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deleteNeighborZone
      summary: Cisco Expressway Delete a neighbor zone
      description: Removes a neighbor zone from the Expressway configuration.
      tags:
      - Zones
      responses:
        '200':
          description: Neighbor zone deleted successfully
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /provisioning/common/zone/dns:
    get:
      operationId: listDnsZones
      summary: Cisco Expressway List all DNS zones
      description: Retrieves all DNS zones configured on the Expressway. DNS zones enable endpoint location through DNS lookups for SIP and H.323 calls.
      tags:
      - Zones
      responses:
        '200':
          description: DNS zone list retrieved successfully
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DnsZone'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
    post:
      operationId: createDnsZone
      summary: Cisco Expressway Create a DNS zone
      description: Creates a new DNS zone on the Expressway for endpoint discovery via DNS lookups. Configurable for H.323 and SIP protocols with fallback transport and TLS mapping options.
      tags:
      - Zones
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DnsZoneInput'
      responses:
        '200':
          description: DNS zone created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DnsZone'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '409':
          $ref: '#/components/responses/Conflict'
  /status/common/zones:
    get:
      operationId: listZoneStatus
      summary: Cisco Expressway List zone connectivity status
      description: Retrieves the connectivity status for all configured zones on the Expressway including the zone name, type, connection state, and any active calls traversing each zone.
      tags:
      - Zones
      responses:
        '200':
          description: Zone status list retrieved successfully
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ZoneStatus'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '403':
          $ref: '#/components/responses/Forbidden'
components:
  schemas:
    DnsZone:
      type: object
      description: DNS zone configuration. Enables endpoint discovery through DNS lookups for SIP and H.323 calls.
      properties:
        Name:
          type: string
          description: Unique name for the DNS zone
          examples:
          - DefaultDNSZone
        Type:
          type: string
          description: Zone type
          const: DNS
        HopCount:
          type: integer
          description: Maximum number of times a request can be forwarded
          minimum: 0
          maximum: 255
          default: 15
        H323Mode:
          type: string
          description: Whether H.323 calls via DNS-located systems are enabled
          enum:
          - 'On'
          - 'Off'
        SIPMode:
          type: string
          description: Whether SIP calls via DNS-located systems are enabled
          enum:
          - 'On'
          - 'Off'
        FallbackTransportProtocol:
          type: string
          description: Default transport when DNS records do not specify preference
          enum:
          - TLS
          - TCP
          - UDP
          default: TLS
        ModifyDnsRequest:
          type: string
          description: Whether to route calls to a manually specified SIP domain instead of the dialed destination
          enum:
          - 'On'
          - 'Off'
          default: 'Off'
        IncludeAddressRecord:
          type: string
          description: Whether to query A/AAAA records if SRV/NAPTR lookups fail
          enum:
          - 'On'
          - 'Off'
          default: 'On'
        MediaEncryptionMode:
          type: string
          description: Media encryption enforcement mode
          enum:
          - Force encrypted
          - Force unencrypted
          - Best effort
          - Auto
          default: Auto
    TraversalClientZone:
      type: object
      description: Traversal client zone configuration on Expressway-C. Connects to a traversal server (Expressway-E) across a firewall.
      properties:
        Name:
          type: string
          description: Unique name for the traversal client zone
          examples:
          - CtoEXPE-Traversal
        Type:
          type: string
          description: Zone type
          const: TraversalClient
        PeerAddress:
          type: string
          description: IP address or FQDN of the traversal server (Expressway-E)
          examples:
          - expressway-e.example.com
        ConnectionCredentialsUsername:
          type: string
          description: Username for server authentication; must match server configuration
        ConnectionCredentialsPassword:
          type: string
          format: password
          description: Password for server authentication
        HopCount:
          type: integer
          description: Maximum number of times a request can be forwarded
          minimum: 0
          maximum: 255
          default: 15
        H323Mode:
          type: string
          description: Whether H.323 calls are enabled for this zone
          enum:
          - 'On'
          - 'Off'
        H323Port:
          type: integer
          description: UDP port for H.323 search requests
          default: 6001
        H323Protocol:
          type: string
          description: Firewall traversal protocol for H.323
          enum:
          - Assent
          - H.460.18
          default: Assent
        SIPMode:
          type: string
          description: Whether SIP calls are enabled for this zone
          enum:
          - 'On'
          - 'Off'
        SIPPort:
          type: integer
          description: Port for SIP signaling
          default: 7001
        SIPTransport:
          type: string
          description: Transport protocol for SIP messages
          enum:
          - TLS
          - TCP
          default: TLS
        SIPTLSVerifyMode:
          type: string
          description: Whether to verify TLS certificates from the peer
          enum:
          - 'On'
          - 'Off'
        SIPPoisonMode:
          type: string
          description: Whether to mark outbound requests to prevent reprocessing if returned to this Expressway
          enum:
          - 'On'
          - 'Off'
          default: 'Off'
        MediaEncryptionMode:
          type: string
          description: Media encryption enforcement mode
          enum:
          - Force encrypted
          - Force unencrypted
          - Best effort
          - Auto
          default: Auto
        RetryInterval:
          type: integer
          description: Frequency in seconds of retry attempts for failed connections
          default: 120
        DisconnectOnFailInterval:
          type: integer
          description: Frequency in seconds of SIP OPTIONS ping disconnection during failures
          default: 120
        AuthenticationPolicy:
          type: string
          description: Authentication challenge behavior for incoming messages
          enum:
          - DoNotCheckCredentials
          - TreatAsAuthenticated
          - CheckCredentials
    ZoneStatus:
      type: object
      description: Connectivity status for a configured zone on the Expressway
      properties:
        ZoneName:
          type: string
          description: Name of the zone
          examples:
          - CEtoEXPE-Traversal
        ZoneType:
          type: string
          description: Type of zone
          enum:
          - Neighbor
          - TraversalClient
          - TraversalServer
          - DNS
          - ENUM
          - Webex
        ConnectionState:
          type: string
          description: Current connection state of the zone
          enum:
          - Active
          - Inactive
          - Failed
          - Searching
        ActiveCalls:
          type: integer
          description: Number of active calls traversing this zone
        BandwidthUsed:
          type: integer
          description: Current bandwidth usage in kbps for this zone
        BandwidthLimit:
          type: integer
          description: Configured bandwidth limit in kbps for this zone
        PeerAddress:
          type: string
          description: Address of the connected peer system
    NeighborZone:
      type: object
      description: Neighbor zone configuration. Connects the local Expressway to another system such as another Expressway, Unified CM, or gatekeeper.
      properties:
        Name:
          type: string
          description: Unique name for the neighbor zone
          examples:
          - CUCM-Neighbor
        Type:
          type: string
          description: Zone type
          const: Neighbor
        PeerAddresses:
          type: array
          description: List of IP addresses or FQDNs of the peer system. Multiple peers are required for clusters (up to 6).
          items:
            type: string
          minItems: 1
          maxItems: 6
          examples:
          - - cucm-pub.example.com
            - cucm-sub1.example.com
        LookUpPeersBy:
          type: string
          description: Method for discovering peer addresses
          enum:
          - Address
          - Service record
        HopCount:
          type: integer
          description: Maximum number of times a request can be forwarded
          minimum: 0
          maximum: 255
          default: 15
        ZoneProfile:
          type: string
          description: Preconfigured profile for specific peer system types. Sets multiple advanced settings automatically.
          enum:
          - Default
          - Cisco Unified Communications Manager
          - Nortel Communication Server 1000
          - Custom
          default: Default
        H323Mode:
          type: string
          description: Whether H.323 calls are enabled for this zone
          enum:
          - 'On'
          - 'Off'
        H323Port:
          type: integer
          description: Port for H.323 communication
          default: 1719
        SIPMode:
          type: string
          description: Whether SIP calls are enabled for this zone
          enum:
          - 'On'
          - 'Off'
        SIPPort:
          type: integer
          description: Port for SIP communication
          default: 5061
        SIPTransport:
          type: string
          description: Transport protocol for SIP messages
          enum:
          - TLS
          - TCP
          - UDP
          default: TLS
        SIPTLSVerifyMode:
          type: string
          description: Whether to verify TLS certificates from the peer
          enum:
          - 'On'
          - 'Off'
        MediaEncryptionMode:
          type: string
          description: Media encryption enforcement mode
          enum:
          - Force encrypted
          - Force unencrypted
          - Best effort
          - Auto
          default: Auto
        MultistreamMode:
          type: string
          description: Whether multistream call negotiation is permitted
          enum:
          - 'On'
          - 'Off'
          default: 'Off'
        PreloadedSipRoutesSupport:
          type: string
          description: Controls Route header processing in SIP INVITE requests
          enum:
          - 'On'
          - 'Off'
          default: 'Off'
        SIPAuthenticationTrustMode:
          type: string
          description: Whether P-Asserted-Identity headers from this zone are trusted
          enum:
          - 'On'
          - 'Off'
          default: 'Off'
        MonitorPeerStatus:
          type: string
          description: Whether to monitor the peer using H.323 LRQs and SIP OPTIONS
          enum:
          - 'On'
          - 'Off'
          default: 'On'
        AuthenticationPolicy:
          type: string
          description: Authentication challenge behavior for incoming messages
          enum:
          - DoNotCheckCredentials
          - TreatAsAuthenticated
          - CheckCredentials
    TraversalServerZoneInput:
      type: object
      description: Input for creating or updating a traversal server zone
      allOf:
      - $ref: '#/components/schemas/TraversalServerZone'
      required:
      - Name
      - ConnectionCredentialsUsername
    TraversalClientZoneInput:
      type: object
      description: Input for creating or updating a traversal client zone
      allOf:
      - $ref: '#/components/schemas/TraversalClientZone'
      required:
      - Name
      - PeerAddress
      - ConnectionCredentialsUsername
      - ConnectionCredentialsPassword
    DnsZoneInput:
      type: object
      description: Input for creating or updating a DNS zone
      allOf:
      - $ref: '#/components/schemas/DnsZone'
      required:
      - Name
    TraversalServerZone:
      type: object
      description: Traversal server zone configuration on Expressway-E. Enables firewall traversal services for traversal clients.
      properties:
        Name:
          type: string
          description: Unique name for the traversal server zone
          examples:
          - CEtoEXPE-Traversal
        Type:
          type: string
          description: Zone type
          const: TraversalServer
        ConnectionCredentialsUsername:
          type: string
          description: Username for client authentication; must match client configuration
        HopCount:
          type: integer
          description: Maximum number of times a request can be forwarded
          minimum: 0
          maximum: 255
          default: 15
        H323Mode:
          type: string
          description: Whether H.323 calls are enabled for this zone
          enum:
          - 'On'
          - 'Off'
        H323Port:
          type: integer
          description: UDP port for H.323 search requests
          default: 6001
        H323Protocol:
          type: string
          description: Firewall traversal protocol for H.323
          enum:
          - Assent
          - H.460.18
          default: Assent
        SIPMode:
          type: string
          description: Whether SIP calls are enabled for this zone
          enum:
          - 'On'
          - 'Off'
        SIPPort:
          type: integer
          description: Port for SIP signaling
          default: 7001
        SIPTransport:
          type: string
          description: Transport protocol for SIP messages
          enum:
          - TLS
          - TCP
          default: TLS
        SIPTLSVerifyMode:
          type: string
          description: Whether to verify TLS certificates from the peer
          enum:
          - 'On'
          - 'Off'
        MediaEncryptionMode:
          type: string
          description: Media encryption enforcement mode
          enum:
          - Force encrypted
          - Force unencrypted
          - Best effort
          - Auto
          default: Auto
        ICESupport:
          type: string
          description: ICE message handling mode
          enum:
          - 'On'
          - 'Off'
          default: 'Off'
        H46019DemultiplexingMode:
          type: string
          description: Determines media port sharing across multiple calls
          enum:
          - 'On'
          - 'Off'
          default: 'Off'
        UnifiedCommunicationsMode:
          type: string
          description: Whether Unified Communications services (MRA) are enabled
          enum:
          - 'On'
          - 'Off'
          default: 'Off'
        TLSVerifySubjectName:
          type: string
          description: Certificate subject name for mutual TLS authentication. Must be FQDN for clustered clients.
        AuthenticationPolicy:
          type: string
          description: Authentication challenge behavior for incoming messages
          enum:
          - DoNotCheckCredentials
          - TreatAsAuthenticated
          - CheckCredentials
    Error:
      type: object
      description: Standard error response from the Expressway API
      properties:
        error:
          type: string
          description: Error code or type
        message:
          type: string
          description: Human-readable error description
    NeighborZoneInput:
      type: object
      description: Input for creating or updating a neighbor zone
      allOf:
      - $ref: '#/components/schemas/NeighborZone'
      required:
      - Name
      - PeerAddresses
  responses:
    BadRequest:
      description: The request body contains invalid data or missing required fields.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Authentication credentials are missing or invalid. The API requires HTTP Basic Authentication with administrator credentials over HTTPS.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Conflict:
      description: A resource with the same identifier already exists.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Forbidden:
      description: The authenticated user does not have sufficient permissions for this operation.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic Authentication using Expressway administrator credentials. The API is only accessible via HTTPS.
externalDocs:
  description: Cisco Expressway REST API Summary Guide (X14.2)
  url: https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/expressway/admin_guide/X14-2/rest-api/exwy_b_cisco-expressway-rest-api-summary-guide--x142/exwy_m_using-the-expressway-rest-api.html