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)
  • 2022 R4 Release
  • 2022 R3 Release
  • 2022 R2 Release
  • 2021 GA Release
    • Core Features
      • Authentication
      • Authorization
      • Account
      • User
      • HIQ
      • Location
      • Device
      • Network Policy
      • Client
      • Application
      • Log
      • Notification
      • Configuration - Deployment
      • Configuration - Basic
      • Configuration - User
      • Configuration - Policy
      • Configuration - Auth
      • Configuration - Certificate
    • Breaking Changes since Beta release
      • Account
      • User
      • HIQ
      • Location
      • SSID
      • PCG
      • Event Subscription
      • LOG
      • Device
      • Enum value changes
  • releases
ExtremeCloud IQ API Team
2021-11-07

2021 GA Release

# Core Features

The ExtremeCloud IQ API GA release covers the core features to interact with ExtremeCloud IQ platform.

# Authentication

Authenticate user to access protected resources

  • Support username/password authentication

# Authorization

API token and permissions

  • Fine-grained and flexible access control
  • Generate new API Token
  • Show user permissions
  • Permission check

# Account

ExtremeCloud IQ Account

  • Get XIQ Account basic information
  • Get VIQ information
  • Switch to another ExtremeCloud IQ account
  • Get VIQ info
  • Backup VIQ

# User

Local and external user management in ExtremeCloud IQ account

  • User management
  • External user management

# HIQ

Hierarchical ExtremeCloud IQ

  • Get HIQ status
  • Organization management
  • Switch HIQ context

# Location

Hierarchical locations and floor plan

  • Location, building, floor management
  • Get location tree

# Device

Supported device platforms: Cloud Engine, IQ Engine, WiNG, VOSS, EXOS ...

  • Get device list
  • Get device details
  • Device onboarding
  • Delete device
  • Send CLI to device
  • Reboot device
  • Switch device management status
  • Assign/Revoke location
  • Assign/Revoke network policy
  • Change hostname
  • Override SSID
  • Change OS mode
  • Assign/Revoke RADIUS proxy
  • Get alarms for device
  • Get metrics for device

# Network Policy

Unified configuration management for wireless and wired network devices

  • List network policies
  • Add/remove SSID

# Client

The clients associate to the devices of ExtremeCloud IQ

  • Get active clients
  • Get client info
  • Get client metrics

# Application

Application management and application metrics

  • List applications
  • List topN applications
  • List topN clients for given application

# Log

Access all kinds of logs in ExtremeCloud IQ

  • List accounting logs
  • List audit logs
  • List auth logs
  • List credential logs
  • List Email logs
  • List SMS logs

# Notification

Push events/logs to users via Webhook, Email, SMS, etc.

  • List webhook subscriptions
  • Create/Delete webhook subscriptions

# Configuration - Deployment

Push configuration to devices

  • Push configuration and upgrade firmware
  • Get configuration deployment overview
  • Get configuration deployment status

# Configuration - Basic

VLAN Profile/DHCP Server/...

  • VLAN profile management

# Configuration - User

User Group/End User/PCG/PPSK Classification

  • Get Email/SMS templates
  • Key-based PCG (Private Client Group) management
  • User group management
  • Enduser management

# Configuration - Policy

SSID/User Profile/Classification Rule/CCG/...

  • CCG (Cloud Config Group) management
  • Classification rule management
  • SSID management
  • User profile management
  • Get L3 address profile

# Configuration - Auth

AD/LDAP/RADIUS/CWP/...

  • AD (Active Directory) management
  • LDAP server management
  • RADIUS server management
  • RADIUS client object management
  • RADIUS proxy management
  • List CWP (Captive Web Portal)

# Configuration - Certificate

Certificate

  • List certificates

# Breaking Changes since Beta release

Note If you ever used the Beta release REST APIs, please check the below breaking changes carefully and make corresponding changes.

# Account

# GET /account/viq

  • Response Body
    • Enum value change
      • licenses.mode
      • licenses.entitlement_type

# GET /account/info

  • Path
    • The new path is /account/home
  • Response Body
    • Enum value change
      • account_type
      • account_mode

# User

# GET /users/{id}

  • Response Body
    • Removed fields
      • user_group_id
      • user_group_name
    • Enum value change
      • user_role

# PUT /users/{id}

  • Request Method
    • The new request method is PATCH
  • Request Body
    • Enum value change
      • user_role
  • Response Body
    • Removed fields
      • user_group_id
      • user_group_name
    • Enum value change
      • user_role

# GET /users

  • Response Body
    • Removed fields
      • user_group_id
      • user_group_name
    • Enum value change
      • user_role

