Zyxel Nebula OpenAPI (0.1.36)

Download OpenAPI specification:

Zyxel Nebula OpenAPI

groups

Group operations

Get Groups

header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Organizations From A Group

path Parameters
groupId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

organizations

Organization operations

Get Organizations

Get the organizations

  • name: Org's name
  • orgId: Org's unique ID
  • mode: Org's license mode
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Organization

header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
country
required
string

Alpha-2 ISO-3166, lower case

name
required
string

Name of the organization

Responses

Request samples

Content type
application/json
{
  • "country": "string",
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "orgId": "string",
  • "country": "string",
  • "name": "string",
  • "mode": "PRO"
}

Get Org Info

path Parameters
orgId
required
string >= 16 characters
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
Example
{
  • "name": "string",
  • "orgId": "string",
  • "mode": "PRO",
  • "payg_entitlements": [
    ],
  • "prevMode": "PRO",
  • "mspId": "string",
  • "notes": "string",
  • "licenseOverview": {
    }
}

Register Device License

  • Register license to a device.
  • No PRO organization status required for using this API.
path Parameters
orgId
required
string >= 16 characters
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
licenseKey
required
string

Responses

Request samples

Content type
application/json
{
  • "licenseKey": "string"
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Device Firmware Status From An Org

path Parameters
orgId
required
string >= 16 characters
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Change Device Org

path Parameters
orgId
required
string >= 16 characters
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
devices
required
Array of strings

List of device IDs to move. Devices must not be assigned to a site.

orgId
required
string

Target organization ID. The owner must be the same.

Responses

Request samples

Content type
application/json
{
  • "devices": [
    ],
  • "orgId": "string"
}

Response samples

Content type
application/json
{
  • "status": "string",
  • "failed_devices": [
    ]
}

Register Devices

Register devices to an organization and site(if specified).

  • WARNING: This API will register devices to the organization, which can cause organization mode downgrade to BASE mode if the no license is registered within 15 days.
  • REMINDER: Zyxel Nebula OpenAPI only supports PRO mode organizations.
path Parameters
orgId
required
string >= 16 characters
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
required
Array of objects (DeviceClaimInfo)

List of devices to claim

siteId
string

Site ID to assign the devices to

Responses

Request samples

Content type
application/json
{
  • "devices": [
    ],
  • "siteId": "string"
}

Response samples

Content type
application/json
{
  • "devices": [
    ]
}

Get Sites

path Parameters
orgId
required
string >= 16 characters
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Site

path Parameters
orgId
required
string >= 16 characters
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
name
required
string

Name of the site

country
required
string

Alpha-2 ISO-3166, lower case

timeZone
required
string

IANA timezone, e.g., 'Asia/Taipei'

copyFromSiteId
string

Site ID to copy settings from

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "country": "string",
  • "timeZone": "string",
  • "copyFromSiteId": "string"
}

Response samples

Content type
application/json
{
  • "siteId": "string",
  • "name": "string",
  • "country": "string",
  • "timeZone": "string"
}

Get Devices From An Org

path Parameters
orgId
required
string >= 16 characters
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Activate Trial For Organization

  • Activate trial for an organization.
  • No PRO organization status required for using this API.
path Parameters
orgId
required
string >= 16 characters
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
string
Enum: "NEBULA_PRO_PACK" "GOLD_SECURITY_PACK" "CONTENT_FILTER_PACK" "ELITE_PACK" "CONNECT_AND_PROTECT_PACK" "SECURITY_WIFI_PACK"

Responses

Request samples

Content type
application/json
[
  • "NEBULA_PRO_PACK"
]

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Org Trial Status

  • Get trial status for an organization.
  • No PRO organization status required for using this API.
path Parameters
orgId
required
string >= 16 characters
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "NebulaProPack": "EMPTY",
  • "GoldSecurityPack": "EMPTY",
  • "ContentFilterPack": "EMPTY",
  • "ElitePack": "EMPTY",
  • "ConnectAndProtectPack": "EMPTY",
  • "SecurityWifiPack": "EMPTY"
}

Upgrade Organization

  • Upgrade an organization to PRO Level.
  • No PRO organization status required for using this API.
path Parameters
orgId
required
string >= 16 characters
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

sites

Site operations

Get Ap Client Policy

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update Ap Client Policy

Updates or creates AP client policies.

  • Returns 200 OK if a new client policy is created.
  • Returns 204 No Content if an existing client policy is updated.
path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
macAddress
required
string

Client MAC Address

