openapi: 3.0.0
info:
  title: NS1_Enterprise
  contact:
    email: support@itential.com
  version: '1.0.0'
servers:
- url: https://api.mycompany.net/v1/
  variables: {}
paths:
  /ops/bootstrap:
    post:
      tags:
      - Operations
      summary: Bootstrapthefirstoperatoruser
      description: 'When no operator users exist in the main database, the bootstrap endpoint is enabled. This is the only endpoint which does not require authentication. Note: Bootstrap can only be performed once. If the returned API key is lost, the system must be deployed again.'
      operationId: Bootstrapthefirstoperatoruser
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OperatorUser'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NewOperatorUser'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ops/operators:
    get:
      tags:
      - Operations
      summary: Viewalloperatorusers
      description: Returns a list of all operator users in the system.
      operationId: Viewalloperatorusers
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/OperatorUser'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - Operations
      summary: Createanewoperatoruser
      description: Create a new operator user for the system. In addition to creating other operators, organizations, and services; operators can act as administrators on behalf of any organization in the system where users within a tenant organization only have access to that organization’s resources (e.g. zones, records, API keys, etc.).
      operationId: Createanewoperatoruser
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OperatorUser'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OperatorUser'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ops/operators/{operator-id}:
    get:
      tags:
      - Operations
      summary: Viewoperatordetails
      description: Returns information about the operator user.
      operationId: Viewoperatordetails
      parameters:
      - name: operator-id
        in: path
        description: Operator ID
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OperatorUser'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    post:
      tags:
      - Operations
      summary: Modifydetailsofanoperator
      description: Updates an operator's information.
      operationId: Modifydetailsofanoperator
      parameters:
      - name: operator-id
        in: path
        description: Operator ID
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OperatorUser'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OperatorUser'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - Operations
      summary: Deleteanoperator
      description: Removes another operator from the system. An operator cannot remove themselves.
      operationId: Deleteanoperator
      parameters:
      - name: operator-id
        in: path
        description: Operator ID
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          headers: {}
          content: {}
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ops/orgs:
    get:
      tags:
      - Operations
      summary: Viewalistoforganizations
      description: Returns a list of the tenant organizations.
      operationId: Viewalistoforganizations
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Organization'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - Operations
      summary: Createanorganization
      description: Create a new tenant organization.
      operationId: Createanorganization
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Organization'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ops/orgs/{orgid}:
    get:
      tags:
      - Operations
      summary: Vieworganizationdetails
      description: Returns the details of an organization.
      operationId: Vieworganizationdetails
      parameters:
      - name: orgid
        in: path
        description: Organization ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    post:
      tags:
      - Operations
      summary: Modifyanorganization
      description: Modify the organization's name.
      operationId: Modifyanorganization
      parameters:
      - name: orgid
        in: path
        description: Organization ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Organization'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Organization'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - Operations
      summary: Deleteanorganization
      description: Delete a tenant organization. This operation requires adding the token parameter with the operator's 2FA TOTP token.
      operationId: Deleteanorganization
      parameters:
      - name: orgid
        in: path
        description: Organization ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      - name: token
        in: query
        description: 2FA TOTP token
        required: true
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          headers: {}
          content: {}
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ops/orgs/{orgid}/service/groups:
    get:
      tags:
      - Operations
      summary: Viewservicegroupsassociatedwithanorganization
      description: Returns a list of all service groups associated with an organization.
      operationId: Viewservicegroupsassociatedwithanorganization
      parameters:
      - name: orgid
        in: path
        description: Organization ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ServiceGroup'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ops/service/defs:
    get:
      tags:
      - Service Definitions
      summary: Viewlistofservicedefinitions
      description: Returns a list of all services of every type.
      operationId: Viewlistofservicedefinitions
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ServiceDefinition'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - Service Definitions
      summary: Createanewservicedefinition
      description: Create a new service definition (e.g. DNS Pools or DHCP Service). Service definitions groups application data for propagation to edge nodes.
      operationId: Createanewservicedefinition
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceDefinition'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceDefinition'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ops/service/defs/{definitionid}:
    get:
      tags:
      - Service Definitions
      summary: Viewservicedefinitiondetails
      description: Returns the details of a service definition.
      operationId: Viewservicedefinitiondetails
      parameters:
      - name: definitionid
        in: path
        description: Service Definition ID
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceDefinition'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    post:
      tags:
      - Service Definitions
      summary: Modifyaservicedefinition
      description: Modify a service definition's information.
      operationId: Modifyaservicedefinition
      parameters:
      - name: definitionid
        in: path
        description: Service Definition ID
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: Service Definition Object
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/ServiceDefinition'
              - description: Service Definition Object
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceDefinition'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - Service Definitions
      summary: Deleteaservicedefinition
      description: Delete a service definition.
      operationId: Deleteaservicedefinition
      parameters:
      - name: definitionid
        in: path
        description: Service Definition ID
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            text/plain:
              schema:
                type: object
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ops/service/groups:
    get:
      tags:
      - Service Groups
      summary: Viewalistofservicegroups
      description: Returns a list of all service groups.
      operationId: Viewalistofservicegroups
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ServiceGroup'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - Service Groups
      summary: Createaservicegroup
      description: Creates a new service group.
      operationId: Createaservicegroup
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceGroup'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceGroup'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ops/service/groups/{servicegroupid}:
    get:
      tags:
      - Service Groups
      summary: Viewservicegroupdetails
      description: Returns details of a service group.
      operationId: Viewservicegroupdetails
      parameters:
      - name: servicegroupid
        in: path
        description: Service Group ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceGroup'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    post:
      tags:
      - Service Groups
      summary: Modifyaservicegroup
      description: Modify a service group's name.
      operationId: Modifyaservicegroup
      parameters:
      - name: servicegroupid
        in: path
        description: Service Group ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceGroup'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - Service Groups
      summary: Deleteaservicegroup
      description: Deletes a service group from the system.
      operationId: Deleteaservicegroup
      parameters:
      - name: servicegroupid
        in: path
        description: Service Group ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            text/plain:
              schema:
                type: object
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ops/service/groups/{servicegroupid}/org/{orgid}:
    post:
      tags:
      - Service Groups
      summary: Associatewithanorganization
      description: Associate a service group with an organization. The tenant organization will have access to resources in this service group such as its DNS Pools and DHCP services.
      operationId: Associatewithanorganization
      parameters:
      - name: servicegroupid
        in: path
        description: Service Group ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      - name: orgid
        in: path
        description: Organization ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_200'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ops/service/groups/{servicegroupid}/orgs:
    get:
      tags:
      - Service Groups
      summary: Vieworganizationsassociatedwithaservicegroup
      description: Returns a list of organizations with access to this service group.
      operationId: Vieworganizationsassociatedwithaservicegroup
      parameters:
      - name: servicegroupid
        in: path
        description: Service Group ID
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Organization'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/network:
    get:
      tags:
      - IPAM
      summary: Viewalistofnetworks
      description: Returns a list of all networks
      operationId: Viewalistofnetworks
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Network'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - IPAM
      summary: Createanetwork
      description: Create a network
      operationId: Createanetwork
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Network'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Network'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/network/{networkId}:
    get:
      tags:
      - IPAM
      summary: Viewanetwork
      description: View a network
      operationId: Viewanetwork
      parameters:
      - name: networkId
        in: path
        description: Network ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Network'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    post:
      tags:
      - IPAM
      summary: Updateanetwork
      description: Update a network
      operationId: Updateanetwork
      parameters:
      - name: networkId
        in: path
        description: Network ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Network'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Network'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - IPAM
      summary: Removeanetwork
      description: Remove a network
      operationId: Removeanetwork
      parameters:
      - name: networkId
        in: path
        description: Network ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            text/plain:
              schema:
                type: object
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/network/{networkId}/report:
    get:
      tags:
      - IPAM
      summary: Viewanetworkreport
      description: Get a report of network usage
      operationId: Viewanetworkreport
      parameters:
      - name: networkId
        in: path
        description: Network ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NetworkReport'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/address:
    get:
      tags:
      - IPAM
      summary: Viewalistofrootaddresses
      description: Returns a list of all root addresses (i.e. indent == 0) in all networks for the requesting organization.
      operationId: Viewalistofrootaddresses
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Subnet'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - IPAM
      summary: Createasubnet
      description: Create a subnet
      operationId: Createasubnet
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Subnet'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Subnet'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/address/search:
    get:
      tags:
      - IPAM
      summary: Searchforanaddressobject
      description: Returns a list of matching objects in the IP address management.
      operationId: Searchforanaddressobject
      parameters:
      - name: network
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: integer
          format: int32
      - name: max
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: integer
          format: int32
      - name: status
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: string
      - name: tag
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: string
      - name: order_by
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: string
      - name: asc_desc
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: string
      - name: mask
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: integer
          format: int32
      - name: prefix
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Subnet'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/address/{addressId}:
    get:
      tags:
      - IPAM
      summary: Viewasubnet
      description: View a subnet
      operationId: Viewasubnet
      parameters:
      - name: addressId
        in: path
        description: Address ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Subnet'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    post:
      tags:
      - IPAM
      summary: Editasubnet
      description: Edit a subnet
      operationId: Editasubnet
      parameters:
      - name: addressId
        in: path
        description: Address ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Subnet'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Subnet'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - IPAM
      summary: Deleteasubnet
      description: Delete a subnet
      operationId: Deleteasubnet
      parameters:
      - name: addressId
        in: path
        description: Address ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Subnet'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/address/{addressId}/split:
    post:
      tags:
      - IPAM
      summary: Splitasubnet
      description: >
        Splitting an entire block of unassigned IP space into equal pieces. This will not function with ranges or individual hosts. Normal breaking out of a subnet is done with the standard PUT route. (Eg. root address is a /24 and request for /29s will break it into 32 /29s)


        - Only planned subnets can be split

        - Name and description will be unset on children

        - KVPS and options will be copied; tags will be inherited as per normal
      operationId: Splitasubnet
      parameters:
      - name: addressId
        in: path
        description: Address ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Subnet'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Subnet'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/address/{addressId}/merge:
    post:
      tags:
      - IPAM
      summary: Mergeasubnet
      description: Merge a subnet
      operationId: Mergeasubnet
      parameters:
      - name: addressId
        in: path
        description: Address ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/body'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Subnet'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/address/{addressId}/children:
    get:
      tags:
      - IPAM
      summary: Viewaddresschildren
      description: Request a list of all child addresses (or subnets) for the specified IP address.
      operationId: Viewaddresschildren
      parameters:
      - name: addressId
        in: path
        description: Address ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Subnet'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/address/{addressId}/parent:
    get:
      tags:
      - IPAM
      summary: Viewaddressparent
      description: Request a list of all parent addresses (or subnets) for the specified IP address.
      operationId: Viewaddressparent
      parameters:
      - name: addressId
        in: path
        description: Address ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Subnet'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/address/{addressId}/adjacent:
    get:
      tags:
      - IPAM
      summary: Viewnext(orprevious)availableprefix
      description: Retrieves next or previous (aka adjacent) available IP address.
      operationId: Viewnext(orprevious)availableprefix
      parameters:
      - name: addressId
        in: path
        description: Address ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      - name: previous
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: boolean
      - name: X-NSONE-Key
        in: header
        description: ''
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_200_1'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/address/{subnet_id}/pool:
    get:
      tags:
      - IPAM
      summary: GetViewasubnet
      description: View a subnet
      operationId: GetViewasubnet
      parameters:
      - name: subnet_id
        in: path
        description: Subnet ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PoolOfIPAddresses'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - IPAM
      summary: Createapool(IPrange)withinasubnet
      description: Creates a pool (range of IP addresses) under a given subnet.
      operationId: Createapool(IPrange)withinasubnet
      parameters:
      - name: subnet_id
        in: path
        description: Subnet ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PoolOfIPAddresses'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PoolOfIPAddresses'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/address/{subnet_id}/pool/{pool_id}:
    get:
      tags:
      - IPAM
      summary: Viewapool(IPrange)withinasubnet
      description: Returns a pool (range of IP addresses) under a given subnet.
      operationId: Viewapool(IPrange)withinasubnet
      parameters:
      - name: subnet_id
        in: path
        description: Subnet ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      - name: pool_id
        in: path
        description: Pool ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PoolOfIPAddresses'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    post:
      tags:
      - IPAM
      summary: Updateapool(IPrange)withinasubnet
      description: Updates a pool (range of IP addresses) under a given subnet.
      operationId: Updateapool(IPrange)withinasubnet
      parameters:
      - name: subnet_id
        in: path
        description: Subnet ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      - name: pool_id
        in: path
        description: Pool ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PoolOfIPAddresses'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PoolOfIPAddresses'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - IPAM
      summary: Deleteapool(IPrange)withinasubnet
      description: Deletes a pool (range of IP addresses) under a given subnet.
      operationId: Deleteapool(IPrange)withinasubnet
      parameters:
      - name: subnet_id
        in: path
        description: Subnet ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      - name: pool_id
        in: path
        description: Pool ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content: {}
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/tags:
    get:
      tags:
      - IPAM
      summary: Viewalltags
      description: Get a list of all tags used by this organization
      operationId: Viewalltags
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /ipam/keys:
    get:
      tags:
      - IPAM
      summary: Viewallorganizationkeys
      description: Get a list of all keys used by this organization for key-value pairs
      operationId: Viewallorganizationkeys
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /dhcp/scope:
    get:
      tags:
      - DHCP
      summary: Generatealistoftheactivescopes
      description: Generate a list of the active scopes
      operationId: Generatealistoftheactivescopes
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Scope'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - DHCP
      summary: Createascope
      description: >
        Create a scope.


        **Note**: The DHCP server, if enabled, will allocate addresses from the associated IP address, grant any DHCP options associated with the address. The address and scope group must each meet certain invariants or else the request will result in a **422**.


        The address must:
          - be of type `assignment`.
          - not already be assigned to another scope group

        `options` should be supported for the address' protocol.
      operationId: Createascope
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Scope'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Scope'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /dhcp/scope/{scopeID}:
    get:
      tags:
      - DHCP
      summary: Viewscopedetails
      description: Request details about a specific scope.
      operationId: Viewscopedetails
      parameters:
      - name: scopeID
        in: path
        description: Scope ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Scope'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    post:
      tags:
      - DHCP
      summary: Modifyascope
      description: Modify a scope
      operationId: Modifyascope
      parameters:
      - name: scopeID
        in: path
        description: Scope ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Scope'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Scope'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - DHCP
      summary: Removeascope
      description: Once removed, the address will no longer be used for leases and any current leases will be reclaimed.
      operationId: Removeascope
      parameters:
      - name: scopeID
        in: path
        description: Scope ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Scope'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /dhcp/scope/group:
    get:
      tags:
      - DHCP
      summary: Listscopegroups
      description: Request a list of all scope groups
      operationId: Listscopegroups
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ScopeGroup'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - DHCP
      summary: Createascopegroup
      description: Creates a scope group with global settings and options.Options must be valid for the address's IP protocol. If the option has already been set, this request will overwrite it.
      operationId: Createascopegroup
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScopeGroup'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScopeGroup'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /dhcp/scopegroup/{scopegroupID}:
    get:
      tags:
      - DHCP
      summary: Viewscopegroup
      description: Request information about a scope groups using its unique ID.
      operationId: Viewscopegroup
      parameters:
      - name: scopegroupID
        in: path
        description: Scope Group ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScopeGroup'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    post:
      tags:
      - DHCP
      summary: UpdatescopegroupbyID
      description: Update scope group by ID
      operationId: UpdatescopegroupbyID
      parameters:
      - name: scopegroupID
        in: path
        description: Scope Group ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      - name: X-NSONE-Key
        in: header
        description: ''
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ScopeGroup'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScopeGroup'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - DHCP
      summary: RemovescopegroupbyID
      description: Remove scope group by ID
      operationId: RemovescopegroupbyID
      parameters:
      - name: scopegroupID
        in: path
        description: Scope Group ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScopeGroup'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /dhcp/scopegroup/{scopegroupID}/report:
    get:
      tags:
      - DHCP
      summary: Returnsareportaboutthespecifiedscopegroup.
      description: Returns a report about the specified scope group.
      operationId: Returnsareportaboutthespecifiedscopegroup.
      parameters:
      - name: scopegroupID
        in: path
        description: Scope Group ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NetworkReport'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /dhcp/reservation:
    get:
      tags:
      - DHCP
      summary: Listreservations
      description: Request a list of all active DHCP reservations.
      operationId: Listreservations
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Reservation'
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - DHCP
      summary: Createareservation
      description: >
        Creates a new host reservation.


        **Note**: Currently, the reservation must be associated with an address. The DHCP server, if enabled, will provide the associated IP address and any DHCP options to the client with the associated MAC address. The address and scope group must each meet certain invariants or else the request will result in a 422.


        The address must:


        - Be of status = assigned.

        - Not be associated with another scope group

        - Not have another conflicting reservation


        The scope group must:


        - Only contain reservations and scopes from a single network.


        Options should be supported for the address' protocol.
      operationId: Createareservation
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Reservation'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Reservation'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /dhcp/reservation/{reservationId}:
    get:
      tags:
      - DHCP
      summary: Viewareservation'sdetails
      description: View a reservation's details
      operationId: Viewareservation'sdetails
      parameters:
      - name: reservationId
        in: path
        description: Reservation ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Reservation'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    post:
      tags:
      - DHCP
      summary: Modifyareservation
      description: >
        Modify an existing DHCP reservation.


        **Note**: The DHCP server, if enabled, will provide the associated IP address and any DHCP options to the client with the associated MAC address. The address and scope group must each meet certain invariants or else the request will result in a **422**.


        The `address` must:

          - Be of type `host`.
          - Not be associated with another `scope group`
          - Not have another conflicting `reservation`

        `options` should be supported for the address' protocol.
      operationId: Modifyareservation
      parameters:
      - name: reservationId
        in: path
        description: Reservation ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Reservation'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ScopeGroup'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - DHCP
      summary: Deleteareservation
      description: Delete a reservation
      operationId: Deleteareservation
      parameters:
      - name: reservationId
        in: path
        description: Reservation ID
        required: true
        style: simple
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            text/plain:
              schema:
                type: object
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /dhcp/lease:
    get:
      tags:
      - DHCP
      summary: Listleases
      description: Lists any active leases, optionally filtering by one or more parameters.
      operationId: Listleases
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Lease'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /dhcp/optiondef:
    get:
      tags:
      - DHCP
      summary: Listoptiondefinitions
      description: Return a list of option definitions available to this organization and optionally filter by parameters.
      operationId: Listoptiondefinitions
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /dhcp/optiondef/{space}/{key}:
    post:
      tags:
      - DHCP
      summary: ModifyancustomDHCPoptiondefinition
      description: Modify an option definition. The key and code must be unique in the chosen option space.
      operationId: ModifyancustomDHCPoptiondefinition
      parameters:
      - name: space
        in: path
        description: space
        required: true
        style: simple
        schema:
          type: string
      - name: key
        in: path
        description: key
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DHCPOptionDefinition'
        required: false
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DHCPOptionDefinition'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - DHCP
      summary: CreateancustomDHCPoptiondefinition
      description: >
        Create an option definition. The key and code must be unique in the chosen option space.


        NOTE

        The following are important guidelines to follow when configuring a custom DHCP option with “complex” schema selected:


        - The record must consist of at least two fields.

        - "String" or "binary" fields must be last in the order of primitive types.

        - You can only enter one "string" field or one "binary" field per record.

        - "Empty" type is not allowed in a complex record.

        - You cannot create an array of “string” or “binary” field types.

        - If a string contains commas, they must be escaped with double-backslash (\\).


        The following are important guidelines to follow when configuring a custom DHCP option with "array" schema selected selected:


        - You cannot create an array of "string", "binary", or "empty" field types.
      operationId: CreateancustomDHCPoptiondefinition
      parameters:
      - name: space
        in: path
        description: space
        required: true
        style: simple
        schema:
          type: string
      - name: key
        in: path
        description: key
        required: true
        style: simple
        schema:
          type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DHCPOptionDefinition'
        required: false
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DHCPOptionDefinition'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - DHCP
      summary: Deleteanoptiondefinition
      description: Delete an option definition.
      operationId: Deleteanoptiondefinition
      parameters:
      - name: space
        in: path
        description: space
        required: true
        style: simple
        schema:
          type: string
      - name: key
        in: path
        description: key
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: successful operation
          headers: {}
          content: {}
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /activedirectory:
    get:
      tags:
      - Active Directory
      summary: ViewActiveDirectoryconfiguration
      description: Returns details of current Active Directory configuration.
      operationId: ViewActiveDirectoryconfiguration
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActiveDirectoryConfiguration'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    post:
      tags:
      - Active Directory
      summary: ModifyActiveDirectoryconfiguration
      description: Modifies the AD configuration entry associated with the current organization.
      operationId: ModifyActiveDirectoryconfiguration
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ActiveDirectoryConfiguration'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActiveDirectoryConfiguration'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    put:
      tags:
      - Active Directory
      summary: CreateanActiveDirectoryconfiguration
      description: Create a new AD configuration entry associated with the current organization.
      operationId: CreateanActiveDirectoryconfiguration
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ActiveDirectoryConfiguration'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ActiveDirectoryConfiguration'
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
    delete:
      tags:
      - Active Directory
      summary: DeleteActiveDirectoryconfiguration
      description: Deletes the AD configuration entry associated with the current organization.
      operationId: DeleteActiveDirectoryconfiguration
      parameters: []
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            text/plain:
              schema:
                type: object
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
  /activedirectory/test:
    post:
      tags:
      - Active Directory
      summary: TesttheActiveDirectoryconnection
      description: Test the AD server connection.
      operationId: TesttheActiveDirectoryconnection
      parameters: []
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ActiveDirectoryConfiguration'
        required: true
      responses:
        '200':
          description: successful operation
          headers: {}
          content:
            text/plain:
              schema:
                type: object
                description: successful operation
        '400':
          description: failed operation
          headers: {}
          content: {}
      deprecated: false