# POST /users

  • Request Body
    • Enum value change
      • user_role
  • Response Body
    • Removed fields
      • user_group_id
      • user_group_name
    • Enum value change
      • user_role

# GET /users/externalaccess/{id}

  • Path
    • The new path is /users/external/{id}
  • Response Body
    • Removed fields
      • user_group_id
      • user_group_name
    • Enum value change
      • user_role

# PUT /users/externalaccess/{id}

  • Request method
    • The new request method is PATCH
  • Path
    • The new path is /users/external/{id}
  • Request Body
    • Enum value change
      • user_role
  • Response Body
    • Removed fields
      • user_group_id
      • user_group_name
    • Enum value change
      • user_role

# DELETE /users/externalaccess/{id}

  • Path
    • The new path is /users/external/{id}

# POST /users/externalaccess

  • Path
    • The new path is /users/external
  • Request Body
    • Enum value change
      • user_role
  • Response Body
    • Removed fields
      • user_group_id
      • user_group_name
    • Enum value change
      • user_role

# GET /users/externalaccess

  • Path
    • The new path is /users/external
  • Response Body
    • Removed fields
      • user_group_id
      • user_group_name
    • Enum value change
      • user_role

# GET /user/profile

  • Path
    • The new path is /users/me
  • Response Body
    • Removed fields
      • user_group_id
      • user_group_name
    • Enum value change
      • user_role

# HIQ

# GET /hiq/organizations

  • Response Body
    • Enum value change
      • type

# POST /hiq/organizations

  • Response Body
    • Enum value change
      • type

# Location

# POST /locations/floor

  • Request Body
    • Enum value change
      • environment
      • measurement_unit
  • Response Body
    • Enum value change
      • environment
      • measurement_unit

# PUT /locations/floor/{id}

  • Request Body
    • Enum value change
      • environment
      • measurement_unit
  • Response Body
    • Enum value change
      • environment
      • measurement_unit

# SSID

# GET /ssids/email-templates

  • Path
    • The new path is /email-templates
  • Query Parameter
    • Enum value change
      • password_type
  • Response Body
    • Enum value change
      • password_type

# GET /ssids/sms-templates

  • Path
    • The new path is /sms-templates
  • Query Parameter
    • Enum value change
      • password_type
  • Response Body
    • Enum value change
      • password_type

# PUT /ssids/usergroups/{id}

  • Path
    • The new path is /usergroups/{id}
  • Request Body
    • Enum value change
      • password_db_location
      • password_type
      • pcg_type
      • password_settings.psk_generation_method
      • password_settings.password_character_types
      • expiration_settings.expiration_type
      • expiration_settings.expiration_action
      • expiration_settings.post_expiration_action.delete_after_unit
  • Response Body
    • Enum value change
      • password_db_location
      • password_type
      • pcg_type
      • password_settings.psk_generation_method
      • password_settings.password_character_types
      • expiration_settings.expiration_type
      • expiration_settings.expiration_action
      • expiration_settings.post_expiration_action.delete_after_unit

# DELETE /ssids/usergroups/{id}

  • Path
    • The new path is /usergroups/{id}

# GET /ssids/usergroups

  • Path
    • The new path is /usergroups
  • Query Parameter
    • Enum value change
      • password_db_location
      • password_type
  • Response Body
    • Enum value change
      • password_db_location
      • password_type
      • pcg_type
      • password_settings.psk_generation_method
      • password_settings.password_character_types
      • expiration_settings.expiration_type
      • expiration_settings.expiration_action
      • expiration_settings.post_expiration_action.delete_after_unit

# POST /ssids/usergroups

  • Path
    • The new path is /usergroups
  • Request Body
    • Enum value change
      • password_db_location
      • password_type
      • pcg_type
      • password_settings.psk_generation_method
      • password_settings.password_character_types
      • expiration_settings.expiration_type
      • expiration_settings.expiration_action
      • expiration_settings.post_expiration_action.delete_after_unit
  • Response Body
    • Enum value change
      • password_db_location
      • password_type
      • pcg_type
      • password_settings.psk_generation_method
      • password_settings.password_character_types
      • expiration_settings.expiration_type
      • expiration_settings.expiration_action
      • expiration_settings.post_expiration_action.delete_after_unit

# GET /ssids/users

  • Path
    • The new path is /endusers

# PUT /ssids/users/{id}

  • Path
    • The new path is /endusers/{id}

# POST /ssids/users

  • Path
    • The new path is /endusers

# DELETE /ssids/users/{id}

  • Path
    • The new path is /endusers/{id}

# PCG

# DELETE /pcg/key-based/{policyId}

  • Path
    • The new path is /pcgs/key-based/network-policy-{policyId}