policyAction
required
string
Enum: "BLOCKED" "WHITELISTED"

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": 200,
  • "message": "OK"
}

Delete Ap Client Policy

Deletes an AP client policy.

  • Returns 204 No Content on successful deletion.
  • Returns 400 Bad Request if the client MAC does not exist.
path Parameters
siteId
required
string
mac
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "status": 400,
  • "message": "Client MAC not found"
}

Get Ap Clients

AP clients data in the last 2 hours.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
string (ApClientAttributesReq)
Enum: "mac_address" "ipv4" "last_seen" "connected_device_id" "first_seen" "description" "os_hostname" "manufacturer" "ssid" "wifi_sta"

Responses

Request samples

Content type
application/json
[
  • "mac_address"
]

Response samples

Content type
application/json
[
  • {
    }
]

Change Device Site

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
devices
required
Array of strings

List of device IDs to move

siteId
string

Target site ID. If not specified, remove devices from the site.

Responses

Request samples

Content type
application/json
{
  • "devices": [
    ],
  • "siteId": "string"
}

Response samples

Content type
application/json
{
  • "status": "string",
  • "failed_devices": [
    ]
}

Get Site Clients

Site-wide clients data in the last 2 hours.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
string (ClientAttributesReq)
Enum: "mac_address" "ipv4" "vlan" "last_seen" "connected_device_id" "status" "first_seen" "description" "os_hostname" "manufacturer"

Responses

Request samples

Content type
application/json
[
  • "mac_address"
]

Response samples

Content type
application/json
[
  • {
    }
]

Get Device Firmware Status From A Site

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Cable Test

Start the switch device's cable diagnostics test.

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
ports
required
Array of integers

Responses

Request samples

Content type
application/json
{
  • "ports": [
    ]
}

Response samples

Content type
application/json
{
  • "ports": [
    ]
}

Ping

Ping the target address. The token must be null to initialize the ping task, and then use the returned token to fetch the results.

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
target
required
string
string or null

Responses

Request samples

Content type
application/json
{
  • "target": "string",
  • "token": "string"
}

Response samples

Content type
application/json
{
  • "token": "string",
  • "isDone": true,
  • "results": [
    ]
}

Reboot

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Devices Online By Type

path Parameters
siteId
required
string
query Parameters
type
string (DeviceType)
Enum: "AP" "SW" "GW" "FIREWALL" "WWAN" "SCR" "GWH" "ACCY"
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Site Reporting

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "apTrafficLog": true,
  • "secuReporterTrafficLog": true,
  • "localTimezone": true,
  • "logPrefix": "string",
  • "syslogServers": [
    ]
}

Update Site Reporting

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
apTrafficLog
required
boolean
secuReporterTrafficLog
required
boolean
localTimezone
required
boolean

Whether to use the local timezone for the reporting

required
string or null
required
Array of objects (SyslogServer)

Responses

Request samples

Content type
application/json
{
  • "apTrafficLog": true,
  • "secuReporterTrafficLog": true,
  • "localTimezone": true,
  • "logPrefix": "string",
  • "syslogServers": [
    ]
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Sw Client Policy

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update Sw Client Policy

Updates or creates SW client policies.

  • Returns 200 OK if a new client policy is created.
  • Returns 204 No Content if an existing client policy is updated.
path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
macAddress
required
string

Client MAC Address

policyAction
required
string
Value: "BLOCKED"
vid
required
integer

Switch client vid

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": 200,
  • "message": "OK"
}

Delete Sw Client Policy

Deletes a SW client policy

  • Returns 204 No Content on successful deletion.
  • Returns 400 Bad Request if the client MAC does not exist.
path Parameters
siteId
required
string
mac
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "status": 400,
  • "message": "Client MAC not found"
}

Update Voucher

path Parameters
siteId
required
string
voucher_id
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
string or null

Optional comment for the vouchers

validType
required
string
Value: "DURATION"
durationHours
required
integer [ 1 .. 8760 ]
purgeDays
required
integer [ 1 .. 180 ]

Responses

Request samples

