Armor Network Services API

The Network Services API from Armor — 23 operation(s) for network services.

Operations 39

GET /firewall/{ovdcId}/groups Get information about firewall groups in your account. These groups define the individual IPs, IP ranges, and/or subnets to be used as sources and destinations in firewall rules. #
POST /firewall/{ovdcId}/groups Create a firewall group. #
GET /firewall/{ovdcId}/groups/{id} Get details for a specific firewall group. #
PUT /firewall/{ovdcId}/groups/{id} Update details for a specific firewall group. #
DELETE /firewall/{ovdcId}/groups/{id} Delete a firewall group. #
POST /firewall/{ovdcId}/rule Creates an individual firewall rule for a given device. #
GET /firewall/{ovdcId}/rule/{ruleId} #
PUT /firewall/{ovdcId}/rule/{ruleId} Update/Retry an individual firewall rule based on rule id for a given device. #
GET /firewall/{ovdcId}/rules Retrieve firewall rules for a orginaztion Vdc. #
GET /firewall/{ovdcId}/rules/export Retrieve firewall rules for a orginaztion Vdc for csv export. #
GET /firewall/{ovdcId}/services Get information about firewall services in your account. These services define the ports and protocols to be used as service groups in firewall rules, to determine the type of traf #
POST /firewall/{ovdcId}/services Create firewall service groups. #
GET /firewall/{ovdcId}/services/{serviceGroupId} Get details about a specific firewall service group. #
PUT /firewall/{ovdcId}/services/{serviceGroupId} Update the details for a firewall service group. #
DELETE /firewall/{ovdcId}/services/{serviceGroupId} Delete a firewall service group. #
PUT /firewall/rules/{ruleId} Enables/Disables a firewall rule. #
DELETE /firewall/rules/{ruleId} Deletes a firewall rule with specified ruleid. #
GET /firewalls Get information about firewall devices in your account environments. #
GET /ips Return a list of IP addresses allocated to the account and how they are assigned. #
POST /ips Assigns an IP to a VM. #
DELETE /ips Un-assign an IP from a virtual machine. #
POST /ips/publicIps/quantity/{quantity} Allocate more public IPs to your Account for a location. #
GET /l2l Return a list of L2L (IPSec) tunnels. #
POST /l2l Create a new L2L tunnel. #
GET /l2l/{id} Get L2L tunnel by id. #
DELETE /l2l/{id} Delete a specific L2L tunnel. #
GET /l2l/{id}/esglimit/check #
GET /nats Retrieve a list of NATs that are associated to your account. #
PUT /nats Add/Delete NATs associated to a virtual machine. #
POST /nats Create NATs associated to a virtual machine. #
DELETE /nats Delete NATs associated to a virtual machine. #
GET /nats/vm/{vmId} Retrieve a list of NATs that are associated to a virtual machine. #
GET /ssl-certificates Returns a list of users with their SSL VPN access to various environments. #
PUT /ssl-certificates/{id} Update SSL-Certificate #
DELETE /ssl-certificates/{id} Cancel SSL-Certificate #
GET /sslvpn Returns a list of users with their SSL VPN access to various environments. #
GET /sslvpn/client-config #
POST /sslvpn/enable Enable a user for SSL VPN access to one or more environments. #
GET /sslvpn/members Returns a list of users with their SSL VPN access to various environments. #

Documentation

Specifications

Other Resources

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/armor-network-services-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 email required.

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

OpenAPI Specification

armor-network-services-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: v1
  title: Armor Services Network Services API