# POST /pcg/key-based/{policyId}/keys/:generate

  • Path
    • The new path is /pcgs/key-based/network-policy-{policyId}/keys/:generate

# POST /pcg/key-based/{policyId}/keys/:email

  • Path
    • The new path is /pcgs/key-based/network-policy-{policyId}/keys/:email

# GET /pcg/key-based/ports/{policyId}

  • Path
    • The new path is /pcgs/key-based/network-policy-{policyId}/port-assignments

# POST /pcg/key-based/ports/{policyId}

  • Path
    • The new path is /pcgs/key-based/network-policy-{policyId}/port-assignments

# POST /pcg/key-based/{policyId}/:onboard

  • Path
    • The new path is /pcgs/key-based/network-policy-{policyId}/:onboard

# GET /pcg/key-based/{policyId}/users

  • Path
    • The new path is /pcgs/key-based/network-policy-{policyId}/users

# POST /pcg/key-based/{policyId}/users

  • Path
    • The new path is /pcgs/key-based/network-policy-{policyId}/users

# DELETE /pcg/key-based/{policyId}/users

  • Path
    • The new path is /pcgs/key-based/network-policy-{policyId}/users

# PUT /pcg/key-based/{policyId}/users

  • Path
    • The new path is /pcgs/key-based/network-policy-{policyId}/users

# Event Subscription

# GET /subscriptions/webhook

  • Response Body
    • Enum value change
      • status
      • data_type
      • message_type

# POST /subscriptions/webhook

  • Request Body
    • Enum value change
      • message_type

# LOG

# GET /logs/sms

  • Response Body
    • Enum value change
      • status

# GET /logs/audit

  • Query Parameter
    • Enum value change
      • category
  • Response Body
    • Enum value change
      • data.category

# Device

# GET /devices/config/deploy/status

  • Path
    • The new path is /deployments/status
  • Response Body
    • Changed field [is_finished] to [finished]

# GET /devices/config/deploy/overview

  • Path
    • The new path is /deployments/overview

# POST /devices/config/:deploy

  • Path
    • The new path is /deployments

# GET /devices

  • Query Parameter
    • Enum value change
      • admin_states
  • Response Body
    • Enum value change
      • device_admin_states
      • device_function

# GET /devices/network-policy/{policyId}

  • Response Body
    • Enum value change
      • device_admin_states
      • device_function

# GET /devices/{id}

  • Response Body
    • Enum value change
      • device_admin_states
      • device_function

# GET /devices/status/summary

  • Path
    • The new path is /devices/stats

# Enum value changes

We removed prefixes, <ENUM_TYPE>_UNSPECIFIED and UNRECOGNIZED for all enums. Please check below for details.

# licenses.mode

Old Value New Value
LICENSE_MODE_UNSPECIFIED Removed
LICENSE_MODE_BUY BUY
LICENSE_MODE_PLANNER PLANNER
LICENSE_MODE_EVAL EVAL
LICENSE_MODE_MSP MSP
LICENSE_MODE_UNKNOWN UNKNOWN
UNRECOGNIZED Removed

# licenses.entitlement_type

Old Value New Value
ENTITLEMENT_TYPE_UNSPECIFIED Removed
ENTITLEMENT_TYPE_EVALUATION EVALUATION
ENTITLEMENT_TYPE_PERMANENT PERMANENT
ENTITLEMENT_TYPE_RENEW RENEW
ENTITLEMENT_TYPE_UNKNOWN UNKNOWN
UNRECOGNIZED Removed

# account_type

Old Value New Value
ACCOUNT_TYPE_UNSPECIFIED Removed
ACCOUNT_TYPE_INTERNAL INTERNAL
ACCOUNT_TYPE_CUSTOMER CUSTOMER
ACCOUNT_TYPE_HIQ HIQ
ACCOUNT_TYPE_PARTNER PARTNER
UNRECOGNIZED Removed

# account_mode

Old Value New Value
ACCOUNT_MODE_UNSPECIFIED Removed
ACCOUNT_MODE_COPILOT COPILOT
ACCOUNT_MODE_CONNECT CONNECT
UNRECOGNIZED Removed

# user_role

Old Value New Value
USER_ROLE_UNSPECIFIED Removed
USER_ROLE_ADMINISTRATOR ADMINISTRATOR
USER_ROLE_OPERATOR OPERATOR
USER_ROLE_MONITOR MONITOR
USER_ROLE_HELP_DESK HELP_DESK
USER_ROLE_GUEST_MANAGEMENT GUEST_MANAGEMENT
USER_ROLE_OBSERVER OBSERVER
USER_ROLE_INSTALLER INSTALLER
USER_ROLE_APPLICATION_OPERATOR APPLICATION_OPERATOR
UNRECOGNIZED Removed