Content type
application/json
Example
{
  • "comment": "string",
  • "validType": "DURATION",
  • "durationHours": 1,
  • "purgeDays": 1
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Delete Voucher

path Parameters
siteId
required
string
voucher_id
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Vouchers

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Vouchers

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
string or null

Optional comment for the vouchers

quantity
required
integer [ 1 .. 999 ]

Number of vouchers to create

codeLength
required
integer [ 6 .. 10 ]

Length of the voucher code

validType
required
string
Value: "DURATION"
durationHours
required
integer [ 1 .. 8760 ]

Duration in hours

purgeDays
required
integer [ 1 .. 180 ]

Days after which unused vouchers are purged

Responses

Request samples

Content type
application/json
Example
{
  • "comment": "string",
  • "quantity": 1,
  • "codeLength": 6,
  • "validType": "DURATION",
  • "durationHours": 1,
  • "purgeDays": 1
}

Response samples

Content type
application/json
[
  • {
    }
]

Reset Voucher

Resets the vouchers by their IDs.

  1. Validates the existence of each voucher ID.
  2. Invokes the reset operation for the valid voucher IDs.
path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Site Vpn Status

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "sites": [
    ],
  • "gateways": [
    ],
  • "remoteAps": [
    ],
  • "cleints": [
    ]
}

Connectivity

The device connectivity status in the last 2hr/1d/7d/30d

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
required
ClientPeriod (string) or null

Responses

Request samples

Content type
application/json
{
  • "period": "2h"
}

Response samples

Content type
application/json
[
  • {
    }
]

Get Device Tags

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • "string"
]

Update Device Tags

Updates the tags for a specific device by calculating the difference between current and new tags.

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Ap Clients V2

AP clients data in the last 2hr/1d/7d/30d.
Response data key is macAddress.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
required
ClientPeriod (string) or null

default is 2h

featrues
required
Array of strings (ApClientAttributesReqV2)
Items Enum: "mac_address" "ipv4" "last_seen" "connected_device_id" "first_seen" "description" "os_hostname" "manufacturer" "ssid" "wifi_sta" "user" "upload" "download"

Responses

Request samples

Content type
application/json
{
  • "period": "2h",
  • "featrues": [
    ]
}

Response samples

Content type
application/json
{
  • "KeyFields": [
    ],
  • "data": [
    ]
}

Get Site Clients V2

Site-wide clients data in the last 2hr/1d/7d/30d.
Response data key is macAddress.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
required
ClientPeriod (string) or null

default is 2h

featrues
required
Array of strings (ClientAttributesReq)
Items Enum: "mac_address" "ipv4" "vlan" "last_seen" "connected_device_id" "status" "first_seen" "description" "os_hostname" "manufacturer"

Responses

Request samples

Content type
application/json
{
  • "period": "2h",
  • "featrues": [
    ]
}

Response samples

Content type
application/json
{
  • "KeyFields": [
    ],
  • "data": [
    ]
}

Get Gw Clients V2

GW clients data in the last 2hr/1d/7d/30d.
Firewall Respone data keys are macAddress, ipv4Address and interface.
SCR Respone data key is macAddress.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
required
ClientPeriod (string) or null

default is 2h

featrues
required
Array of strings (GwClientAttributesReq)
Items Enum: "mac_address" "ipv4" "last_seen" "connected_device_id" "first_seen" "description" "os_hostname" "manufacturer" "interface"

Responses

Request samples

Content type
application/json
{
  • "period": "2h",
  • "featrues": [
    ]
}

Response samples

Content type
application/json
{
  • "KeyFields": [
    ],
  • "data": [
    ]
}

Get Sw Clients V2

SW clients data in the last 2hr/1d/7d/30d.
Response data keys are macAddress and vlan.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
required
ClientPeriod (string) or null

default is 2h

featrues
required
Array of strings (SwClientAttributesReq)
Items Enum: "mac_address" "ipv4" "last_seen" "connected_device_id" "connected_port" "first_seen" "description" "manufacturer" "vlan" "lldp_info"

Responses

Request samples

Content type
application/json
{
  • "period": "2h",
  • "featrues": [
    ]
}

Response samples

Content type
application/json
{
  • "KeyFields": [
    ],
  • "data": [
    ]
}

ap

AP operations

Update Captive Portal Logo

Update (or delete) the logo image for a specific captive portal SSID slot.

  • id: SSID slot index (1-8)
  • logoBase64: Base64-encoded image string to upload. Pass null to remove the existing logo.
path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
id
required
integer [ 1 .. 8 ]

SSID index from 1 to 8

string or null

Base64-encoded logo image to upload. Pass null to delete the existing logo.

Responses

Request samples

Content type
application/json
{
  • "id": 1,
  • "logoBase64": "string"
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Captive Portal Reauth

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "ADUsers": "Every half hour",
  • "RADIUSUsers": "Every half hour",
  • "c2cUsers": "Every half hour",
  • "cloudAuthUsers": "Every half hour"
}

