Extreme Networks NG Reports API

The NG Reports - On Demand Analytics and Scheduled Reporting

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/extreme-networks-ng-reports-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

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

OpenAPI Specification

extreme-networks-ng-reports-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: ExtremeCloud IQ Account NG Reports API
  description: 'ExtremeCloud IQ™ API allows customers and partners to create solutions for the management, monitoring, and provisioning

    of any ExtremeCloud IQ™ environment.


    All related resources and documentation are available at [ExtremeCloud IQ Developer Portal](https://developer.extremecloudiq.com/).

    Please check [Get Started and Tutorial](https://developer.extremecloudiq.com/documentation/) to understand how to use the APIs.


    Get the [latest OpenAPI definition](https://github.com/extremenetworks/ExtremeCloudIQ-OpenAPI/blob/main/xcloudiq-openapi.yaml)

    from [ExtremeCloud IQ OpenAPI GitHub repository](https://github.com/extremenetworks/ExtremeCloudIQ-OpenAPI).


    Please have a valid [ExtremeCloud IQ](https://extremecloudiq.com/) account before getting started.

    If you don''t have one, please [register a new account](https://www.extremenetworks.com/cloud-networking/).'
  termsOfService: https://www.extremenetworks.com/company/legal/terms-of-use/
  contact:
    name: Extreme Networks Support
    url: https://www.extremenetworks.com/support
    email: support@extremenetworks.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0.html
  version: 25.9.0-36
servers:
- url: https://api.extremecloudiq.com
  description: ExtremeCloud IQ REST API Server
tags:
- name: NG Reports
  description: The NG Reports - On Demand Analytics and Scheduled Reporting
paths:
  /ng-reports/reports:
    get:
      tags:
      - NG Reports
      summary: Get scheduled reports
      description: Retrieve scheduled reports based on frequency and keyword search.
      operationId: getScheduledReports
      parameters:
      - name: request
        in: query
        description: Type of report to retrieve
        required: true
        schema:
          type: string
          enum:
          - monthly_reports
          - daily_reports
          - weekly_reports
      - name: keyword
        in: query
        description: Keyword to search reports
        required: false
        schema:
          type: string
      responses:
        '200':
          description: A list of scheduled reports
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    report_name:
                      type: string
                      description: Name of the report
                    recipients:
                      type: array
                      items:
                        type: string
                      description: List of report recipients
                    latest_report_pdf:
                      type: string
                      format: uri
                      description: URL to the latest report PDF
                    enable_report:
                      type: boolean
                      description: Indicates if the report is enabled
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
    post:
      tags:
      - NG Reports
      summary: Create a new scheduled report
      description: Create a new scheduled report with specified details.
      operationId: createScheduledReport
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - report_name
              - recipients
              - enable_report
              properties:
                report_name:
                  type: string
                  description: Name of the report
                recipients:
                  type: array
                  items:
                    type: string
                  description: List of email recipients
                enable_report:
                  type: boolean
                  description: Whether the report is enabled
                frequency:
                  type: string
                  enum:
                  - daily_reports
                  - weekly_reports
                  - monthly_reports
                  description: Frequency of the report
      responses:
        '201':
          description: Report successfully created
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /ng-reports/reports/{id}:
    delete:
      tags:
      - NG Reports
      summary: Delete a scheduled report
      description: Delete a scheduled report by its unique identifier.
      operationId: deleteScheduledReport
      parameters:
      - $ref: '#/components/parameters/id'
      responses:
        '204':
          description: Report successfully deleted (No Content)
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
    put:
      tags:
      - NG Reports
      summary: Update an existing scheduled report
      description: Update the details of a scheduled report by its ID.
      operationId: updateScheduledReport
      parameters:
      - $ref: '#/components/parameters/id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                report_name:
                  type: string
                recipients:
                  type: array
                  items:
                    type: string
                enable_report:
                  type: boolean
                frequency:
                  type: string
                  enum:
                  - daily_reports
                  - weekly_reports
                  - monthly_reports
      responses:
        '200':
          description: Report successfully updated
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /ng-reports/metrics/timeseries.yaml:
    post:
      tags:
      - NG Reports
      summary: Time Series data in NG Reports Metrics
      operationId: timeseriesReportMetrics
      description: This API returns the data for the graph widgets.
      requestBody:
        description: The payload to get the table data metrics data
        required: true
        content:
          application/json:
            schema:
              oneOf:
              - $ref: '#/components/schemas/XiqMaxConcurrentClientsRequest'
              - $ref: '#/components/schemas/XiqUniqueWifiClientsRequest'
              - $ref: '#/components/schemas/XiqClientSessionsRequest'
              - $ref: '#/components/schemas/XiqClientAirtimeUsageRequest'
              - $ref: '#/components/schemas/XiqUniqueClientsByOSRequest'
              - $ref: '#/components/schemas/XiqAppTrafficPercentageRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/XiqDiagnosticsTimeSeriesResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /ng-reports/metrics/tabledata.yaml:
    post:
      tags:
      - NG Reports
      summary: Table Data data in NG Reports Metrics
      description: This API returns the table (raw) Data data in NG Reports Metrics.
      operationId: tabledataReportMetrics
      requestBody:
        description: The payload to get the table data metrics data
        required: true
        content:
          application/json:
            schema:
              oneOf:
              - $ref: '#/components/schemas/XiqMaxConcurrentClientsRequest-2'
              - $ref: '#/components/schemas/XiqUniqueWifiClientsRequest-2'
              - $ref: '#/components/schemas/XiqClientSessionsRequest-2'
              - $ref: '#/components/schemas/XiqClientAirtimeUsageRequest-2'
              - $ref: '#/components/schemas/XiqUniqueClientsByOSRequest-2'
              - $ref: '#/components/schemas/XiqAppTrafficPercentageRequest-2'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/XiqPage'
                - type: object
                  properties:
                    data:
                      type: array
                      description: The data in the current page
                      items:
                        $ref: '#/components/schemas/XiqDiagnosticsTableDataResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /ng-reports/metrics/metadata/ssid:
    post:
      tags:
      - NG Reports
      summary: Ssid filter metadata
      description: Returns the Ssid filter metadata. You can filter the results by sites,buildings,floor.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_ng-reports_metadata_ssid
      operationId: getDiagnosticsSsidFilterMetadata
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                site_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The site ID list to filter
                building_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Building ID list to filter
                floor_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Floor ID list to filter
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                description: The List of Ssids
                items:
                  type: string
        default:
          $ref: '#/components/responses/ErrorResponse'
  /ng-reports/metrics/metadata/os:
    post:
      tags:
      - NG Reports
      summary: Client Os filter metadata
      description: Returns the Client Os filter metadata. You can filter the results by sites,buildings,floor,ssid,band.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_ng-reports_metadata_os
      operationId: getDiagnosticsOsFilterMetadata
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                site_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The site ID list to filter
                building_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Building ID list to filter
                floor_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Floor ID list to filter
                ssids:
                  type: array
                  items:
                    type: string
                  description: The Ssid list to filter
                bands:
                  type: array
                  items:
                    type: string
                  description: The Band list to filter
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                description: The List of os
                items:
                  type: string
        default:
          $ref: '#/components/responses/ErrorResponse'
  /ng-reports/metrics/metadata/band:
    post:
      tags:
      - NG Reports
      summary: Band filter metadata
      description: Returns the Band filter metadata. You can filter the results by sites,buildings,floor,ssid.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_ng-reports_metadata_band
      operationId: getDiagnosticsBandFilterMetadata
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                site_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The site ID list to filter
                building_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Building ID list to filter
                floor_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Floor ID list to filter
                ssids:
                  type: array
                  items:
                    type: string
                  description: The Ssid list to filter
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                description: The List of Bands
                items:
                  type: string
        default:
          $ref: '#/components/responses/ErrorResponse'
  /ng-reports/metrics/metadata/client:
    post:
      tags:
      - NG Reports
      summary: Client filter metadata
      description: Returns the Client filter metadata. You can filter the results by sites,buildings,floor,usernames.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_ng-reports_metadata_client
      operationId: getDiagnosticsClientFilterMetadata
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                site_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The site ID list to filter
                building_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Building ID list to filter
                floor_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Floor ID list to filter
                usernames:
                  type: array
                  items:
                    type: string
                  description: The username list to filter
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                description: The filter metadata available for Client.
                items:
                  type: object
                  properties:
                    id:
                      type: integer
                      description: id
                    hostname:
                      type: string
                      description: Host Name
                    mac_address:
                      type: string
                      description: Mac address
        default:
          $ref: '#/components/responses/ErrorResponse'
  /ng-reports/metrics/metadata/user:
    post:
      tags:
      - NG Reports
      summary: User filter metadata
      description: Returns the user filter metadata. You can filter the results by sites,buildings,floor.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_ng-reports_metadata_user
      operationId: getDiagnosticsUserFilterMetadata
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                site_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The site ID list to filter
                building_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Building ID list to filter
                floor_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Floor ID list to filter
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                description: The filter metadata available for User.
                items:
                  type: object
                  properties:
                    id:
                      type: integer
                      description: id
                    username:
                      type: string
                      description: User Name
        default:
          $ref: '#/components/responses/ErrorResponse'
  /ng-reports/metrics/metadata/applications:
    post:
      tags:
      - NG Reports
      summary: Application filter metadata
      description: Returns the Application filter metadata. You can filter the results by sites, buildings, floor, usernames, and client MAC addresses.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_ng-reports_metadata_application
      operationId: getDiagnosticsApplicationFilterMetadata
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                site_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The site ID list to filter.
                building_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The building ID list to filter.
                floor_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The floor ID list to filter.
                usernames:
                  type: array
                  items:
                    type: string
                  description: The username list to filter.
                client_macs:
                  type: array
                  items:
                    type: string
                  description: The client MAC list to filter.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                description: The filter metadata available for the application.
                items:
                  type: object
                  properties:
                    id:
                      type: integer
                      description: Application Code.
                    name:
                      type: string
                      description: Application Name.
        default:
          $ref: '#/components/responses/ErrorResponse'
  /ng-reports/metrics/metadata/devices:
    post:
      tags:
      - NG Reports
      summary: Devices filter metadata
      description: Returns the Channel filter metadata. You can filter the results by sites,buildings,floor,channel,band.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_ng-reports_metadata_devices
      operationId: getDiagnosticsDeviceFilterMetadata
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                site_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The site ID list to filter
                building_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Building ID list to filter
                floor_ids:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Floor ID list to filter
                bands:
                  type: array
                  items:
                    type: string
                  description: The Band list to filter
                channel:
                  type: array
                  items:
                    type: integer
                    format: int64
                  description: The Channel list to filter
                ostype:
                  type: array
                  items:
                    type: string
                  description: The OsType list to filter
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                description: The filter metadata available for Devices.
                items:
                  type: object
                  properties:
                    id:
                      type: integer
                      description: id
                    hostname:
                      type: string
                      description: Host Name
        default:
          $ref: '#/components/responses/ErrorResponse'
  /ng-reports/metrics/get-metrics-grouping:
    get:
      tags:
      - NG Reports
      summary: Grouping of Metrics
      description: Provides detailed information about the grouping of different metrics.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_ng-reports_metadata_application
      operationId: metricsGrouping
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  clientsAnalytics:
                    type: array
                    items:
                      type: string
                      example: '- maxConcurrentClientsOverTime

                        - uniqueClientsOverTimeBySsid

                        - uniqueWiFiClientsOverTime

                        - clientQualityScopeOverTime

                        - clientSessionsOverTime

                        - clientAirtimeUsageOverTime

                        - wirelessClientsByOs

                        - uniqueClientsByOs

                        '
                  applicationUsageAnalytics:
                    type: array
                    items:
                      type: string
                      example: '- applicationUsage

                        '
                  deviceAnalytics:
                    type: array
                    items:
                      type: string
                      example: '- devicesByClientsOverTime

                        - switchSummary

                        '
        default:
          $ref: '#/components/responses/ErrorResponse'
  /ng-reports/download/reports:
    post:
      tags:
      - NG Reports
      summary: Download NG reports
      description: Returns the Xlsx/pdf for provided metrics on the provided filters.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_post_export_download
      operationId: ngReportDownload
      requestBody:
        description: The payload to get the table data metrics
        required: true
        content:
          application/json:
            schema:
              allOf:
              - $ref: '#/components/schemas/XiqDownloadReportsRequest'
      responses:
        '202':
          description: Accepted - The request has been accepted for processing, but processing has not been completed.
          headers:
            cache-control:
              description: Cache control directives
              schema:
                type: string
            content-length:
              description: The length of the response body in octets (8-bit bytes)
              schema:
                type: integer
            date:
              description: The date and time at which the message was originated
              schema:
                type: string
                format: date-time
            expires:
              description: The date/time after which the response is considered stale
              schema:
                type: string
            location:
              description: The URL to check the request status
              schema:
                type: string
                format: uri
            pragma:
              description: Implementation-specific directives that might apply to any recipient
              schema:
                type: string
            ratelimit-limit:
              description: The maximum number of requests allowed in a given time period
              schema:
                type: string
            ratelimit-remaining:
              description: The number of requests remaining in the current rate limit window
              schema:
                type: integer
            retry-after:
              description: Time to wait before making a follow-up request
              schema:
                type: integer
            server:
              description: Server name
              schema:
                type: string
                example: nginx
            x-content-type-options:
              description: Prevents browser from interpreting files as a different MIME type
              schema:
                type: string
            x-xss-protection:
              description: Enables cross-site scripting (XSS) filter
              schema:
                type: string
                format: byte
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /ng-reports/download/reports/{id}:
    get:
      tags:
      - NG Reports
      summary: Download the file
      description: Returns the file for the given metrics based on the provided filters.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_get_metrics_report
      operationId: ngReportExport
      parameters:
      - name: id
        in: path
        description: The file name
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Returns the file for the given metrics
          content:
            application/octet-stream:
              schema:
                type: string
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
  /ng-reports/information/{metrics}:
    get:
      tags:
      - NG Reports
      summary: Information of filters
      description: Returns the filter for the given metrics.
      externalDocs:
        description: API Reference
        url: https://extremecloudiq.com/api-docs/api-reference.html#_get_metrics_report
      operationId: ngReportInfo
      parameters:
      - $ref: '#/components/parameters/id-2'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                description: The filter metadata available for metrics.
                items:
                  type: object
                  properties:
                    metrics:
                      type: string
                      description: Unique metric identifier.
                    description:
                      type: string
                      description: Description of the metric.
                    filters_supported:
                      type: array
                      description: List of filters applicable.
                      items:
                        type: string
        default:
          $ref: '#/components/responses/ErrorResponse'
      security:
      - BearerAuth: []
components:
  schemas:
    XiqUniqueWifiClientsRequest-2:
      allOf:
      - type: object
        description: Network Service
        required:
        - service_type
        properties:
          METRICS:
            $ref: '#/components/schemas/XiqReportMetrics'
          sortField:
            description: default TIME_STAMP
            type: string
            enum:
            - TIME_STAMP (default)
            - MAC
            - HOSTNAME
            - CONNECTED_TIME
            - DICONNECTED_TIME
          sortOrder:
            type: string
            description: default ASC
            enum:
            - ASC (default)
            - DESC
          siteIds:
            description: List of Site IDs
            type: array
            items:
              type: integer
              format: int64
          buildingIds:
            description: List of building IDs
            type: array
            items:
              type: integer
              format: int64
          floorIds:
            description: List of Floor IDs
            type: array
            items:
              type: integer
              format: int64
          ssids:
            description: 'List of SSIDs to filter

              '
            type: array
            items:
              type: string
          band:
            description: 'List of Bands to filter

              '
            type: string
            enum:
            - 2.4GHz
            - 5GHz
            - 6GHz
          channelNums:
            description: 'List of channel numbers to filter

              '
            type: array
            items:
              type: integer
              format: int32
          deviceIds:
            description: 'List of deviceIds to filter

              '
            type: array
            items:
              type: integer
              format: int64
          startTime:
            description: Epoch Time in milliseconds since 1/1/1970
            type: array
            items:
              type: integer
              format: int64
          endTime:
            description: Epoch Time in milliseconds since 1/1/1970
            type: array
            items:
              type: integer
              format: int64
          export:
            description: export to CSV format. true will initiate export. default value false
            type: boolean
          pageno:
            description: page number >= 1. Ignored if export is set to true
            type: integer
            format: int
          limit:
            description: size of each page. Ignored if export is set to true
            type: integer
            format: int
          async:
            description: LRO operation. default value false. Will be true if export is set to true
            type: boolean
    XiqMaxConcurrentClientsResponse:
      allOf:
      - type: object
        description: Network Service
        required:
        - service_type
        properties:
          metrics:
            $ref: '#/components/schemas/XiqReportMetrics'
      - type: object
        properties:
          time_stamp:
            type: integer
            description: time in epoch
            format: int64
          user_name:
            type: string
            description: Name of the User
          user_profile_name:
            type: string
            description: Profile Name of the User
          os_name:
            type: string
            description: Profile Name of the operating system
          ssid:
            type: string
            description: ssid
    XiqQoeDiagnosticsTimeRange:
      required:
      - startTime
      - endTime
      type: object
      properties:
        startTime:
          type: integer
          description: Start time

# --- truncated at 32 KB (75 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/extreme-networks/refs/heads/main/openapi/extreme-networks-ng-reports-api-openapi.yml