# hiq.type

Old Value New Value
ORGANIZATION_TYPE_UNSPECIFIED Removed
ORGANIZATION_TYPE_REGULAR REGULAR
ORGANIZATION_TYPE_PRIVATE PRIVATE
UNRECOGNIZED Removed

# floor.environment

Old Value New Value
RF_ENVIRONMENT_TYPE_UNSPECIFIED Removed
RF_ENVIRONMENT_TYPE_AUTO_ESTIMATE AUTO_ESTIMATE
RF_ENVIRONMENT_TYPE_OFFICE OFFICE
RF_ENVIRONMENT_TYPE_OUTDOOR_FREE_SPACE OUTDOOR_FREE_SPACE
RF_ENVIRONMENT_TYPE_OBSTRUCTED_IN_BUILDING OBSTRUCTED_IN_BUILDING
RF_ENVIRONMENT_TYPE_OUTDOOR_SUBURBAN OUTDOOR_SUBURBAN
RF_ENVIRONMENT_TYPE_WAREHOUSE WAREHOUSE
RF_ENVIRONMENT_TYPE_OUTDOOR_DENSE_URBAN OUTDOOR_DENSE_URBAN
UNRECOGNIZED Removed

# floor.measurement_unit

Old Value New Value
MEASUREMENT_UNIT_UNSPECIFIED Removed
MEASUREMENT_UNIT_FEET FEET
MEASUREMENT_UNIT_METERS METERS
UNRECOGNIZED Removed

# password_type

Old Value New Value
PASSWORD_TYPE_UNSPECIFIED Removed
PASSWORD_TYPE_PPSK PPSK
PASSWORD_TYPE_RADIUS RADIUS
UNRECOGNIZED Removed

# password_db_location

Old Value New Value
PASSWORD_DB_LOCATION_UNSPECIFIED Removed
PASSWORD_DB_LOCATION_CLOUD CLOUD
PASSWORD_DB_LOCATION_LOCAL LOCAL
UNRECOGNIZED Removed

# pcg_type

Old Value New Value
PCG_TYPE_UNSPECIFIED Removed
PCG_TYPE_AP_BASED AP_BASED
PCG_TYPE_KEY_BASED KEY_BASED
UNRECOGNIZED Removed

# password_settings.psk_generation_method

Old Value New Value
PSK_GENERATION_METHOD_UNSPECIFIED Removed
PSK_GENERATION_METHOD_PASSWORD_ONLY PASSWORD_ONLY
PSK_GENERATION_METHOD_USER_STRING_PASSWORD USER_STRING_PASSWORD
UNRECOGNIZED Removed

# password_settings.password_character_types

Old Value New Value
PASSWORD_CHARACTER_TYPE_INCLUDE_CHARACTER_TYPE_UNSPECIFIED Removed
PASSWORD_CHARACTER_TYPE_INCLUDE_ALL_CHARACTER_TYPE_ENABLED INCLUDE_ALL_CHARACTER_TYPE_ENABLED
PASSWORD_CHARACTER_TYPE_INCLUDE_ANY_CHARACTER_TYPES_ENABLED INCLUDE_ANY_CHARACTER_TYPES_ENABLED
PASSWORD_CHARACTER_TYPE_INCLUDE_ONLY_ONE_CHARACTER_TYPE_ENABLED INCLUDE_ONLY_ONE_CHARACTER_TYPE_ENABLED
UNRECOGNIZED Removed

# expiration_settings.expiration_type

Old Value New Value
EXPIRATION_TYPE_UNSPECIFIED Removed
EXPIRATION_TYPE_NEVER_EXPIRE NEVER_EXPIRE
EXPIRATION_TYPE_VALID_DURING_DATES VALID_DURING_DATES
EXPIRATION_TYPE_VALID_FOR_TIME_PERIOD VALID_FOR_TIME_PERIOD
EXPIRATION_TYPE_DAILY DAILY
UNRECOGNIZED Removed

# expiration_settings.expiration_action

Old Value New Value
EXPIRATION_ACTION_TYPE_UNSPECIFIED Removed
EXPIRATION_ACTION_TYPE_SHOW_MESSAGE SHOW_MESSAGE
EXPIRATION_ACTION_TYPE_REJECT_ACCESS REJECT_ACCESS
UNRECOGNIZED Removed

# expiration_settings.post_expiration_action.delete_after_unit

