Catchpoint NodeGroup API

The NodeGroup API from Catchpoint — 5 operation(s) for nodegroup.

OpenAPI Specification

catchpoint-nodegroup-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Catchpoint REST API v2.0 Account NodeGroup API
  version: '2.0'
servers:
- url: /api
tags:
- name: NodeGroup
paths:
  /v2/nodes/groups/{nodeGroupIds}:
    get:
      tags:
      - NodeGroup
      summary: Returns the node group details based on the ID.
      parameters:
      - name: nodeGroupIds
        in: path
        description: Comma-separated list of Node Group IDs
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]]'
            text/plain:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]]'
            text/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]]'
      security:
      - bearer: []
      order: 1
  /v2/nodes/groups:
    get:
      tags:
      - NodeGroup
      summary: Returns the node group details based on the parameters passed.
      description: When no parameters are passed, all node groups from within the Client or Division are returned.
      parameters:
      - name: name
        in: query
        description: Node group name
        schema:
          type: string
      - name: networkType
        in: query
        description: Network Type (refer InternalLink[Network Type Enumeration Endpoint,operations-tag-NodeGroup,operations-NodeGroup-get_v2_nodes_groups_networktype])
        schema:
          type: integer
          format: int32
      - name: nodeId
        in: query
        description: Node ID
        schema:
          type: integer
          format: int32
      - name: nodeName
        in: query
        description: Node name
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]]'
            text/plain:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]]'
            text/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]]'
      security:
      - bearer: []
      order: 2
    post:
      tags:
      - NodeGroup
      summary: Create a new node group based on the PostData.
      description: "To get payload for creating a new node group and to get the created node group details refer InternalLink[Node Group by ID Endpoint,operations-tag-NodeGroup,operations-NodeGroup-get_v2_nodes_groups__nodeGroupIds_]. Pass “0” for Node Group ID to create a new Node Group.\r\n            \r\nNote: The divisionId field cannot be used to create a node group in another division. If divisionId is provided, it must match the current level's default division ID; otherwise the request is rejected."
      parameters:
      - name: objectDetails
        in: query
        description: Set to true to return the created object in the response body, otherwise the response body will only return created object ID.
        schema:
          type: boolean
      requestBody:
        description: Node group payload. divisionId is not supported for changing the target division.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel'
          application/json-patch+json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel'
          text/json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel'
          application/*+json:
            schema:
              $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]'
            text/plain:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]'
            text/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]'
      security:
      - bearer: []
      order: 3
    patch:
      tags:
      - NodeGroup
      summary: Update properties of an existing node group based on the request body.
      description: "**Request:**\r\n            \r\nOnly the property to be updated can be passed in the request body instead of the whole object. The update request body requires a total of three keys to be filled with appropriate value as listed below:\r\n* **value** – The value property provides the new value.\r\n            \r\n* **path** – The path property indicates the element to update. The entire path with slashes needs to be provided here. Example: /status/id\r\n            \r\n* **op** – The op property indicates the type of operation; we support the following three operations.\r\n            \r\n    * **add** - Add a property or array element. For existing property: set value.\r\n            \r\n    * **Remove** - Remove a property or array element.\r\n            \r\n    * **replace** - Same as remove followed by add at same location.\r\n            \r\n* **from** - [Not Used]\r\n            \r\n    * **Explanation** - The \"from\" parameter represents the starting or current value of the resource that the operation intends to modify. The from parameter is included in the example value schema but is not utilized in this endpoint's functionality. It is reserved for potential future use or could be used in specific scenarios not covered by the current implementation."
      parameters:
      - name: nodeGroupId
        in: query
        description: Node Group ID
        schema:
          type: integer
          format: int32
      - name: objectDetails
        in: query
        description: Set to true to return the updated object in the response body, otherwise the response body will only return the updated object ID.
        schema:
          type: boolean
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation'
          application/json-patch+json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation'
          text/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation'
          application/*+json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]'
            text/plain:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]'
            text/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]'
      security:
      - bearer: []
      order: 4
    delete:
      tags:
      - NodeGroup
      summary: Deletes existing node group by parameters passed.
      description: To delete node group based on the specified list of IDs, the IDs need to be separated by commas. This endpoint allows partial deletion; if you provide a list of five IDs and only three of them are valid, then it will delete those three node groups. The response will indicate the three that were deleted, and the two invalid IDs will be listed as errors.
      parameters:
      - name: nodegroupIds
        in: query
        description: Comma-separated list of Node Group IDs
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[System.Int32]]]'
            text/plain:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[System.Int32]]]'
            text/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[System.Int32]]]'
      security:
      - bearer: []
      order: 5
  /v2/nodes/groups/networktype:
    get:
      tags:
      - NodeGroup
      summary: Returns the list of network types supported for node group.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NetworkTypeResponse]]'
            text/plain:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NetworkTypeResponse]]'
            text/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NetworkTypeResponse]]'
      security:
      - bearer: []
      order: 6
  /v2/nodes/groups/objecttype:
    get:
      tags:
      - NodeGroup
      summary: Retrieves the list of object Types supported for node group location.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.ObjectTypeResponse]'
            text/plain:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.ObjectTypeResponse]'
            text/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.ObjectTypeResponse]'
      security:
      - bearer: []
      order: 7
  /v2/nodes/groups/nodelocations:
    get:
      tags:
      - NodeGroup
      summary: This endpoint allows to fetch all the available continents, countries and cities that can be used as Node Locations when creating a Node Group
      parameters:
      - name: networkType
        in: query
        description: Node Locations for the provided Network Type
        schema:
          type: integer
          format: int32
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeLocationResponse]'
            text/plain:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeLocationResponse]'
            text/json:
              schema:
                $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeLocationResponse]'
      security:
      - bearer: []
      order: 8
components:
  schemas:
    Catchpoint.Symphony.REST.Common.Response.v2_0.ObjectTypeResponse:
      type: object
      properties:
        objectTypes:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.EnumLookupModel`1[System.Int32]'
          nullable: true
        hasMore:
          type: boolean
          nullable: true
        next:
          type: string
          nullable: true
        previous:
          type: string
          nullable: true
      additionalProperties: false
    ? Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[System.Int32]]]
    : type: object
      properties:
        data:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[System.Int32]]'
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Models.InfoMessage'
          nullable: true
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.MessageModel'
          nullable: true
        completed:
          type: boolean
          readOnly: true
        traceId:
          type: string
          nullable: true
        usageLimits:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.ApiUsageStatistics'
      additionalProperties: false
    ? Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NetworkTypeResponse]
    : type: object
      properties:
        nodeGroups:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NetworkTypeResponse'
        hasMore:
          type: boolean
          nullable: true
        next:
          type: string
          nullable: true
        previous:
          type: string
          nullable: true
      additionalProperties: false
    Microsoft.AspNetCore.JsonPatch.Operations.Operation:
      type: object
      properties:
        value:
          nullable: true
        path:
          type: string
          nullable: true
        op:
          type: string
          nullable: true
        from:
          type: string
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.v2_0.Node.NodeLocationCityModel:
      type: object
      properties:
        id:
          type: integer
          format: int32
        name:
          type: string
          nullable: true
        nodesCount:
          type: integer
          format: int32
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[System.Int32]]:
      type: object
      properties:
        nodeGroups:
          type: array
          items:
            type: integer
            format: int32
          nullable: true
        hasMore:
          type: boolean
          nullable: true
        next:
          type: string
          nullable: true
        previous:
          type: string
          nullable: true
      additionalProperties: false
    ? Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]
    : type: object
      properties:
        data:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]'
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Models.InfoMessage'
          nullable: true
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.MessageModel'
          nullable: true
        completed:
          type: boolean
          readOnly: true
        traceId:
          type: string
          nullable: true
        usageLimits:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.ApiUsageStatistics'
      additionalProperties: false
    Catchpoint.Symphony.REST.Api.ApiUsageStatistics:
      type: object
      properties:
        clientId:
          type: integer
          format: int64
        lastRequestTimestamp:
          type: string
          format: date-time
        limits:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.Limit'
        runs:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.Limit'
        exceededMessage:
          type: string
          nullable: true
          readOnly: true
        divisionUsageStatistics:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.DivisionUsageStatistics'
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
          nullable: true
        changeDate:
          type: string
          format: date-time
        description:
          type: string
          nullable: true
        syntheticNetworkType:
          $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.EnumLookupModel`1[System.Int32]'
        divisionId:
          type: integer
          format: int32
          nullable: true
        nodesCount:
          type: integer
          format: int32
          nullable: true
        nodes:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeAPIModel'
          nullable: true
        nodeLocations:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.Node.NodeGroupItemApiModel'
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Models.InfoMessage:
      type: object
      properties:
        information:
          type: string
          nullable: true
        ignoredPath:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Models.PatchIgnoredPath'
          nullable: true
      additionalProperties: false
    ? Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]]
    : type: object
      properties:
        data:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]'
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Models.InfoMessage'
          nullable: true
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.MessageModel'
          nullable: true
        completed:
          type: boolean
          readOnly: true
        traceId:
          type: string
          nullable: true
        usageLimits:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.ApiUsageStatistics'
      additionalProperties: false
    ? Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]
    : type: object
      properties:
        nodeGroups:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel'
        hasMore:
          type: boolean
          nullable: true
        next:
          type: string
          nullable: true
        previous:
          type: string
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.v2_0.NodeLocationResponse:
      type: object
      properties:
        continents:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.Node.NodeLocationContinentModel'
          nullable: true
        hasMore:
          type: boolean
          nullable: true
        next:
          type: string
          nullable: true
        previous:
          type: string
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Api.ConsumerStatistics:
      type: object
      properties:
        consumerId:
          type: integer
          format: int32
        requestCount:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.Limit'
        maxPerDay:
          type: integer
          format: int32
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.ViewModels.EnumLookupModel`1[System.Byte]:
      type: object
      properties:
        id:
          type: integer
          format: int32
        name:
          type: string
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.v2_0.NetworkTypeResponse:
      type: object
      properties:
        networkTypes:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.EnumLookupModel`1[System.Byte]'
          nullable: true
        hasMore:
          type: boolean
          nullable: true
        next:
          type: string
          nullable: true
        previous:
          type: string
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.ViewModels.MessageModel:
      type: object
      properties:
        id:
          type: string
          nullable: true
        message:
          type: string
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Utility.IdNameModel`1[System.Int32]:
      type: object
      properties:
        id:
          type: integer
          format: int32
        name:
          type: string
          nullable: true
      additionalProperties: false
    ? Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel]]
    : type: object
      properties:
        nodeGroups:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupAPIModel'
          nullable: true
        hasMore:
          type: boolean
          nullable: true
        next:
          type: string
          nullable: true
        previous:
          type: string
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Models.PatchIgnoredPath:
      type: object
      properties:
        ops:
          type: string
          nullable: true
        path:
          type: string
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Api.Limit:
      type: object
      properties:
        minute:
          type: integer
          format: int32
        hour:
          type: integer
          format: int32
        day:
          type: integer
          format: int32
      additionalProperties: false
    ? Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NetworkTypeResponse]]
    : type: object
      properties:
        data:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeGroupResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NetworkTypeResponse]'
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Models.InfoMessage'
          nullable: true
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.MessageModel'
          nullable: true
        completed:
          type: boolean
          readOnly: true
        traceId:
          type: string
          nullable: true
        usageLimits:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.ApiUsageStatistics'
      additionalProperties: false
    Catchpoint.Symphony.REST.Api.DivisionUsageStatistics:
      type: object
      properties:
        divisionId:
          type: integer
          format: int32
        consumerStatistics:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.ConsumerStatistics'
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.ViewModels.EnumLookupModel`1[System.Int32]:
      type: object
      properties:
        id:
          type: integer
          format: int32
        name:
          type: string
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.v2_0.Node.NodeLocationContinentModel:
      type: object
      properties:
        id:
          type: integer
          format: int32
        name:
          type: string
          nullable: true
        nodesCount:
          type: integer
          format: int32
        countries:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.Node.NodeLocationCountryModel'
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.v2_0.Node.NodeGroupItemApiModel:
      type: object
      properties:
        objectType:
          $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.EnumLookupModel`1[System.Int32]'
        nodesCount:
          type: integer
          format: int32
        city:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Utility.IdNameModel`1[System.Int32]'
        country:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Utility.IdNameModel`1[System.Int32]'
        continent:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Utility.IdNameModel`1[System.Int32]'
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.ObjectTypeResponse]:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.ObjectTypeResponse'
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Models.InfoMessage'
          nullable: true
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.MessageModel'
          nullable: true
        completed:
          type: boolean
          readOnly: true
        traceId:
          type: string
          nullable: true
        usageLimits:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.ApiUsageStatistics'
      additionalProperties: false
    Catchpoint.Symphony.Enums.SyntheticLocation.SyntheticNetworkType:
      enum:
      - id: 0
        name: Backbone
      - id: 1
        name: LastMile
      - id: 2
        name: Wireless
      - id: 3
        name: Private
      - id: 4
        name: Enterprise
      - id: 5
        name: PublicCloud
      - id: 6
        name: Any
      - id: 7
        name: Bgp
      - id: 8
        name: WebPageTest
      - id: 9
        name: Enterprise Branch
      type: integer
      format: int32
    Catchpoint.Symphony.REST.Common.Response.v2_0.NodeAPIModel:
      type: object
      properties:
        id:
          type: integer
          format: int64
        name:
          type: string
          nullable: true
        networkType:
          $ref: '#/components/schemas/Catchpoint.Symphony.Enums.SyntheticLocation.SyntheticNetworkType'
        status:
          $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.EnumLookupModel`1[System.Int32]'
        ipAddress:
          type: string
          nullable: true
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.NodeLocationResponse]:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.NodeLocationResponse'
        messages:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Models.InfoMessage'
          nullable: true
        errors:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.ViewModels.MessageModel'
          nullable: true
        completed:
          type: boolean
          readOnly: true
        traceId:
          type: string
          nullable: true
        usageLimits:
          $ref: '#/components/schemas/Catchpoint.Symphony.REST.Api.ApiUsageStatistics'
      additionalProperties: false
    Catchpoint.Symphony.REST.Common.Response.v2_0.Node.NodeLocationCountryModel:
      type: object
      properties:
        id:
          type: integer
          format: int32
        name:
          type: string
          nullable: true
        nodesCount:
          type: integer
          format: int32
        cities:
          type: array
          items:
            $ref: '#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.Node.NodeLocationCityModel'
          nullable: true
      additionalProperties: false
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      bearerFormat: JWT