servers:
- url: https://api.armor.com
tags:
- name: Network Services
paths:
  /firewall/{ovdcId}/groups:
    get:
      tags:
      - Network Services
      summary: Get information about firewall groups in your account. These groups define the individual IPs, IP ranges, and/or subnets to be used as sources and destinations in firewall rules.
      operationId: Groups_GetGroups
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to retrieve rules
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Groups.GroupDto'
              example:
              - id: 1
                deviceId: 2
                name: ANY
                description: The CIDR 0.0.0.0/0 represents ANY Ip, range, or CIDR.
                type: any
                values:
                - 0.0.0.0/0
                isReadonly: false
                vcdOrgVdcId: 0
                status: 0
                retryCount: 0
                isDefaultGroupCopied: false
              - id: 2
                deviceId: 2
                name: SSL VPN (100-127-255-192--026)
                description: SSL VPN for CIDR
                type: group
                values:
                - 100.127.255.192/26
                isReadonly: true
                vcdOrgVdcId: 0
                status: 0
                retryCount: 0
                isDefaultGroupCopied: false
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Groups.GroupDto'
        '400':
          description: Bad Request
        '403':
          description: Permission Denied
      deprecated: false
    post:
      tags:
      - Network Services
      summary: Create a firewall group.
      operationId: Groups_CreateGroup
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to retrieve rules
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Groups.GroupDto'
              example:
              - id: 1
                deviceId: 2
                name: ANY
                description: The CIDR 0.0.0.0/0 represents ANY Ip, range, or CIDR.
                type: any
                values:
                - 0.0.0.0/0
                isReadonly: false
                vcdOrgVdcId: 0
                status: 0
                retryCount: 0
                isDefaultGroupCopied: false
              - id: 2
                deviceId: 2
                name: SSL VPN (100-127-255-192--026)
                description: SSL VPN for CIDR
                type: group
                values:
                - 100.127.255.192/26
                isReadonly: true
                vcdOrgVdcId: 0
                status: 0
                retryCount: 0
                isDefaultGroupCopied: false
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Groups.GroupDto'
        '400':
          description: Bad Request
        '403':
          description: Permission Denied
      deprecated: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.CreateGroupSampleRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.CreateGroupSampleRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.CreateGroupSampleRequest'
        description: 'deviceId: id for the device to retrieve rules<br /><br />name: Name of the firewall group<br /><br />values: Array of network addresses<br /><br />description: Description for the firewall group'
        required: true
  /firewall/{ovdcId}/groups/{id}:
    get:
      tags:
      - Network Services
      summary: Get details for a specific firewall group.
      operationId: Groups_GetGroup
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to retrieve rules
        required: true
        schema:
          type: integer
          format: int32
      - name: id
        in: path
        description: id for the firewall group
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Groups.GroupDto'
              example:
                id: 8
                deviceId: 2
                name: Local IP
                description: ''
                type: group
                values:
                - 192.158.1.1
                isReadonly: false
                vcdOrgVdcId: 0
                status: 0
                retryCount: 0
                isDefaultGroupCopied: false
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Groups.GroupDto'
        '400':
          description: Bad Request
        '403':
          description: Permission Denied
        '404':
          description: Not Found
      deprecated: false
    put:
      tags:
      - Network Services
      summary: Update details for a specific firewall group.
      operationId: Groups_UpdateGroup
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to retrieve rules
        required: true
        schema:
          type: integer
          format: int32
      - name: id
        in: path
        description: id for the firewall group
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Groups.GroupDto'
              example:
                id: 8
                deviceId: 2
                name: Local IP
                description: ''
                type: group
                values:
                - 192.158.1.1
                isReadonly: false
                vcdOrgVdcId: 0
                status: 0
                retryCount: 0
                isDefaultGroupCopied: false
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Groups.GroupDto'
        '400':
          description: Bad Request
        '403':
          description: Permission Denied
        '404':
          description: No Content
      deprecated: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.UpdateGroupByIdSampleRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.UpdateGroupByIdSampleRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.UpdateGroupByIdSampleRequest'
        description: 'deviceId: id for the device to retrieve rules<br /><br />id: id for the firewall group<br /><br />name: Name of the firewall group<br /><br />description: Description for the firewall group<br /><br />values: Array of network addresses'
        required: true
    delete:
      tags:
      - Network Services
      summary: Delete a firewall group.
      operationId: Groups_DeleteGroup
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to retrieve rules
        required: true
        schema:
          type: integer
          format: int32
      - name: id
        in: path
        description: id of the firewall group to delete
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: Accepted
        '400':
          description: Validation Error
      deprecated: false
  /firewall/{ovdcId}/rule:
    post:
      tags:
      - Network Services
      summary: Creates an individual firewall rule for a given device.
      operationId: Firewall_CreateIndividualRule
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to create rule for
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/System.Object'
            text/json:
              schema:
                $ref: '#/components/schemas/System.Object'
        '202':
          description: No content
        '400':
          description: Bad Request
        '403':
          description: Permission Denied
        '404':
          description: Not Found
        '500':
          description: Internal Server Error
      deprecated: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.CreateRuleSampleRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.CreateRuleSampleRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.CreateRuleSampleRequest'
        description: 'rule entity <br /><br />destinations:List of destination IPgroups(Should not have duplicate IPgroups in a rule)<br /><br />sources:List of source IPgroups (Should not have duplicate IPgroups in a rule) <br /><br />services: List of service groups<br /><br />action:specify either allow or block<br /><br />SortOrder: sort order of the rule.<br /><br />IsEnabled:specify whether a rule needs to be enabled or disabled (true/false)'
        required: true
  /firewall/{ovdcId}/rule/{ruleId}:
    get:
      tags:
      - Network Services
      operationId: Firewall_GetFirewallRuleById
      parameters:
      - name: ovdcId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      - name: ruleId
        in: path
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Rules.RuleSet'
              example:
                id: 1
                deviceId: 2
                accountId: 2
                rules:
                - id: 1
                  destinations:
                  - type: any
                    id: 1
                    name: ANY
                    joinedValues: null
                    values: []
                    isReadOnly: false
                  sources:
                  - type: any
                    id: 1
                    name: ANY
                    joinedValues: null
                    values: []
                    isReadOnly: false
                  services:
                  - id: 1
                    deviceId: 2
                    location: null
                    accountId: 2
                    name: HTTP
                    description: null
                    values:
                    - port: 80
                      protocol: tcp
                      subprotocol: null
                      isConsistent: false
                    vcdOrgVdcId: 0
                    ruleId: 0
                    status: 0
                    retryCount: 0
                    isRetry: false
                    joinedValues: tcp/80, udp/21
                    concattedValues:
                    - tcp/80, udp/21
                    isReadOnly: false
                    isDefaultGroupCopied: false
                  action: allow
                  name: VMA Web Traffic
                  description: null
                  sortOrder: 1
                  isEnabled: true
                  status: 0
                  retryCount: 0
                  providerRefId: 1067
                batchId: 00000000-0000-0000-0000-000000000000
                staged: true
                lastModified: '2015-12-13T02:31:33.53'
                status: null
                vcdOrgVdcId: 0
            text/json:
              schema:
                $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Rules.RuleSet'
        '400':
          description: Bad Request
        '403':
          description: Permission Denied
        '404':
          description: Not Found
      deprecated: false
    put:
      tags:
      - Network Services
      summary: Update/Retry an individual firewall rule based on rule id for a given device.
      operationId: Firewall_UpdateIndividualRule
      parameters:
      - name: ovdcId
        in: path
        description: id of the device to update rules
        required: true
        schema:
          type: integer
          format: int32
      - name: ruleId
        in: path
        description: rule id for which rule needs to be updated
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/System.Object'
            text/json:
              schema:
                $ref: '#/components/schemas/System.Object'
        '202':
          description: No content
        '400':
          description: Bad Request
        '403':
          description: Permission Denied
        '404':
          description: Not Found
        '500':
          description: Internal Server Error
      deprecated: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.UpdateIndividualRuleSampleRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.UpdateIndividualRuleSampleRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.UpdateIndividualRuleSampleRequest'
        description: 'rule entity with modifications<br /><br />FirewallRuleAction : Specify update to update the individual rule or retry to retry the firewall rule<br /><br />destinations:List of destination IPgroups(Should not have duplicate IPgroups in a rule)<br /><br />sources:List of source IPgroups (Should not have duplicate IPgroups in a rule)<br /><br />services: List of service groups<br /><br />action:specify either allow or block<br /><br />SortOrder: sort order of the rule.<br /><br />IsEnabled:specify whether rule is enabled or disabled'
        required: true
  /firewall/{ovdcId}/rules:
    get:
      tags:
      - Network Services
      summary: Retrieve firewall rules for a orginaztion Vdc.
      operationId: Firewall_GetRuleSet
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to retrieve rules
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FireHost.Services.Common.Infrastructure.PagedResultSet%5BFireHost.Infrastructure.Firewall.Models.Rules.RuleSet%5D'
              example:
                id: 1
                deviceId: 2
                accountId: 2
                rules:
                - id: 1
                  destinations:
                  - type: any
                    id: 1
                    name: ANY
                    joinedValues: null
                    values: []
                    isReadOnly: false
                  sources:
                  - type: any
                    id: 1
                    name: ANY
                    joinedValues: null
                    values: []
                    isReadOnly: false
                  services:
                  - id: 1
                    deviceId: 2
                    location: null
                    accountId: 2
                    name: HTTP
                    description: null
                    values:
                    - port: 80
                      protocol: tcp
                      subprotocol: null
                      isConsistent: false
                    vcdOrgVdcId: 0
                    ruleId: 0
                    status: 0
                    retryCount: 0
                    isRetry: false
                    joinedValues: tcp/80, udp/21
                    concattedValues:
                    - tcp/80, udp/21
                    isReadOnly: false
                    isDefaultGroupCopied: false
                  action: allow
                  name: VMA Web Traffic
                  description: null
                  sortOrder: 1
                  isEnabled: true
                  status: 0
                  retryCount: 0
                  providerRefId: 1067
                batchId: 00000000-0000-0000-0000-000000000000
                staged: true
                lastModified: '2015-12-13T02:31:33.53'
                status: null
                vcdOrgVdcId: 0
            text/json:
              schema:
                $ref: '#/components/schemas/FireHost.Services.Common.Infrastructure.PagedResultSet%5BFireHost.Infrastructure.Firewall.Models.Rules.RuleSet%5D'
        '400':
          description: Bad Request
        '403':
          description: Permission Denied
        '404':
          description: Not Found
      deprecated: false
  /firewall/{ovdcId}/rules/export:
    get:
      tags:
      - Network Services
      summary: Retrieve firewall rules for a orginaztion Vdc for csv export.
      operationId: Firewall_GetFirewallRuleCsvExport
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to retrieve rules
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FireHost.Services.Common.Infrastructure.PagedResultSet%5BFireHost.Infrastructure.Firewall.Models.Rules.RuleSet%5D'
              example:
                id: 1
                deviceId: 2
                accountId: 2
                rules:
                - id: 1
                  destinations:
                  - type: any
                    id: 1
                    name: ANY
                    joinedValues: null
                    values: []
                    isReadOnly: false
                  sources:
                  - type: any
                    id: 1
                    name: ANY
                    joinedValues: null
                    values: []
                    isReadOnly: false
                  services:
                  - id: 1
                    deviceId: 2
                    location: null
                    accountId: 2
                    name: HTTP
                    description: null
                    values:
                    - port: 80
                      protocol: tcp
                      subprotocol: null
                      isConsistent: false
                    vcdOrgVdcId: 0
                    ruleId: 0
                    status: 0
                    retryCount: 0
                    isRetry: false
                    joinedValues: tcp/80, udp/21
                    concattedValues:
                    - tcp/80, udp/21
                    isReadOnly: false
                    isDefaultGroupCopied: false
                  action: allow
                  name: VMA Web Traffic
                  description: null
                  sortOrder: 1
                  isEnabled: true
                  status: 0
                  retryCount: 0
                  providerRefId: 1067
                batchId: 00000000-0000-0000-0000-000000000000
                staged: true
                lastModified: '2015-12-13T02:31:33.53'
                status: null
                vcdOrgVdcId: 0
            text/json:
              schema:
                $ref: '#/components/schemas/FireHost.Services.Common.Infrastructure.PagedResultSet%5BFireHost.Infrastructure.Firewall.Models.Rules.RuleSet%5D'
        '400':
          description: Bad Request
        '403':
          description: Permission Denied
        '404':
          description: Not Found
      deprecated: false
  /firewall/{ovdcId}/services:
    get:
      tags:
      - Network Services
      summary: Get information about firewall services in your account. These services define the ports and protocols to be used as service groups in firewall rules, to determine the type of traffic being allowed or blocked.
      operationId: Services_GetServices
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to retrieve rules
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: ''
              example:
              - id: 4
                deviceId: 2
                location: DFW01
                accountId: 0
                name: HTTP
                description: ''
                values:
                - port: 80
                  protocol: TCP
                  subprotocol: null
                  isConsistent: false
                vcdOrgVdcId: 0
                ruleId: 0
                status: 0
                retryCount: 0
                isRetry: false
                joinedValues: tcp/80,udp/21
                concattedValues:
                - tcp/80
                - udp/21
                isReadOnly: false
                isDefaultGroupCopied: false
            text/json:
              schema:
                type: array
                items:
                  $ref: ''
        '400':
          description: Bad Request
      deprecated: false
    post:
      tags:
      - Network Services
      summary: Create firewall service groups.
      description: Protocol must be entered in lower-case letters
      operationId: Services_CreateService
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to under which service needs to be created
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Services.ServiceCreatedDto'
              example:
                id: 5
                deviceId: 2
                location: DFW01
                accountId: 0
                name: TCP HTTP
                description: ''
                values:
                - port: 80
                  protocol: TCP
                  subprotocol: null
                  isConsistent: false
                vcdOrgVdcId: 0
                ruleId: 0
                status: 0
                retryCount: 0
                isRetry: false
                joinedValues: tcp/80,udp/21
                concattedValues:
                - tcp/80
                - udp/21
                isReadOnly: false
                isDefaultGroupCopied: false
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Services.ServiceCreatedDto'
        '400':
          description: Bad Request
      deprecated: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.CreateServiceSampleRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.CreateServiceSampleRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.CreateServiceSampleRequest'
        description: "name: Name for the service group<br /><br />\n            values: Array of ServiceValue objects<br /><br />\n            description: Description of the service group<br /><br />\n            location: Name of the location"
        required: true
  /firewall/{ovdcId}/services/{serviceGroupId}:
    get:
      tags:
      - Network Services
      summary: Get details about a specific firewall service group.
      operationId: Services_GetService
      parameters:
      - name: ovdcId
        in: path
        description: Device ID
        required: true
        schema:
          type: integer
          format: int32
      - name: serviceGroupId
        in: path
        description: Firewall Service Group ID
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: ''
              example:
              - id: 4
                deviceId: 2
                location: DFW01
                accountId: 0
                name: HTTP
                description: null
                values:
                - port: 80
                  protocol: TCP
                  subprotocol: null
                  isConsistent: false
                vcdOrgVdcId: 0
                ruleId: 0
                status: 0
                retryCount: 0
                isRetry: false
                joinedValues: tcp/80,udp/21
                concattedValues:
                - tcp/80
                - udp/21
                isReadOnly: false
                isDefaultGroupCopied: false
            text/json:
              schema:
                type: array
                items:
                  $ref: ''
        '400':
          description: Bad Request
      deprecated: false
    put:
      tags:
      - Network Services
      summary: Update the details for a firewall service group.
      operationId: Services_UpdateService
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to update service for
        required: true
        schema:
          type: integer
          format: int32
      - name: serviceGroupId
        in: path
        description: id of the service group
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Services.ServiceUpdatedDto'
              example:
                id: 4
                deviceId: 2
                location: DFW01
                name: HTTP
                description: Use this for inbound HTTP traffic
                values:
                - port: 80
                  protocol: tcp
                  subprotocol: null
                  isConsistent: false
                vcdOrgVdcId: 0
                status: 0
                retryCount: 0
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FireHost.Infrastructure.Firewall.Models.Services.ServiceUpdatedDto'
        '400':
          description: Bad Request
      deprecated: false
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.UpdateServiceSampleRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.UpdateServiceSampleRequest'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/FireHost.Services.Http.Firewall.ApiExamples.Models.UpdateServiceSampleRequest'
        description: "id: Service Group ID (not used)<br /><br />\n            deviceId: id for the device to update rules (not used)<br /><br />\n            location: Name of the location<br /><br />\n            accountId: Account ID (not used)<br /><br />\n            name: The name of the service group<br /><br />\n            description: Description of the service group<br /><br />\n            values: Array of ServiceValue objects"
        required: true
    delete:
      tags:
      - Network Services
      summary: Delete a firewall service group.
      operationId: Services_DeleteService
      parameters:
      - name: ovdcId
        in: path
        description: id for the device to delete services for
        required: true
        schema:
          type: integer
          format: int32
      - name: serviceGroupId
        in: path
        description: id of the service group
        required: true
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: Success
        '400':
          description: Bad Request
      deprecated: false
  /firewall/rules/{ruleId}:
    put:
      tags:
      - Network Services
      summary: Enables/Disables a firewall rule.
      operationId: Firewall_EnableDisableFirewallRule
      parameters:
      - name: ruleId
        in: path
        description: Unique firewall ruleId
        required: true
        schema:
          type: integer
          format: int32
      - name: disabled
        in: query
        description: Boolean value indicating if rule needs to be disabled or enabled as a query string parameter
        required: true
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/System.Object'
            text/json:
              schema:
                $ref: '#/components/schemas/System.Object'
        '202':
          description: no content
        '400':
          description: Bad Request
        '403':
          description: Permission Denied
        '404':
          description: Not Found
        '500':
          description: Internal ServerError
      deprecated: false
    delete:
      tags:
      - Network Services
      summary: Deletes a firewall rule with specified ruleid.
      operationId: Firewall_DeleteRule
      parameters:
      - name: ruleId
        in: path
        description: firewall rule Id which needs to be deleted
        required: true
        schema:
          type: integer
          form

# --- truncated at 32 KB (89 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/armor/refs/heads/main/openapi/armor-network-services-api-openapi.yml