Old Value New Value
DATE_TIME_UNIT_TYPE_UNSPECIFIED Removed
DATE_TIME_UNIT_TYPE_MINUTE MINUTE
DATE_TIME_UNIT_TYPE_HOUR HOUR
DATE_TIME_UNIT_TYPE_DAY DAY
DATE_TIME_UNIT_TYPE_WEEK WEEK
UNRECOGNIZED Removed

# subscription.status

Old Value New Value
EXPIRATION_ACTION_TYPE_UNSPECIFIED Removed
EXPIRATION_ACTION_TYPE_SHOW_MESSAGE SHOW_MESSAGE
EXPIRATION_ACTION_TYPE_REJECT_ACCESS REJECT_ACCESS
UNRECOGNIZED Removed

# subscription.data_type

Old Value New Value
SUBSCRIPTION_DATA_TYPE_UNSPECIFIED Removed
SUBSCRIPTION_DATA_TYPE_LOCATION LOCATION
SUBSCRIPTION_DATA_TYPE_AUDIT_LOG AUDIT_LOG
Added GDPR_LOG
Added CREDENTIAL_LOG
Added ACCOUNTING_LOG
Added AUTHENTICATION_LOG
Added EMAIL_LOG
Added SMS_LOG
UNRECOGNIZED Removed

# subscription.message_type

Old Value New Value
SUBSCRIPTION_MESSAGE_TYPE_UNSPECIFIED Removed
SUBSCRIPTION_MESSAGE_TYPE_LOCATION_AP_CENTRIC LOCATION_AP_CENTRIC
SUBSCRIPTION_MESSAGE_TYPE_LOCATION_CLIENT_CENTRIC LOCATION_CLIENT_CENTRIC
SUBSCRIPTION_MESSAGE_TYPE_AUDIT_LOG_ALL AUDIT_LOG_ALL
Added GDPR_LOG_ALL
Added CREDENTIAL_LOG_ALL
Added ACCOUNTING_LOG_ALL
Added AUTHENTICATION_LOG_ALL
Added EMAIL_LOG_ALL
Added SMS_LOG_ALL
UNRECOGNIZED Removed

# sms_log.status

Old Value New Value
SMS_LOG_STATUS_SEND_UNSPECIFIED Removed
SMS_LOG_STATUS_SEND_OUT SEND_OUT
SMS_LOG_STATUS_COMPLETE COMPLETE
SMS_LOG_STATUS_SUCCESS SUCCESS
SMS_LOG_STATUS_FAIL FAIL
UNRECOGNIZED Removed

# audit_log.category

Old Value New Value
AUDIT_LOG_CATEGORY_UNSPECIFIED Removed
AUDIT_LOG_CATEGORY_ADMIN ADMIN
AUDIT_LOG_CATEGORY_SYSTEM SYSTEM
AUDIT_LOG_CATEGORY_DEPLOYMENT DEPLOYMENT
AUDIT_LOG_CATEGORY_CONFIG CONFIG
AUDIT_LOG_CATEGORY_MONITOR MONITOR
AUDIT_LOG_CATEGORY_ALARM ALARM
UNRECOGNIZED Removed

# devices.admin_states

Old Value New Value
DEVICE_ADMIN_STATE_UNSPECIFIED Removed
DEVICE_ADMIN_STATE_NEW NEW
DEVICE_ADMIN_STATE_BOOTSTRAP BOOTSTRAP
DEVICE_ADMIN_STATE_STAGED STAGED
DEVICE_ADMIN_STATE_MANAGED MANAGED
DEVICE_ADMIN_STATE_UNMANAGED UNMANAGED
UNRECOGNIZED Removed

# device_function

Old Value New Value
DEVICE_FUNCTION_UNSPECIFIED Removed
DEVICE_FUNCTION_AP AP
DEVICE_FUNCTION_ROUTER ROUTER
DEVICE_FUNCTION_ROUTER_AS_L2_VPN_GATEWAY ROUTER_AS_L2_VPN_GATEWAY
DEVICE_FUNCTION_ROUTER_AS_L3_VPN_GATEWAY ROUTER_AS_L3_VPN_GATEWAY
DEVICE_FUNCTION_SWITCH SWITCH
DEVICE_FUNCTION_SWITCH_HAC SWITCH_HAC
DEVICE_FUNCTION_SWITCH_DELL SWITCH_DELL
DEVICE_FUNCTION_L2_VPN_GATEWAY L2_VPN_GATEWAY
DEVICE_FUNCTION_L3_VPN_GATEWAY L3_VPN_GATEWAY
UNRECOGNIZED Removed
LastUpdated: 2022/05/26, 09:59:20
2022 R2 Release

← 2022 R2 Release

Copyright © 1996-2024 Extreme Networks