components:
  schemas:
    ActiveDirectoryConfiguration:
      title: ActiveDirectoryConfiguration
      required:
      - server
      - domain
      - user
      - password
      - secure
      type: object
      properties:
        server:
          type: string
          description: IP for the Active Directory server
        port:
          type: integer
          description: (Optional) Port for the AD connection
          format: int32
        domain:
          type: string
          description: Domain used for the connections
        base_dn:
          type: string
          description: (Optional) Base Distinguished Name
        user:
          type: string
          description: Login name for the DN Bind
        password:
          type: string
          description: Password for the DN Bind
        secure:
          type: boolean
          description: Option to enable a secure connection
        tls_cert:
          type: string
          description: TLS cert in case a secure connection is enabled
    DHCPOptionDefinition:
      title: DHCPOptionDefinition
      type: object
      properties:
        code:
          type: integer
          format: int32
        description:
          type: string
        space:
          type: string
        friendly_name:
          type: string
        key:
          type: string
        schema:
          type: object
        standard:
          type: boolean
    Lease:
      title: Lease
      type: object
      properties:
        prefix:
          type: string
        scope_group_id:
          type: integer
          format: int32
        dhcid:
          type: string
        mac:
          type: string
        expiration:
          type: string
    Reservation:
      title: Reservation
      required:
      - name
      - value
      - options
      - address_id
      type: object
      properties:
        name:
          type: string
        value:
          type: array
          items:
            type: string
          description: ''
        options:
          type: array
          items:
            type: object
          description: ''
        mac:
          type: string
        scope_group_id:
          type: integer
          format: int32
        address_id:
          type: integer
          format: int32
    ScopeGroup:
      title: ScopeGroup
      type: object
      properties:
        name:
          type: string
        dhcp_service_id:
          type: integer
          format: int32
        dhcpv4:
          type: object
        dhcpv6:
          type: object
        id:
          type: integer
          format: int32
    Scope:
      title: Scope
      required:
      - address_id
      - options
      - name
      - value
      type: object
      properties:
        address_id:
          type: integer
          description: the ID of the scope address; must not have host bits set
          format: int32
        scope_group_id:
          type: integer
          description: the ID of the scope group; if set and the scope group is active, the scope will be used for leases
          format: int32
        options:
          type: array
          items:
            type: object
          description: ''
        name:
          type: string
        value:
          type: array
          items:
            type: string
          description: ''
        id:
          type: integer
          format: int32
    PoolOfIPAddresses:
      title: PoolOfIPAddresses
      type: object
      properties:
        range:
          type: string
        id:
          type: integer
          format: int32
        options:
          type: array
          items:
            $ref: '#/components/schemas/PoolOfIPAddresses_options'
          description: ''
    NewOperatorUser:
      title: NewOperatorUser
      type: object
      properties:
        user:
          type: string
        name:
          type: string
        email:
          type: string
        password:
          type: string
    OperatorUser:
      title: OperatorUser
      required:
      - name
      type: object
      properties:
        two_factor_auth:
          $ref: '#/components/schemas/OperatorUser_two_factor_auth'
        name:
          type: string
        id:
          type: string
        user:
          type: string
        key:
          type: string
        last_access:
          type: string
        password:
          type: string
        email:
          type: string
    Organization:
      title: Organization
      required:
      - name
      type: object
      properties:
        org_id:
          type: integer
          format: int64
          example: 2000
        ts_create:
          type: string
          example: 2019-08-05T19:37:08.065Z
        ts_update:
          type: string
          example: 2019-08-05T19:37:08.065Z
        name:
          type: string
          example: My Company
        id:
          type: integer
          format: int64
          example: 2000
    ServiceGroup:
      title: ServiceGroup
      required:
      - name
      type: object
      properties:
        properties:
          type: object
        id:
          type: integer
          format: int32
        name:
          type: string
    ServiceDefinition:
      title: ServiceDefinition
      required:
      - nameservers
      - type
      - name
      type: object
      properties:
        config_tree_id:
          type: integer
          format: int32
        properties:
          type: object
        nameservers:
          type: array
          items:
            type: string
          description: ''
        type:
          type: string
        id:
          type: integer
          format: int32
        name:
          type: string
    Network:
      title: Network
      type: object
      properties:
        name:
          type: string
        rt:
          type: string
        tags:
          type: array
          items:
            type: string
          description: ''
        desc:
          type: string
        kvps:
          type: object
        free_addresses_v4:
          type: string
        used_addresses_v4:
          type: string
        total_addresses_v4:
          type: string
        num_prefixes_v4:
          type: string
        free_addresses_v6:
          type: string
        used_addresses_v6:
          type: string
        total_addresses_v6:
          type: string
        num_prefixes_v6:
          type: string
        addresses:
          type: array
          items:
            type: object
          description: ''
    NetworkReport:
      title: NetworkReport
      type: object
      properties:
        v4:
          type: object
        v6:
          type: object
    Subnet:
      title: Subnet
      type: object
      properties:
        prefix:
          type: string
        network_id:
          type: integer
          format: int32
        kvps:
          type: object
        tags:
          type: array
          items:
            type: string
          description: ''
        desc:
          type: string
        status:
          type: string
        name:
          type: string
        inherited_tags:
          type: array
          items:
            type: string
          description: ''
        total_addresses:
          type: string
        children:
          type: integer
          format: int32
        free_addresses:
          type: string
        id:
          type: integer
          format: int32
        indent:
          type: integer
          format: int32
        used_addresses:
          type: string
        parent:
          type: object
    inline_response_200:
      title: inline_response_200
      type: object
      properties:
        status:
          type: string
          example: success
        org_id:
          type: string
          example: '2000'
        service_group_id:
          type: string
          example: '2'
    body:
      title: body
      type: object
      properties:
        root_address_id:
          type: integer
          format: int32
        merged_address_id:
          type: integer
          format: int32
    inline_response_200_1:
      title: inline_response_200_1
      type: object
      properties:
        prefix:
          type: string
    PoolOfIPAddresses_options:
      title: PoolOfIPAddresses_options
      type: object
      properties:
        name:
          type: string
        value:
          type: integer
          format: int32
        always_send:
          type: boolean
    OperatorUser_two_factor_auth:
      title: OperatorUser_two_factor_auth
      type: object
      properties:
        secret:
          type: string
        type:
          type: string
tags:
- name: Operations
  description: Manager Operations
- name: Service Definitions
  description: Manage Service Definitions
- name: Service Groups
  description: Manage Service Groups
- name: IPAM
  description: IP Address Management
- name: DHCP
  description: DHCP
- name: Active Directory
  description: Configure an Active Directory server configuration for the organization for using Active Directory authentication and role-based access controls.
externalDocs:
  description: Find out more about Swagger
  url: http://swagger.io
