openapi: 3.0.0
info:
  title: Incognito
  description: Integration API for Incognito - manually built from the documentation on the developer website.
  contact: {}
  version: '1.0'
servers:
- url: http://www.incognito.com/
  variables: {}
paths:
  /entities:
    post:
      tags:
      - Entity
      summary: createEntity
      description: Create Entity
      operationId: createEntity
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                name: Incognito
                organizationName: Incognito
                code: '2345'
                type: ORGANIZATION
                administration: false
                parentId: 00000000-0000-0000-0000-000000000000
                addressLine1: 375 Water Street
                addressLine2: Unit 500
                addressLine3: ''
                addressLine4: ''
                city: Vancouver
                stateProvince: British Columbia
                countryCode: CA
                postalCode: V6B-5C6
                phoneNumber: 1-604-688-4332
                signature: null
                firstName: null
                lastName: null
                middleName: null
                udas:
                - name: AccountNumber
                  value: SF-1002
            example:
              name: Incognito
              organizationName: Incognito
              code: '2345'
              type: ORGANIZATION
              administration: false
              parentId: 00000000-0000-0000-0000-000000000000
              addressLine1: 375 Water Street
              addressLine2: Unit 500
              addressLine3: ''
              addressLine4: ''
              city: Vancouver
              stateProvince: British Columbia
              countryCode: CA
              postalCode: V6B-5C6
              phoneNumber: 1-604-688-4332
              signature: null
              firstName: null
              lastName: null
              middleName: null
              udas:
              - name: AccountNumber
                value: SF-1002
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    get:
      tags:
      - Entity
      summary: getEntities
      description: Get Entities
      operationId: getEntities
      parameters:
      - name: q
        in: query
        description: 'Search criteria, multiple arguments may be given - Example: name EQ GlobalEntity'
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /entities/{entityId}:
    get:
      tags:
      - Entity
      summary: getEntityById
      description: Get Entity By Id
      operationId: getEntityById
      parameters:
      - name: entityId
        in: path
        description: Unique identifier of the entity
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    put:
      tags:
      - Entity
      summary: updateEntity
      description: Update Entity
      operationId: updateEntity
      parameters:
      - name: entityId
        in: path
        description: Unique identifier of the entity
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                name: Incognito
                organizationName: Incognito
                code: '2345'
                type: ORGANIZATION
                administration: false
                parentId: 00000000-0000-0000-0000-000000000000
                addressLine1: 375 Water Street
                addressLine2: Unit 500
                addressLine3: ''
                addressLine4: ''
                city: Vancouver
                stateProvince: British Columbia
                countryCode: CA
                postalCode: V6B-5C6
                phoneNumber: 1-604-688-4332
                signature: null
                firstName: null
                lastName: null
                middleName: null
                udas:
                - name: AccountNumber
                  value: SF-1002
            example:
              name: Incognito
              organizationName: Incognito
              code: '2345'
              type: ORGANIZATION
              administration: false
              parentId: 00000000-0000-0000-0000-000000000000
              addressLine1: 375 Water Street
              addressLine2: Unit 500
              addressLine3: ''
              addressLine4: ''
              city: Vancouver
              stateProvince: British Columbia
              countryCode: CA
              postalCode: V6B-5C6
              phoneNumber: 1-604-688-4332
              signature: null
              firstName: null
              lastName: null
              middleName: null
              udas:
              - name: AccountNumber
                value: SF-1002
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    delete:
      tags:
      - Entity
      summary: deleteEntity
      description: Delete Entity
      operationId: deleteEntity
      parameters:
      - name: entityId
        in: path
        description: Unique identifier of the entity
        required: true
        style: simple
        schema:
          type: string
      - name: cascade
        in: query
        description: Cascade delete associated resource
        style: form
        explode: true
        schema:
          type: boolean
      - name: force
        in: query
        description: Force deletion of Entity if component services are unresponsive
        style: form
        explode: true
        schema:
          type: boolean
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets:
    get:
      tags:
      - Subnet
      summary: getSubnets
      description: Get Subnets
      operationId: getSubnets
      parameters:
      - name: q
        in: query
        description: 'Search criteria, multiple arguments may be given - Example: id EQ 227b0881-14fa-e611-b1f8-080027ee0e8a'
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets/{subnetId}:
    get:
      tags:
      - Subnet
      summary: getSubnetById
      description: Get Subnet By Id
      operationId: getSubnetById
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    put:
      tags:
      - Subnet
      summary: replaceSubnet
      description: Replace Subnet
      operationId: replaceSubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                id: 227b0881-14fa-e611-b1f8-080027ee0e8a
                name: 22.33.44.0/24
                description: ''
                entityId: ''
                networkADdress: 22.33.44.0
                maskSize: 24
                status: FREE
                expireDate: ''
                type: IPV4PUBLIC
                serviceTypeId: Data
                seedStatus: NONE
                parentId: ''
                subnetGroupId: ''
                seedSignatureId: ''
                seedSubnetId: ''
                rirStatus: REASSIGNED
                deviceInterfaceId: ''
                dhcpId: ''
                dhcpManaged: false
                dhcpLocked: false
                utilizationPercent: 0
                utilizationTrend: 0
                sdmPendingEvent: false
                sdmDeployed: false
                sdmRejected: false
                nliType: MACADDRESS
                nliData:
                - 01:02:03:04:05:06
            example:
              id: 227b0881-14fa-e611-b1f8-080027ee0e8a
              name: 22.33.44.0/24
              description: ''
              entityId: ''
              networkADdress: 22.33.44.0
              maskSize: 24
              status: FREE
              expireDate: ''
              type: IPV4PUBLIC
              serviceTypeId: Data
              seedStatus: NONE
              parentId: ''
              subnetGroupId: ''
              seedSignatureId: ''
              seedSubnetId: ''
              rirStatus: REASSIGNED
              deviceInterfaceId: ''
              dhcpId: ''
              dhcpManaged: false
              dhcpLocked: false
              utilizationPercent: 0
              utilizationTrend: 0
              sdmPendingEvent: false
              sdmDeployed: false
              sdmRejected: false
              nliType: MACADDRESS
              nliData:
              - 01:02:03:04:05:06
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    patch:
      tags:
      - Subnet
      summary: updateSubnet
      description: Update Subnet
      operationId: updateSubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                id: a85d6d05-f3d6-e811-8a4b-080027a003bf
                serviceTypeId: 7ee05975-b6b9-e711-a04e-080027a003bf
            example:
              id: a85d6d05-f3d6-e811-8a4b-080027a003bf
              serviceTypeId: 7ee05975-b6b9-e711-a04e-080027a003bf
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    delete:
      tags:
      - Subnet
      summary: deleteSubnet
      description: Delete Subnet
      operationId: deleteSubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets/{subnetId}/assign:
    post:
      tags:
      - Subnet
      summary: assignSubnet
      description: Assign Subnet
      operationId: assignSubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                assignmentTemplateId: null
                entityId: null
                netName: null
            example:
              assignmentTemplateId: null
              entityId: null
              netName: null
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets/{subnetId}/reclaim:
    post:
      tags:
      - Subnet
      summary: reclaimSubnet
      description: Reclaim Subnet
      operationId: reclaimSubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                changeToParent: false
                endOfGracePeriod: null
                clearDhcpId: false
                clearDeviceId: false
                deleteSubnet: false
            example:
              changeToParent: false
              endOfGracePeriod: null
              clearDhcpId: false
              clearDeviceId: false
              deleteSubnet: false
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets/{subnetId}/reserve:
    post:
      tags:
      - Subnet
      summary: reserveSubnet
      description: Reserve Subnet
      operationId: reserveSubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
        required: false
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets/{subnetId}/unreserve:
    post:
      tags:
      - Subnet
      summary: unreserveSubnet
      description: Unreserve Subnet
      operationId: unreserveSubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
        required: false
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets/{subnetId}/subdivide:
    post:
      tags:
      - Subnet
      summary: subdivideSubnet
      description: Subdivide Subnet
      operationId: subdivideSubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                maskSize: 24
                count: 1
                startingAddress: null
                contiguous: false
            example:
              maskSize: 24
              count: 1
              startingAddress: null
              contiguous: false
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets/{subnetId}/merge:
    post:
      tags:
      - Subnet
      summary: mergeSubnet
      description: Merge Subnet
      operationId: mergeSubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
        required: false
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets/{subnetId}/deploy:
    post:
      tags:
      - Subnet
      summary: deploySubnet
      description: Deploy Subnet
      operationId: deploySubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                skipSDMIntegration: false
                skipBusinessRules: false
            example:
              skipSDMIntegration: false
              skipBusinessRules: false
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets/{subnetId}/decommission:
    post:
      tags:
      - Subnet
      summary: decommissionSubnet
      description: Decommission Subnet
      operationId: decommissionSubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                skipSDMIntegration: false
                skipBusinessRules: false
            example:
              skipSDMIntegration: false
              skipBusinessRules: false
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets/{subnetId}/updatenodes:
    post:
      tags:
      - Subnet
      summary: updatenodesSubnet
      description: Update Nodes Subnet
      operationId: updatenodesSubnet
      parameters:
      - name: subnetId
        in: path
        description: Unique identifier of the subnet
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                address: 22.33.44.55
                count: 10
                type: STATIC
                state: ASSIGNED
                deviceId: dae7e380-14fa-e611-b1f8-080027ee0e8a
                deviceInterfaceId: 36cc0c81-14fa-e611-b1f8-080027ee0e8a
                macType: ETHERNET
                serviceTypeId: b2be19bf-fe79-e611-9764-080027ee0e8a
                networkLevelIdentifier: MAC
                description: Engineering Workstation 12
                purpose: ENG workstation
                hostname: eng12.localdomain.tld
                entityId: d47091c4-fd79-e611-afc7-080027ee0e8a
                options:
                  cascadeDeleteResourceRecords: false
                  ensureFirstAssignment: true
            example:
              address: 22.33.44.55
              count: 10
              type: STATIC
              state: ASSIGNED
              deviceId: dae7e380-14fa-e611-b1f8-080027ee0e8a
              deviceInterfaceId: 36cc0c81-14fa-e611-b1f8-080027ee0e8a
              macType: ETHERNET
              serviceTypeId: b2be19bf-fe79-e611-9764-080027ee0e8a
              networkLevelIdentifier: MAC
              description: Engineering Workstation 12
              purpose: ENG workstation
              hostname: eng12.localdomain.tld
              entityId: d47091c4-fd79-e611-afc7-080027ee0e8a
              options:
                cascadeDeleteResourceRecords: false
                ensureFirstAssignment: true
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /subnets/request-assignment:
    post:
      tags:
      - Subnet
      summary: requestSubnetAssignment
      description: Request Subnet Assignment
      operationId: requestSubnetAssignment
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                type: IPV4PUBLIC
                algorithm: BESTFIT
                subnetAssignmentTemplateId: ''
                maskSize: 24
                subdivideToFindMatch: true
                enableIpRequestCreation: false
                ipRequestDescription: ''
                criteria:
                  subnetGroupId: ''
                  vpnId: ''
                  networkAddress: 1.1.1.0
                  entityId: ''
                  deviceInterfaceId: ''
                  dhcpId: ''
                updateProperties:
                  uniqueTag: ad132
                  description: ''
                  netname: ''
                  serviceTypeId: ''
                  entityId: ''
                  deviceInterfaceId: ''
                  changedUdas:
                  - name: customerId
                    value: 123
                  reverseNameServers:
                  - ns1.domain.com
                  - ns2.domain.com
                  nliType: DUIDANDIAID
                  nliData:
                  - FFDDEEAA
                  - '966534'
            example:
              type: IPV4PUBLIC
              algorithm: BESTFIT
              subnetAssignmentTemplateId: ''
              maskSize: 24
              subdivideToFindMatch: true
              enableIpRequestCreation: false
              ipRequestDescription: ''
              criteria:
                subnetGroupId: ''
                vpnId: ''
                networkAddress: 1.1.1.0
                entityId: ''
                deviceInterfaceId: ''
                dhcpId: ''
              updateProperties:
                uniqueTag: ad132
                description: ''
                netname: ''
                serviceTypeId: ''
                entityId: ''
                deviceInterfaceId: ''
                changedUdas:
                - name: customerId
                  value: 123
                reverseNameServers:
                - ns1.domain.com
                - ns2.domain.com
                nliType: DUIDANDIAID
                nliData:
                - FFDDEEAA
                - '966534'
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /devices:
    get:
      tags:
      - Device
      summary: getDevices
      description: Get Devices
      operationId: getDevices
      parameters:
      - name: q
        in: query
        description: Search criteria, multiple arguments may be given
        style: form
        explode: true
        schema:
          type: string
      - name: orderBy
        in: query
        description: The field by which to sort results
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /devices/{deviceId}/utilization:
    get:
      tags:
      - Device
      summary: getDeviceUtilization
      description: Get Device Utilization
      operationId: getDeviceUtilization
      parameters:
      - name: deviceId
        in: path
        description: Unique identifier of the device
        required: true
        style: simple
        schema:
          type: string
      - name: q
        in: query
        description: Search criteria, multiple arguments may be given
        style: form
        explode: true
        schema:
          type: string
      - name: orderBy
        in: query
        description: The field by which to sort results
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /devices/{deviceId}/childutilization:
    get:
      tags:
      - Device
      summary: getDeviceChildUtilization
      description: Get Device Child Utilization
      operationId: getDeviceChildUtilization
      parameters:
      - name: deviceId
        in: path
        description: Unique identifier of the device
        required: true
        style: simple
        schema:
          type: string
      - name: q
        in: query
        description: Search criteria, multiple arguments may be given
        style: form
        explode: true
        schema:
          type: string
      - name: orderBy
        in: query
        description: The field by which to sort results
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /deviceinterfaces/{interfaceId}/utilization:
    get:
      tags:
      - Device
      summary: getDeviceInterfaceUtilization
      description: Get Device Interface Utilization
      operationId: getDeviceInterfaceUtilization
      parameters:
      - name: interfaceId
        in: path
        description: Unique identifier of the device
        required: true
        style: simple
        schema:
          type: string
      - name: q
        in: query
        description: Search criteria, multiple arguments may be given
        style: form
        explode: true
        schema:
          type: string
      - name: orderBy
        in: query
        description: The field by which to sort results
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /iprequests:
    post:
      tags:
      - IP
      summary: createIPRequest
      description: Create IP Request
      operationId: createIPRequest
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                type: IPV4PUBLIC
                algorithm: BESTFIT
                subnetAssignmentTemplateId: ''
                maskSize: 24
                subdivideToFindMatch: true
                enableIpRequestCreation: false
                ipRequestDescription: ''
                criteria:
                  subnetGroupId: ''
                  vpnId: ''
                  networkAddress: 1.1.1.0
                  entityId: ''
                  deviceInterfaceId: ''
                  dhcpId: ''
                updateProperties:
                  uniqueTag: ad132
                  description: ''
                  netname: ''
                  serviceTypeId: ''
                  entityId: ''
                  deviceInterfaceId: ''
                  changedUdas:
                  - name: customerId
                    value: 123
                  reverseNameServers:
                  - ns1.domain.com
                  - ns2.domain.com
                  nliType: DUIDANDIAID
                  nliData:
                  - FFDDEEAA
                  - '966534'
            example:
              type: IPV4PUBLIC
              algorithm: BESTFIT
              subnetAssignmentTemplateId: ''
              maskSize: 24
              subdivideToFindMatch: true
              enableIpRequestCreation: false
              ipRequestDescription: ''
              criteria:
                subnetGroupId: ''
                vpnId: ''
                networkAddress: 1.1.1.0
                entityId: ''
                deviceInterfaceId: ''
                dhcpId: ''
              updateProperties:
                uniqueTag: ad132
                description: ''
                netname: ''
                serviceTypeId: ''
                entityId: ''
                deviceInterfaceId: ''
                changedUdas:
                - name: customerId
                  value: 123
                reverseNameServers:
                - ns1.domain.com
                - ns2.domain.com
                nliType: DUIDANDIAID
                nliData:
                - FFDDEEAA
                - '966534'
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    get:
      tags:
      - IP
      summary: getIPRequests
      description: Get IP Requests
      operationId: getIPRequests
      parameters:
      - name: q
        in: query
        description: Search criteria, multiple arguments may be given
        style: form
        explode: true
        schema:
          type: string
      - name: orderBy
        in: query
        description: The field by which to sort results
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /iprequests/{requestId}:
    get:
      tags:
      - IP
      summary: getIPRequestById
      description: Get IP Request By Id
      operationId: getIPRequestById
      parameters:
      - name: requestId
        in: path
        description: Unique identifier of the ip request
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    delete:
      tags:
      - IP
      summary: deleteIPRequest
      description: Delete IP Request
      operationId: deleteIPRequest
      parameters:
      - name: requestId
        in: path
        description: Unique identifier of the ip request
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /iprequests/{requestId}/approve:
    post:
      tags:
      - IP
      summary: approveIPRequest
      description: Approve IP Request
      operationId: approveIPRequest
      parameters:
      - name: requestId
        in: path
        description: Unique identifier of the ip request
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
        required: false
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /iprequests/{requestId}/reject:
    post:
      tags:
      - IP
      summary: rejectIPRequest
      description: Reject IP Request
      operationId: rejectIPRequest
      parameters:
      - name: requestId
        in: path
        description: Unique identifier of the ip request
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
        required: false
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /vpns:
    post:
      tags:
      - VPN
      summary: createVPN
      description: Create VPN
      operationId: createVPN
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                tag: 1024:3000
                alias: Customer A's VPN
                description: ''
                entityId: d47091c4-fd79-e611-afc7-080027ee0e8a
                vpnDomainId: fa32a180-14fa-e611-b1f8-080027ee0e8a
                defaultSubnets:
                - cidr: 1.1.1.0/24
                  serviceTypeid: b002231232d332d23d3
                - cidr: 2.2.2.0/24
                  serviceTypeid: b002231232d332d23d3
            example:
              tag: 1024:3000
              alias: Customer A's VPN
              description: ''
              entityId: d47091c4-fd79-e611-afc7-080027ee0e8a
              vpnDomainId: fa32a180-14fa-e611-b1f8-080027ee0e8a
              defaultSubnets:
              - cidr: 1.1.1.0/24
                serviceTypeid: b002231232d332d23d3
              - cidr: 2.2.2.0/24
                serviceTypeid: b002231232d332d23d3
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    get:
      tags:
      - VPM
      summary: getVPNs
      description: Get VPNs
      operationId: getVPNs
      parameters:
      - name: q
        in: query
        description: 'Search criteria, multiple arguments may be given - Example: tag EQ 1024'
        style: form
        explode: true
        schema:
          type: string
      - name: orderBy
        in: query
        description: The field by which to sort results
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /vpns/{vpnId}:
    get:
      tags:
      - VPN
      summary: getVPNById
      description: Get VPN By Id
      operationId: getVPNById
      parameters:
      - name: vpnId
        in: path
        description: Unique identifier of the vpn
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    put:
      tags:
      - VPN
      summary: updateVPN
      description: Update VPN
      operationId: updateVPN
      parameters:
      - name: vpnId
        in: path
        description: Unique identifier of the vpn
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                tag: 1024:3000
                alias: Customer A's VPN
                description: ''
                entityId: d47091c4-fd79-e611-afc7-080027ee0e8a
                vpnDomainId: fa32a180-14fa-e611-b1f8-080027ee0e8a
                defaultSubnets:
                - cidr: 1.1.1.0/24
                  serviceTypeid: b002231232d332d23d3
                - cidr: 2.2.2.0/24
                  serviceTypeid: b002231232d332d23d3
            example:
              tag: 1024:3000
              alias: Customer A's VPN
              description: ''
              entityId: d47091c4-fd79-e611-afc7-080027ee0e8a
              vpnDomainId: fa32a180-14fa-e611-b1f8-080027ee0e8a
              defaultSubnets:
              - cidr: 1.1.1.0/24
                serviceTypeid: b002231232d332d23d3
              - cidr: 2.2.2.0/24
                serviceTypeid: b002231232d332d23d3
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    delete:
      tags:
      - VPN
      summary: deleteVPN
      description: Delete VPN
      operationId: deleteVPN
      parameters:
      - name: vpnId
        in: path
        description: Unique identifier of the vpn
        required: true
        style: simple
        schema:
          type: string
      - name: cascade
        in: query
        description: Cascade delete associated resource
        style: form
        explode: true
        schema:
          type: boolean
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /vpndomains:
    post:
      tags:
      - VPN
      summary: createVPNDomain
      description: Create VPN Domain
      operationId: createVPNDomain
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                name: VPN Domain A
                description: ''
                type: Entity
                tagFormat: 1024:${EntityName}
                staticPrefixes:
                - 207.0.0.1
                - 8.8.8.8
                - '2048'
                minTagValue: 0
                maxTagValue: 0
                defaultSubnets:
                - cidr: 1.1.1.0/24
                  serviceTypeid: b002231232d332d23d3
                - cidr: 2.2.2.0/24
                  serviceTypeid: b002231232d332d23d3
                validateString: ''
                importDefault: true
            example:
              name: VPN Domain A
              description: ''
              type: Entity
              tagFormat: 1024:${EntityName}
              staticPrefixes:
              - 207.0.0.1
              - 8.8.8.8
              - '2048'
              minTagValue: 0
              maxTagValue: 0
              defaultSubnets:
              - cidr: 1.1.1.0/24
                serviceTypeid: b002231232d332d23d3
              - cidr: 2.2.2.0/24
                serviceTypeid: b002231232d332d23d3
              validateString: ''
              importDefault: true
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    get:
      tags:
      - VPM
      summary: getVPNDomains
      description: Get VPN Domains
      operationId: getVPNDomains
      parameters:
      - name: q
        in: query
        description: Search criteria, multiple arguments may be given - name EQ Customer
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /vpndomains/{domainId}:
    get:
      tags:
      - VPN
      summary: getVPNDomainById
      description: Get VPN Domain By Id
      operationId: getVPNDomainById
      parameters:
      - name: domainId
        in: path
        description: Unique identifier of the vpn domain
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    put:
      tags:
      - VPN
      summary: updateVPN Domain
      description: Update VPN Domain
      operationId: updateVPNDomain
      parameters:
      - name: domainId
        in: path
        description: Unique identifier of the vpn domain
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: object
              example:
                name: VPN Domain A
                description: ''
                type: Entity
                tagFormat: 1024:${EntityName}
                staticPrefixes:
                - 207.0.0.1
                - 8.8.8.8
                - '2048'
                minTagValue: 0
                maxTagValue: 0
                defaultSubnets:
                - cidr: 1.1.1.0/24
                  serviceTypeid: b002231232d332d23d3
                - cidr: 2.2.2.0/24
                  serviceTypeid: b002231232d332d23d3
                validateString: ''
                importDefault: true
            example:
              name: VPN Domain A
              description: ''
              type: Entity
              tagFormat: 1024:${EntityName}
              staticPrefixes:
              - 207.0.0.1
              - 8.8.8.8
              - '2048'
              minTagValue: 0
              maxTagValue: 0
              defaultSubnets:
              - cidr: 1.1.1.0/24
                serviceTypeid: b002231232d332d23d3
              - cidr: 2.2.2.0/24
                serviceTypeid: b002231232d332d23d3
              validateString: ''
              importDefault: true
        required: true
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
    delete:
      tags:
      - VPN
      summary: deleteVPNDomain
      description: Delete VPN Domain
      operationId: deleteVPNDomain
      parameters:
      - name: domainId
        in: path
        description: Unique identifier of the vpn domain
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
  /vpndomains/{domainId}/availabletag:
    get:
      tags:
      - VPN
      summary: getAvailableVPNTag
      description: Get Available VPN Tag
      operationId: getAvailableVPNTag
      parameters:
      - name: domainId
        in: path
        description: Unique identifier of the vpn domain
        required: true
        style: simple
        schema:
          type: string
      - name: staticPrefix
        in: query
        description: The static prefix for the tag
        style: form
        explode: true
        schema:
          type: string
      - name: entityId
        in: query
        description: The ID of the relevant entity
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          headers: {}
          content:
            application/json:
              schema:
                type: object
      deprecated: false
tags:
- name: Entity
  description: ''
- name: Subnet
  description: ''
- name: Device
  description: ''
- name: IP
  description: ''
- name: VPN
  description: ''
- name: VPM
  description: ''
