openapi: 3.1.0
info:
title: Aruba Central API
description: >-
RESTful API for managing the HPE Aruba Networking Central cloud platform.
Provides unified network management, AI-based analytics, device monitoring,
and configuration for wired, wireless, and SD-WAN networks. Aruba Central
serves as a single pane of glass for managing access points, switches,
gateways, and SD-WAN appliances across distributed enterprise environments.
version: 2.5.8
contact:
name: HPE Aruba Networking Developer Hub
url: https://developer.arubanetworks.com/central/
license:
name: Proprietary
url: https://www.arubanetworks.com/company/legal/
termsOfService: https://www.arubanetworks.com/company/legal/
x-logo:
url: https://www.arubanetworks.com/assets/img/aruba-central-logo.png
externalDocs:
description: Aruba Central API Documentation
url: https://developer.arubanetworks.com/central/docs
servers:
- url: https://apigw-prod2.central.arubanetworks.com
description: US-2 Production API Gateway
- url: https://app1-apigw.central.arubanetworks.com
description: US-1 Production API Gateway
- url: https://apigw-useast1.central.arubanetworks.com
description: US-East-1 Production API Gateway
- url: https://apigw-prod2.central.arubanetworks.com
description: EU-1 Production API Gateway
- url: https://apigw-apac1.central.arubanetworks.com
description: APAC-1 Production API Gateway
- url: https://apigw-canada1.central.arubanetworks.com
description: Canada-1 Production API Gateway
security:
- bearerAuth: []
tags:
- name: Devices
description: >-
Device inventory management including listing, searching, and managing
devices across the Aruba Central platform.
- name: Groups
description: >-
Configuration group management for organizing devices, applying templates,
and managing group-level settings.
- name: Sites
description: >-
Site and location management for organizing network infrastructure by
physical location.
- name: Access Points
description: >-
Access point monitoring and management including status, statistics,
RF information, and client connectivity.
- name: Monitoring
description: >-
Network-wide monitoring for clients, networks, gateways, and overall
network health metrics.
paths:
/platform/device_inventory/v1/devices:
get:
operationId: getDevices
summary: List All Devices
description: >-
Retrieves a list of all devices in the Aruba Central device inventory
including access points, switches, gateways, and SD-WAN appliances.
Supports filtering by device type, status, and other attributes.
tags:
- Devices
parameters:
- $ref: '#/components/parameters/offsetParam'
- $ref: '#/components/parameters/limitParam'
- name: sku_type
in: query
description: >-
Filter by device type (IAP for access points, HP for switches,
CONTROLLER for gateways).
required: false
schema:
type: string
enum:
- IAP
- HP
- CONTROLLER
- GATEWAY
- SWITCH
- VGW
- name: macaddr
in: query
description: Filter by device MAC address.
required: false
schema:
type: string
- name: serial
in: query
description: Filter by device serial number.
required: false
schema:
type: string
- name: model
in: query
description: Filter by device model name.
required: false
schema:
type: string
responses:
'200':
description: Successful retrieval of device list.
content:
application/json:
schema:
$ref: '#/components/schemas/DeviceListResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/RateLimited'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/platform/device_inventory/v1/devices/{serial}:
get:
operationId: getDeviceBySerial
summary: Get Device by Serial Number
description: >-
Retrieves detailed information about a specific device identified by
its serial number, including model, firmware, group assignment, site,
and connectivity status.
tags:
- Devices
parameters:
- name: serial
in: path
description: The serial number of the device.
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval of device details.
content:
application/json:
schema:
$ref: '#/components/schemas/Device'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
delete:
operationId: deleteDevice
summary: Remove Device From Inventory
description: >-
Removes a device from the Aruba Central inventory by serial number.
The device must be in an unassigned state before deletion.
tags:
- Devices
parameters:
- name: serial
in: path
description: The serial number of the device to remove.
required: true
schema:
type: string
responses:
'200':
description: Device successfully removed.
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/configuration/v2/groups:
get:
operationId: getGroups
summary: List All Groups
description: >-
Retrieves all configuration groups defined in Aruba Central. Groups
serve as the primary organizational unit for applying configuration
templates and firmware policies to devices.
tags:
- Groups
parameters:
- $ref: '#/components/parameters/offsetParam'
- $ref: '#/components/parameters/limitParam'
responses:
'200':
description: Successful retrieval of groups list.
content:
application/json:
schema:
$ref: '#/components/schemas/GroupListResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
operationId: createGroup
summary: Create a New Group
description: >-
Creates a new configuration group in Aruba Central. Groups define
the configuration profile and firmware compliance policy for member
devices.
tags:
- Groups
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/GroupCreate'
responses:
'200':
description: Group created successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/Group'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/configuration/v2/groups/{group_name}:
get:
operationId: getGroupByName
summary: Get Group Details
description: >-
Retrieves detailed information about a specific configuration group
including its properties, allowed device types, template configuration
mode, and architecture settings.
tags:
- Groups
parameters:
- name: group_name
in: path
description: The name of the group.
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval of group details.
content:
application/json:
schema:
$ref: '#/components/schemas/GroupDetail'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
patch:
operationId: updateGroup
summary: Update Group Properties
description: >-
Updates properties of an existing configuration group. Supports partial
updates to group settings, allowed device types, and firmware compliance
policies.
tags:
- Groups
parameters:
- name: group_name
in: path
description: The name of the group to update.
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/GroupUpdate'
responses:
'200':
description: Group updated successfully.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
delete:
operationId: deleteGroup
summary: Delete a Group
description: >-
Deletes a configuration group from Aruba Central. The group must
have no devices assigned before it can be deleted.
tags:
- Groups
parameters:
- name: group_name
in: path
description: The name of the group to delete.
required: true
schema:
type: string
responses:
'200':
description: Group deleted successfully.
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/central/v2/sites:
get:
operationId: getSites
summary: List All Sites
description: >-
Retrieves all sites defined in Aruba Central. Sites represent physical
locations and are used to organize devices geographically for
location-based monitoring and reporting.
tags:
- Sites
parameters:
- $ref: '#/components/parameters/offsetParam'
- $ref: '#/components/parameters/limitParam'
- name: calculate_total
in: query
description: Whether to calculate and return the total number of sites.
required: false
schema:
type: boolean
default: true
responses:
'200':
description: Successful retrieval of sites list.
content:
application/json:
schema:
$ref: '#/components/schemas/SiteListResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
operationId: createSite
summary: Create a New Site
description: >-
Creates a new site in Aruba Central with location details including
address, city, state, country, and optional geographic coordinates.
tags:
- Sites
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SiteCreate'
responses:
'200':
description: Site created successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/Site'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/central/v2/sites/{site_id}:
get:
operationId: getSiteById
summary: Get Site Details
description: >-
Retrieves detailed information about a specific site including its
address, geographic coordinates, associated devices, and tags.
tags:
- Sites
parameters:
- name: site_id
in: path
description: The unique identifier of the site.
required: true
schema:
type: integer
format: int64
responses:
'200':
description: Successful retrieval of site details.
content:
application/json:
schema:
$ref: '#/components/schemas/SiteDetail'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
patch:
operationId: updateSite
summary: Update Site Details
description: >-
Updates an existing site's properties including name, address,
geographic coordinates, and associated tags.
tags:
- Sites
parameters:
- name: site_id
in: path
description: The unique identifier of the site to update.
required: true
schema:
type: integer
format: int64
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SiteUpdate'
responses:
'200':
description: Site updated successfully.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
delete:
operationId: deleteSite
summary: Delete a Site
description: Deletes a site from Aruba Central by its unique identifier.
tags:
- Sites
parameters:
- name: site_id
in: path
description: The unique identifier of the site to delete.
required: true
schema:
type: integer
format: int64
responses:
'200':
description: Site deleted successfully.
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/central/v2/sites/{site_id}/associate:
post:
operationId: associateDevicesToSite
summary: Associate Devices to a Site
description: >-
Associates one or more devices to a site by providing their serial
numbers. Devices must exist in the inventory before association.
tags:
- Sites
- Devices
parameters:
- name: site_id
in: path
description: The unique identifier of the site.
required: true
schema:
type: integer
format: int64
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/SiteDeviceAssociation'
responses:
'200':
description: Devices associated to site successfully.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/monitoring/v2/aps:
get:
operationId: getAccessPoints
summary: List All Access Points
description: >-
Retrieves monitoring data for all access points managed by Aruba Central
including status, client count, radio information, uptime, and
performance metrics.
tags:
- Access Points
- Monitoring
parameters:
- $ref: '#/components/parameters/offsetParam'
- $ref: '#/components/parameters/limitParam'
- name: group
in: query
description: Filter by group name.
required: false
schema:
type: string
- name: site
in: query
description: Filter by site name.
required: false
schema:
type: string
- name: status
in: query
description: Filter by access point status.
required: false
schema:
type: string
enum:
- Up
- Down
- name: label
in: query
description: Filter by label name.
required: false
schema:
type: string
- name: model
in: query
description: Filter by AP model.
required: false
schema:
type: string
- name: fields
in: query
description: >-
Comma-separated list of fields to return. Use to request only
specific attributes in the response.
required: false
schema:
type: string
- name: calculate_total
in: query
description: Whether to calculate and return the total number of APs.
required: false
schema:
type: boolean
default: true
- name: swarm_id
in: query
description: Filter by Swarm/cluster identifier.
required: false
schema:
type: string
responses:
'200':
description: Successful retrieval of access point list.
content:
application/json:
schema:
$ref: '#/components/schemas/AccessPointListResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/RateLimited'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/monitoring/v2/aps/{serial}:
get:
operationId: getAccessPointBySerial
summary: Get Access Point Details
description: >-
Retrieves detailed monitoring data for a specific access point
including radio configuration, client statistics, uplink information,
mesh status, and performance counters.
tags:
- Access Points
- Monitoring
parameters:
- name: serial
in: path
description: The serial number of the access point.
required: true
schema:
type: string
responses:
'200':
description: Successful retrieval of access point details.
content:
application/json:
schema:
$ref: '#/components/schemas/AccessPointDetail'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'404':
$ref: '#/components/responses/NotFound'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/monitoring/v2/clients:
get:
operationId: getClients
summary: List All Connected Clients
description: >-
Retrieves a list of all clients currently connected to the network
including their connection type, associated device, signal strength,
and network usage.
tags:
- Monitoring
parameters:
- $ref: '#/components/parameters/offsetParam'
- $ref: '#/components/parameters/limitParam'
- name: group
in: query
description: Filter by group name.
required: false
schema:
type: string
- name: site
in: query
description: Filter by site name.
required: false
schema:
type: string
- name: network
in: query
description: Filter by SSID or network name.
required: false
schema:
type: string
- name: client_status
in: query
description: Filter by client connection status.
required: false
schema:
type: string
enum:
- CONNECTED
- FAILED_TO_CONNECT
- name: band
in: query
description: Filter by radio band.
required: false
schema:
type: string
enum:
- 2.4
- '5'
- '6'
responses:
'200':
description: Successful retrieval of client list.
content:
application/json:
schema:
$ref: '#/components/schemas/ClientListResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'429':
$ref: '#/components/responses/RateLimited'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/monitoring/v2/networks:
get:
operationId: getNetworks
summary: List All Networks
description: >-
Retrieves monitoring data for all networks (SSIDs and wired networks)
managed by Aruba Central including client count, usage statistics,
and health metrics.
tags:
- Monitoring
parameters:
- $ref: '#/components/parameters/offsetParam'
- $ref: '#/components/parameters/limitParam'
- name: group
in: query
description: Filter by group name.
required: false
schema:
type: string
- name: site
in: query
description: Filter by site name.
required: false
schema:
type: string
responses:
'200':
description: Successful retrieval of network list.
content:
application/json:
schema:
$ref: '#/components/schemas/NetworkListResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/monitoring/v2/gateways:
get:
operationId: getGateways
summary: List All Gateways
description: >-
Retrieves monitoring data for all gateways managed by Aruba Central
including uplink status, tunnel information, and performance metrics.
tags:
- Monitoring
parameters:
- $ref: '#/components/parameters/offsetParam'
- $ref: '#/components/parameters/limitParam'
- name: group
in: query
description: Filter by group name.
required: false
schema:
type: string
- name: site
in: query
description: Filter by site name.
required: false
schema:
type: string
responses:
'200':
description: Successful retrieval of gateway list.
content:
application/json:
schema:
$ref: '#/components/schemas/GatewayListResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: >-
OAuth 2.0 bearer token obtained through the Aruba Central API Gateway
three-step OAuth flow. Tokens expire after 7200 seconds (2 hours)
and can be refreshed using the refresh_token grant type.
parameters:
offsetParam:
name: offset
in: query
description: Pagination offset (starting index for results).
required: false
schema:
type: integer
default: 0
minimum: 0
limitParam:
name: limit
in: query
description: Maximum number of results to return per request.
required: false
schema:
type: integer
default: 20
minimum: 1
maximum: 1000
responses:
BadRequest:
description: >-
Invalid request. The request body or parameters are malformed or
contain invalid values.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
Unauthorized:
description: >-
Authentication failed. The access token is missing, expired, or
invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
Forbidden:
description: >-
Authorization failed. The authenticated user does not have permission
to perform this operation.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
NotFound:
description: The requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
RateLimited:
description: >-
Rate limit exceeded. The API Gateway enforces rate limits per client ID.
Retry after the interval specified in the Retry-After header.
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
headers:
Retry-After:
description: Number of seconds to wait before retrying.
schema:
type: integer
schemas:
ErrorResponse:
type: object
properties:
description:
type: string
description: Human-readable error message.
example: A sample description.
error_code:
type: string
description: Machine-readable error code.
example: example_value
service_name:
type: string
description: The API service that generated the error.
example: example_value
Device:
type: object
description: >-
Represents a device in the Aruba Central inventory including access
points, switches, gateways, and SD-WAN appliances.
properties:
serial:
type: string
description: Unique serial number of the device.
examples:
- CNBRJM0ABC
macaddr:
type: string
description: MAC address of the device.
examples:
- 'aa:bb:cc:dd:ee:ff'
device_type:
type: string
description: Type classification of the device.
enum:
- IAP
- HP
- CONTROLLER
- GATEWAY
- SWITCH
- VGW
example: IAP
model:
type: string
description: Hardware model name.
examples:
- AP-515
firmware_version:
type: string
description: Current firmware version running on the device.
examples:
- 10.4.0.0_85559
status:
type: string
description: Current operational status.
enum:
- Up
- Down
example: Up
group_name:
type: string
description: Name of the configuration group the device belongs to.
example: example_value
site:
type: string
description: Name of the site the device is assigned to.
example: example_value
ip_address:
type: string
format: ipv4
description: IP address of the device.
example: example_value
labels:
type: array
description: Labels assigned to the device.
items:
type: string
example: []
aruba_part_no:
type: string
description: Aruba part number for the device hardware.
example: example_value
customer_id:
type: string
description: Customer ID associated with the device.
example: '500123'
customer_name:
type: string
description: Customer name associated with the device.
example: example_value
DeviceListResponse:
type: object
properties:
total:
type: integer
description: Total number of devices matching the query.
example: 10
count:
type: integer
description: Number of devices returned in this response.
example: 10
devices:
type: array
items:
$ref: '#/components/schemas/Device'
example: []
Group:
type: object
description: >-
Configuration group for organizing devices and applying shared
configuration templates, firmware policies, and settings.
properties:
group:
type: string
description: Name of the group.
examples:
- default
group_properties:
type: object
description: Group-level configuration properties.
example: example_value
GroupDetail:
type: object
properties:
group:
type: string
description: Name of the group.
example: example_value
group_properties:
type: object
properties:
AllowedDevTypes:
type: array
description: Device types allowed in this group.
items:
type: string
enum:
- AccessPoints
- Switches
- Gateways
Architecture:
type: string
description: Network architecture mode.
enum:
- Instant
- AOS10
MonitorOnlySwitch:
type: boolean
description: Whether switches in this group are monitor-only.
AllowedSwitchTypes:
type: array
description: Switch types allowed in this group.
items:
type: string
enum:
- AOS_S
- AOS_CX
example: example_value
GroupCreate:
type: object
required:
- group
- group_attributes
properties:
group:
type: string
description: Name for the new group.
example: example_value
group_attributes:
type: object
description: Configuration attributes for the group.
properties:
group_password:
type: string
description: Password for the group.
template_info:
type: object
properties:
Wired:
type: boolean
Wireless:
type: boolean
example: example_value
GroupUpdate:
type: object
properties:
group_attributes:
type: object
description: Configuration attributes to update.
example: example_value
GroupListResponse:
type: object
properties:
total:
type: integer
description: Total number of groups.
example: 10
count:
type: integer
description: Number of groups returned.
example: 10
data:
type: array
items:
$ref: '#/components/schemas/GroupDetail'
example: []
Site:
type: object
description: >-
Physical site or location used to geographically organize network
devices within Aruba Central.
properties:
site_id:
# --- truncated at 32 KB (47 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/aruba/refs/heads/main/openapi/aruba-central-api.yml