ExtremeCloud IQ Developer ExtremeCloud IQ Developer
Home
Documentation
API Reference (opens new window)
  • OpenAPI

    • Latest (opens new window)
    • History (opens new window)
  • SDK

    • Java
    • Javascript
    • Python
    • Go
    • C#
Release Notes
Community (opens new window)
ExtremeCloud IQ (opens new window)
Home
Documentation
API Reference (opens new window)
  • OpenAPI

    • Latest (opens new window)
    • History (opens new window)
  • SDK

    • Java
    • Javascript
    • Python
    • Go
    • C#
Release Notes
Community (opens new window)
ExtremeCloud IQ (opens new window)
  • Get Started

    • Concepts in ExtremeCloud IQ
    • REST API Overview
    • REST API Rate Limiting
    • Dynamic REST API Response
      • Background
      • fields and views in API request
        • Concept
        • Parameter name
        • Common views
        • Default view
      • Examples
        • Fetch devices by fields
        • Fetch devices by views
        • Fetch devices by fields and views
      • view to fields mapping
        • Device APIs
        • Client APIs
    • Authentication
    • Long-Running Operations
  • Tutorial

  • documentation
  • Get Started
Xuwei Hong, Shangquan Wen
2021-11-04

Dynamic REST API Response

# Background

The response of REST API may have a huge number of fields, but we only need small part of these fields in many cases. This results in unnecessary data computation and network traffic cost. Dynamic response is an option to address the mentioned problems.

# fields and views in API request

# Concept

The field and view are the two most important concepts to achieve our goal.

  • The field is a specific field in the API response.
  • The view is a collection of fields.

TIP

By specifying one or more fields and views in API request to ask API server only compute and return the interested fields.

# Parameter name

  • fields: The fields to return, user can specify multiple fields in the request.
  • views: The views to return, user can specify multiple views in the request.

TIP

If both fields and views are specified, then all combined fields will be returned.

# Common views

The common views are the view names that can be applied to all supported APIs.

  • basic: Returning the basic fields, each API will have their own basic fields.
  • full: Returning all supported fields.

# Default view

If both fields and views are empty, then basic view will be returned.

# Examples

# Fetch devices by fields

GET /devices?fields=hostname,active_clients
1

# Fetch devices by views

GET /devices?views=basic,status
1

# Fetch devices by fields and views

GET /devices?views=location,status&fields=hostname
1

# view to fields mapping

# Device APIs

View Fields
basic org_id, serial_number, service_tag, mac_address, simulated, device_function, product_type, hostname, ip_address, software_version, device_admin_state, connected
status device_admin_state, connected
client active_clients
location location_id, locations
detail org_id, create_time, update_time, serial_number, service_tag, mac_address, simulated, device_function, product_type, hostname, ip_address, software_version, device_admin_state, connected, last_connect_time, primary_dns_server_address, subnet_mask, default_gateway, ipv6_address, ipv6_netmask, display_version
full create_time, update_time, org_id, org_name, location_id, serial_number, mac_address, device_function, product_type, hostname, ip_address, software_version, device_admin_state, connected, last_connect_time, network_policy_name, network_policy_id, primary_ntp_server_address, primary_dns_server_address, subnet_mask, default_gateway, ipv6_address, ipv6_netmask, simulated, display_version, active_clients, locations

# Client APIs

View Fields
basic org_id, hostname, mac_address, ip_address, ipv6_address, os_type, device_id, connected, online_time, offline_time, connection_type, ssid, port
status connected, online_time, offline_time
location location_id, locations
metrics client_health, application_health, network_health, radio_health
iot mobility, category, description
detail create_time, update_time, org_id, org_name, location_id, hostname, mac_address, ip_address, ipv6_address, os_type, device_id, device_function, device_name, device_mac_address, username, user_profile_name, connected, online_time, offline_time, vlan, connection_type, ssid, port, bssid, port_type_name, interface_name, auth, encryption_method, channel, rssi, snr, wing_ap, vendor, radio_type
full create_time, update_time, org_id, org_name, location_id, hostname, mac_address, ip_address, ipv6_address, os_type, device_id, device_function, device_name, device_mac_address, username, user_profile_name, connected, online_time, offline_time, vlan, connection_type, ssid, port, bssid, port_type_name, interface_name, auth, encryption_method, channel, rssi, snr, wing_ap, vendor, mobility, category, description, locations, client_health, application_health, network_health, radio_health, radio_type
LastUpdated: 2022/05/12, 19:30:31
REST API Rate Limiting
Authentication

← REST API Rate Limiting Authentication→

Copyright © 1996-2024 Extreme Networks