Update Captive Portal Reauth

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
ADUsers
required
string (CaptivePortalReauthInterval)
Enum: "Every half hour" "Every hour" "Every two hours" "Every four hours" "Every twelve hours" "Every day" "Every two days" "Every four days" "Every five days" "Every week" "Every two weeks" "Every 30 days"
RADIUSUsers
required
string (CaptivePortalReauthInterval)
Enum: "Every half hour" "Every hour" "Every two hours" "Every four hours" "Every twelve hours" "Every day" "Every two days" "Every four days" "Every five days" "Every week" "Every two weeks" "Every 30 days"
c2cUsers
required
string (CaptivePortalReauthInterval)
Enum: "Every half hour" "Every hour" "Every two hours" "Every four hours" "Every twelve hours" "Every day" "Every two days" "Every four days" "Every five days" "Every week" "Every two weeks" "Every 30 days"
cloudAuthUsers
required
string (CaptivePortalReauthInterval)
Enum: "Every half hour" "Every hour" "Every two hours" "Every four hours" "Every twelve hours" "Every day" "Every two days" "Every four days" "Every five days" "Every week" "Every two weeks" "Every 30 days"

Responses

Request samples

Content type
application/json
{
  • "ADUsers": "Every half hour",
  • "RADIUSUsers": "Every half hour",
  • "c2cUsers": "Every half hour",
  • "cloudAuthUsers": "Every half hour"
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Update Captive Portal Settings

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
id
required
integer [ 1 .. 8 ]

Index from 1 to 8

required
string or null
required
string or null

Responses

Request samples

Content type
application/json
{
  • "id": 1,
  • "externalUrl": "string",
  • "successUrl": "string"
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Dppsk

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Dppsk

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
email
required
string
string or null

Username

integer or null

VLAN ID

integer or null

Expiry time as Unix timestamp, null means never expired

boolean or null
Default: true

Email to user or not

Responses

Request samples

Content type
application/json
{
  • "email": "string",
  • "username": "string",
  • "vlanId": 1,
  • "expiredTime": 0,
  • "emailToUser": true
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Ap Logout User

Logout AP users in the site. Every AP will be instructed to logout the users.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
string

Responses

Request samples

Content type
application/json
[
  • "string"
]

Response samples

Content type
application/json
{
  • "detail": [
    ]
}

Get Ssid Grouping

Get the SSID Grouping status for the site. (This feature allows creating more than 8 SSIDs, also known as AP Grouping).

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string",
  • "enabled": true,
  • "maximumSsidNumber": 0
}

Update Ssid Grouping

Update the SSID Grouping status for the site. (This feature allows creating more than 8 SSIDs, also known as AP Grouping).

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
enabled
required
boolean

Enable SSID Grouping (allow more than 8 SSIDs)

Responses

Request samples

Content type
application/json
{
  • "enabled": true
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string",
  • "enabled": true,
  • "maximumSsidNumber": 0
}

Get Wlan Band Mode

Get the WLAN Band Mode settings for all SSIDs.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update Wlan Band Mode

Update WLAN Band Mode settings for specified SSIDs.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
ssid
required
integer [ 1 .. 24 ]

SSID index from 1 to 24

enabledBands
required
Array of strings

List of enabled bands, accepts 'band24', 'band50', 'band60'

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Enable Dppsk On Ssid

Enable DPPSK security mode on a specific SSID. Optionally sets the backup pre-shared key (wifi_preshared_key).

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
ssid
required
integer [ 1 .. 24 ]

SSID index from 1 to 24

string or null

Optional backup pre-shared key used when DPPSK is enabled. 8 to 63 printable characters. Pass null to leave unchanged.

Responses

Request samples

Content type
application/json
{
  • "ssid": 1,
  • "backupPsk": "stringst"
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Wlan Intra Bss Traffic

Get the WLAN Intra BSS Traffic settings for all SSIDs.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update Wlan Intra Bss Traffic

Update WLAN Intra BSS Traffic settings for specified SSIDs.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
ssid
required
integer [ 1 .. 24 ]

SSID index from 1 to 24

intraBssTraffic
required
boolean

Enable or disable intra-BSS traffic (Layer 2 isolation)

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Wlan Rate Limit

Get the WLAN rate limit settings for all SSIDs.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Update Wlan Rate Limit

Update WLAN rate limit settings for specified SSIDs.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
ssid
required
integer [ 1 .. 24 ]

SSID index from 1 to 24

required
object (RateLimitConfig)
boolean or null

allow RADIUS server override rate limit. Only effective when captive portal mode is CAPTIVE_PORTAL_RADIUS.

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Wlan Schedules

SSID schedule is a many-to-one relationship with SSID

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create Wlan Schedule

SSID schedule is bound with each SSID.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
integer or null

SSID to create schedule for, null to create global schedule

name
required
string
required
Array of objects (ScheduleDetail)

Responses

Request samples

Content type
application/json
{
  • "ssid": 1,
  • "name": "string",
  • "detail": [
    ]
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string",
  • "scheduleId": "string"
}

Assign Wlan Schedules

SSID schedule is bound with each SSID.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
ssid
required
integer [ 1 .. 24 ]

SSID index from 1 to 24

string or null

Schedule ID, null to remove the schedule

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Update Wlan Schedule

path Parameters
siteId
required
string
scheduleId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
name
required
string
required
Array of objects (ScheduleDetail)

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "detail": [
    ]
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Delete Wlan Schedule

SSID schedule is bound with each SSID.

path Parameters
siteId
required
string
scheduleId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Wlan Settings

Note: This API always returns 8 SSIDs.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Patch Wlan Settings

Note: This API supports changing Password and SSID name according to the Index ID. The Pre-shared-key (PSK) will be updated no matter the SSID Security mode is WPA2/3 or not.

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
Array
id
required
integer [ 1 .. 8 ]

Index from 1 to 8

wpaKey
required
string
string or null
boolean or null
Default: false
boolean or null
Default: false
tags
Array of strings
Default: []

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Access Point Ip Status

This API returns the current IP status (instead of configuration) of AP interfaces.

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Access Point Port Status

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

sw

Switch operations

Get Sw Event Logs

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
startTimestamp
required
integer

unit: Unix timestamp (ms)

endTimestamp
required
integer

unit: Unix timestamp (ms)

Responses

Request samples

Content type
application/json
{
  • "startTimestamp": 0,
  • "endTimestamp": 0
}

Response samples

Content type
application/json
[
  • {
    }
]

Get Switch Ip Status

The current IP status (instead of configuration) of the Switch device. Only one IP data is returned in the array for now.

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Switch L2 Mac Table

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Switch Lldp Neighbor

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Switch Poe Status

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Switch Port Setting

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Change Switch Port Setting

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
portNum
required
integer
enabled
required
boolean
trunk
required
boolean
portVid
required
integer
allowedVLAN
required
Array of strings
required
boolean or null

Responses

Request samples

Content type
application/json
{
  • "portNum": 0,
  • "enabled": true,
  • "trunk": true,
  • "portVid": 0,
  • "allowedVLAN": [
    ],
  • "pseEnabled": true
}

Response samples

Content type
application/json
{
  • "status": 0,
  • "message": "string"
}

Get Switch Port Status

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Switch Traffic Usage

path Parameters
siteId
required
string
devId
required
string
query Parameters
period
string (TrafficUsagePeriod)
Default: "1d"
Enum: "2h" "1d" "7d"
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Switch Uplink Port

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "portNum": 0
}

gw

Secure Gateway (NSG*/USG FLEX) operations

Get Gateway Event Logs

path Parameters
siteId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string
Request Body schema: application/json
required
startTimestamp
required
integer

unit: Unix timestamp (ms)

endTimestamp
required
integer

unit: Unix timestamp (ms)

Responses

Request samples

Content type
application/json
{
  • "startTimestamp": 0,
  • "endTimestamp": 0
}

Response samples

Content type
application/json
[
  • {
    }
]

Get Firewall Interface Settings

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "wan": [
    ],
  • "lan": [
    ]
}

Get Firewall Nat Settings

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "oneToOne": [
    ],
  • "virtualServer": [
    ]
}

Get Gateway Port Status

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get Gateway System Status

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "cpuUsage": 0,
  • "memUsage": 0,
  • "sessions": 0
}

Get Secure Gateway Traffic Usage

path Parameters
siteId
required
string
devId
required
string
query Parameters
period
string (TrafficUsagePeriod)
Default: "1d"
Enum: "2h" "1d" "7d"
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

wwan

WWAN (Mobile Router) operations

Get Wwan Device Status

Mobile Router's WWAN Status.

path Parameters
siteId
required
string
devId
required
string
header Parameters
X-ZyxelNebula-API-Key
required
string

Responses

Response samples

Content type
application/json
{
  • "ipv4Address": "192.168.0.1",
  • "imei": "string",
  • "iccid": "string",
  • "rsrp": 0
}