Inventory Service (3.6.0)

Download OpenAPI specification:Download

This is the spec that defines the API provided by the Inventory/Asset Service, which is used by multiple services to access network configuration/state data

Started

This API will be called when very first time the user logs in

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "devices_count": 2,
  • "show_user_creation_window": false
}

Replace

replaceSwitch

Replace the switch as part of an RMA. This will replace the asset information of the new switch in the Inventory.

Authorizations:
bearerAuth
query Parameters
ip_address
required
string

IP Addresses of the device to be replaced.

config_backup_id
string

UUID of config backup

Responses

Response samples

Content type
application/json
{
  • "href": "href",
  • "uuid": "id"
}

Switch replace

rma

delet RMA ID.

Authorizations:
bearerAuth
query Parameters
key
string

IP Addresses of the device or RMA uuid to deleted.

Responses

Response samples

Content type
application/json
{
  • "result": 0,
  • "userKey": "1111-1111-1111",
  • "error": "uuid not found"
}

Switch replace History list

getRMAHistorys

Get Switch replace History list

Authorizations:
bearerAuth
query Parameters
device_ip
string

Ip of the entry for which RMA history is fetched

Responses

Response samples

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

Switch Replace Details

getRMADetail

Get RMA Detail

Authorizations:
bearerAuth
query Parameters
rma_id
required
string

RMA Id of the entry for which detail is fetched

Responses

Response samples

Content type
application/json
{
  • "dr_id": "1111-1111-1111",
  • "device-ip": "1.1.1.1",
  • "status": "Success",
  • "StartTime": "12:03:24,12/2/2020"
}

TpvmUpgrade

getMultiTpvmUpgradeStatus

Get the status of the TPVM upgrade execution.

Authorizations:
bearerAuth
query Parameters
ip_address
string

IP Addresses of the devices

execution_id
string

Execution ID. Get the tpvm upgrade execution status for device by execution ID.

Responses

Response samples

Content type
application/json
{
  • "overall_status": "Completed",
  • "items": [
    ]
}

getTpvmUpgradeStatus Deprecated

Get the status of the TPVM upgrade execution.

Authorizations:
bearerAuth
query Parameters
ip_address
string

IP Address of the device

execution_id
string

Execution ID. Get the tpvm upgrade execution status for device by execution ID.

Responses

Response samples

Content type
application/json
{
  • "switch_data": {
    },
  • "start_time": "2000-01-23T04:42:16.000+00:00",
  • "last_update_time": "2000-01-23T04:56:07.000+00:00",
  • "update_state": "Completed",
  • "id": 1,
  • "target_tpvm_version": "4.2.1",
  • "status": "TPVM Upgrade Completed",
  • "detailed_status": "None",
  • "failed_state": "device-validation-failed",
  • "upgrade_type": "incremental upgrade"
}

executeTpvmUpgrade

Execute TPVM upgrade on the switch.

Authorizations:
bearerAuth
query Parameters
ip_address
required
string

IP Addresses of the device.

firmware_host
required
string

IP address of a registered firmware host.

tpvm_image
required
string

TPVM image path and filename located on the firmware host.

auto_reboot
boolean
Default: false

reboot standby TPVM and then active TPVM, if reboot is required

trusted_peer_sudo_user
string

TPVM trusted peer sudo user configuration to be reconfigured after the TPVM has been upgraded. Default sudo user is "extreme" if not specified along with the trusted peer password.

trusted_peer_password
string

TPVM trusted peer password configuration to be reconfigured after the TPVM has been upgraded.

Responses

Response samples

Content type
application/json
{
  • "href": "href",
  • "uuid": "id"
}

TpvmList

getTpvmList

Get the tpvm list

Authorizations:
bearerAuth

Responses

Response samples

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

Switch Setting

getSwitchSetting

Authorizations:
bearerAuth
query Parameters
ip_address
required
string

IP Addresses of the device to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "device-ip": "10.20.30.40",
  • "error": null,
  • "device-settings": {
    }
}

updateSwitchSetting

Authorizations:
bearerAuth
Request Body schema: application/json
optional

Update Switch Settings.

ip_address
required
string
required
Array of objects (DeviceParameter)

Responses

Request samples

Content type
application/json
{
  • "ip_address": "10.20.30.40",
  • "keyval": [
    ]
}

Response samples

Content type
application/json
{
  • "device-ip": "10.20.30.40",
  • "error": null,
  • "device-settings": {
    }
}

Switches Setting

updateSwitchesSetting

Authorizations:
bearerAuth
Request Body schema: application/json
optional

Update Switches Settings.

ip_addresses
string
fabric_name
string
required
Array of objects (DeviceParameter)

Responses

Request samples

Content type
application/json
{
  • "ip_address": "10.20.30.40-41",
  • "fabric_name": "fabric1",
  • "keyval": [
    ]
}

Response samples

Content type
application/json
[
  • {
    },
  • {
    }
]

Drift and reconcile

driftAndReconcile

Trigger drift and reconcile for inventory, fabric and tenant.

Authorizations:
bearerAuth
query Parameters
ip_address
required
string

IP Addresses of the device to be retrieved.

reconcile
required
boolean
Default: false

Value true implies efa drift with devices will be reconciled

Responses

Response samples

Content type
application/json
{
  • "href": "href",
  • "uuid": "id"
}

driftAndReconcile

delete drift and reconcile ID.

Authorizations:
bearerAuth
query Parameters
key
string

IP Addresses of the device or drift and reconcile uuid to deleted.

Responses

Response samples

Content type
application/json
{
  • "result": 0,
  • "userKey": "1111-1111-1111",
  • "error": "uuid not found"
}

driftAndReconcile

Trigger drift and reconcile for inventory, fabric and tenant.

Authorizations:
bearerAuth
query Parameters
ip_address
required
Array of strings non-empty unique

IP Addresses of the device to be retrieved.

reconcile
required
boolean
Default: false

Value true implies efa drift with devices will be reconciled

Responses

Response samples

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

switch health status

switchHealthStatus

current health status for the switch.

Authorizations:
bearerAuth
query Parameters
ip_address
required
string

IP Addresses of the device to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "switchHealth": "disabled",
  • "drUUID": "Id",
  • "href": "/v1/inventory/drift_reconcile/detail",
  • "heartBeatMissCounter": 2,
  • "heartBeatMissThreshold": 2,
  • "healthCheckInterval": "5m",
  • "maintenanceMode": "enabled"
}

Config Replay

StartConfigReplay

Config Replay to device.

Authorizations:
bearerAuth
query Parameters
ip_address
required
string

IP Addresses of the device to be replayed.

cb_id
string

ConfigBackup Id of the config to be applied

ss_id
string

Snapshot Id of the config to be applied

startup_config
boolean

Copy the config to startup config.

no_reboot
boolean

Don't reboot the device.

Responses

Response samples

Content type
application/json
{
  • "href": "href",
  • "uuid": "id"
}

ConfigReplay

Delete Config Replay ID.

Authorizations:
bearerAuth
query Parameters
key
string

IP Addresses of the device or config Replay uuid to deleted.

Responses

Response samples

Content type
application/json
{
  • "result": 0,
  • "userKey": "1111-1111-1111",
  • "error": "uuid not found"
}

Config Backup

StartConfigBackup

Config Backup from device.

Authorizations:
bearerAuth
query Parameters
ip_address
required
string

IP Addresses of the device to be retrieved.

Responses

Response samples

Content type
application/json
{
  • "href": "href",
  • "uuid": "id"
}

ConfigBackup

Delete Config Backup ID.

Authorizations:
bearerAuth
query Parameters
key
string

IP Addresses of the device or config backup uuid to deleted.

Responses

Response samples

Content type
application/json
{
  • "result": 0,
  • "userKey": "1111-1111-1111",
  • "error": "uuid not found"
}

Register

registerSwitches

Register multiple switches with the inventory service

Authorizations:
bearerAuth
Request Body schema: application/json
required

Register Switches.

Array
device_ips
required
Array of strings
username
required
string
location
string
password
required
string
lacp_system_priority
integer
maintmode
boolean

Responses

Request samples

Content type
application/json
[
  • {
    }
]

Response samples

Content type
application/json
[
  • {
    }
]

registerSwitches

Register switches with the inventory service

Authorizations:
bearerAuth
Request Body schema: application/json
required

Register a new Switch.

device_ips
required
Array of strings
username
required
string
location
string
password
required
string
lacp_system_priority
integer
maintmode
boolean

Responses

Request samples

Content type
application/json
{
  • "password": "password",
  • "device_ips": [
    ],
  • "username": "username",
  • "maintmode": true
}

Response samples

Content type
application/json
[
  • {
    }
]

Switches

getSwitches

Get All switches in the specified fabric.

Authorizations:
bearerAuth
query Parameters
fabric_name
string

Only devices which are associated to the fabric name specified as returned.

device_ids
Array of integers non-empty unique

Database Ids of switches to be fetched

device_ips
Array of strings non-empty unique

IPs of the devices to be fetched

orphan
boolean

This is a standalone parameter, which is used to return devices not associated to any fabric. fabric_name/device_ids/device_ips/role cannot be specified with this parameter

role
string
Enum: "Leaf" "Spine" "SuperSpine" "BorderLeaf" "SuperSuperSpine"

Only devices with the specified role are returned. This parameter works in conjunction with fabric_name parameter and is not expected by itself

object (SearchQuery)

{"group_by":"role"} Responses grouped by role {"filter":[{"name":"name","value":"10.37.128.71"},{"name":"role',"value":"NPB"}] Responses filtered by name="10.37.128.71" and role="NPB" {"fuzzy":"adm"} Responses searched using fuzzy search "adm"

object (PaginationQuery)

{"sort_by":"asc|desc"} Responses grouped id in ascending or descending order {"offset" : "lt:30"} Responses filtered id less then 30 {"page_size":20} Responses searched with limit of 20 entriess

Responses

Response samples

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

updateSwitches

Update All switches in the specified fabric.

Authorizations:
bearerAuth
query Parameters
device_ips
Array of strings non-empty unique

IP Addresses of the device(s) to be updated.

fabric_name
string

Update devices which are associated to the fabric name.

username
string

Update username and password for the devices.

password
string

Update username and password for the devices.

location
string

Update location for the devices.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

deleteSwitches

Delete the specified devices from the inventory.

Authorizations:
bearerAuth
query Parameters
device_ips
Array of strings non-empty unique

IP Addresses of the device to be deleted.

fabric_name
string

Fabric name. Devices in this fabric will be deleted.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

manageSwitchesConfig

Manage the running-config on the specified devices.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Managed the running-config for devices in the fabric or specified devices.

device_ips
Array of strings

IP Addresses of the devices for managing the running-config.

fabric_name
string

Name of the fabric

persist_local
boolean
Default: true

Save the running-config to the startup-config on the specified devices.

Responses

Request samples

Content type
application/json
{
  • "fabric_name": "fabric_name",
  • "device_ips": [
    ],
  • "persist_local": true
}

Response samples

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

executeSwitchesCli

Execute CLI commands on the specified devices.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Execute CLI commands on the devices in the fabric or specified devices.

device_ips
Array of strings

IP Addresses of the devices to execute the CLI command.

fabric_name
string

Name of the fabric

role
string
Enum: "Spine" "Leaf" "Super Spine" "Border Leaf" "Standalone"

role of the device

commands
string

CLI commands to be executed on the device.

config
boolean
Default: false

Specifies if the command is to be executed on config-term or exec-mode of the device.

Responses

Request samples

Content type
application/json
{
  • "fabric_name": "default",
  • "role": "Spine",
  • "device_ips": [
    ],
  • "config": false,
  • "commands": "show version"
}

Response samples

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

This API will export the bulk device inventory information

Export multiple device inventory information

Authorizations:
bearerAuth
Request Body schema: application/json
optional

Device list

all_device
boolean
device_ids
Array of integers

Responses

Request samples

Content type
application/json
{
  • "all_device": true,
  • "device_ids": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "Device is already registered in inventory",
  • "code": 101
}

executeReloadCli

Execute reload CLI command on the specified devices.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Execute reload CLI command on specified devices.

device_ips
Array of strings

IP Addresses of the devices to execute the reload CLI command.

fabric_name
string

Name of fabric

Responses

Request samples

Content type
application/json
{
  • "device_ips": [
    ],
  • "fabric_name": "default"
}

Response samples

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

FirmwareDownload

getFirmwareDownloadStatus

Get the status of the firmware download execution.

Authorizations:
bearerAuth
query Parameters
fabric_name
string

Fabric name. Get the firmware download execution status for devices in the given fabric.

execution_id
string

Execution ID(s). Get the firmware download execution status for devices in the fabric by a comma separated list of execution IDs.

prepared_list_name
string

Prepared list name. Get the firmware download execution status for devices in the given prepare list.

device_ips
Array of strings non-empty unique

IPs of the devices to be fetched

device_type
string
Enum: "fabric" "npb"

device type npb/fabric

Responses

Response samples

Content type
application/json
{
  • "overall_status": "Completed",
  • "items": [
    ]
}

executeFirmwareDownload

Execute firmware download on the prepared switches.

Authorizations:
bearerAuth
query Parameters
fabric_name
string

Fabric name. Execute the firmware download for prepared devices in the given fabric.

prepared_list_name
string

Prepared list name. Execute the firmware download for prepared devices in the given prepared list.

group_execution
string

Group Execution option in Firmware Download.

no_auto_commit
boolean

Configure auto commit for Firmware Download.

no_maint_mode
boolean

Configure Maintainance mode in Firmware Download.

drc
boolean

Configure a drift reconciliation operation performed after Firmware Download.

no_activate
boolean

Configure Activation in Firmware Download.

Responses

Response samples

Content type
application/json
{
  • "execution_task": {
    }
}

commmitFirmwareDownload

Execute firmware download commit on the switches.

Authorizations:
bearerAuth
Request Body schema: application/json
required

IPs of the devices to be prepared for a firmware download.

device_ips
Array of strings
fabric
string
prepared_list_name
string

Responses

Request samples

Content type
application/json
{
  • "fabric": "fabric",
  • "device_ips": [
    ]
}

Response samples

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

restoreFirmwareDownload

Execute firmware download restore on the switches. The firmware on the primary partition will be replaced by the secondary partition firmware.

Authorizations:
bearerAuth
Request Body schema: application/json
required

IPs of the devices to be prepared for a firmware download.

device_ips
Array of strings
fabric
string
prepared_list_name
string

Responses

Request samples

Content type
application/json
{
  • "fabric": "fabric",
  • "device_ips": [
    ]
}

Response samples

Content type
application/json
{
  • "execution_task": {
    },
  • "items": [
    ]
}

activateFirmwareDownload

Execute firmware download activate on the switches.

Authorizations:
bearerAuth
Request Body schema: application/json
required

IPs of the devices to be activated for a firmware download activation.

device_ips
Array of strings
fabric
string
prepared_list_name
string
commit
boolean

Configure a commit operation to be performed after firmware activate.

Responses

Request samples

Content type
application/json
{
  • "fabric": "fabric",
  • "device_ips": [
    ]
}

Response samples

Content type
application/json
{
  • "execution_task": {
    },
  • "items": [
    ]
}

getPreparedSwitches

Get the prepared devices ready for a firmware download operation.

Authorizations:
bearerAuth
query Parameters
device_ips
Array of strings non-empty unique

IPs of the devices to be fetched

fabric_name
string

Fabric name. Prepared devices in this fabric to be fetched.

prepared_list_name
string

Prepared list name. Prepared devices in this prepred list to be fetched.

Responses

Response samples

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

addPreparedSwitches

Prepare the devices for a firmware download operation.

Authorizations:
bearerAuth
query Parameters
force
boolean

Configure force option in prepare request to skip all validations

Request Body schema: application/json
required

IPs of the devices to be prepared for a firmware download.

device_ips
Array of strings
group_name
integer
fabric
string
prepared_list_name
string
firmware_host
required
string
firmware_directory
required
string

Responses

Request samples

Content type
application/json
{
  • "fabric": "fabric",
  • "device_ips": [
    ],
  • "firmware_host": "firmware_host",
  • "firmware_directory": "firmware_directory"
}

Response samples

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

removePreparedSwitches

Un-prepare the devices from a firmware download operation.

Authorizations:
bearerAuth
query Parameters
device_ips
Array of strings non-empty unique

IP Addresses of the devices to be unprepared from a firmware download operation.

fabric_name
string

Fabric name. Devices in this fabric will be un-prepared.

group_name
integer

Group name. Devices in this Group will be un-prepared.

prepared_list_name
string

Prepared list name. Devices will be un-prepared from the prepared list.

Responses

Response samples

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

firmwarePrepareExecuteActivate

Prepare the devices, download the firmware and activate the firmware on the devices.

Authorizations:
bearerAuth
query Parameters
device_ips
Array of strings non-empty unique

IPs of the devices to be fetched

no_activate
boolean

Configure Activation in Firmware Download.

no_auto_commit
boolean

Configure auto commit for Firmware Download.

prepared_list_name
string

Prepared list name. Execute the firmware download for prepared devices in the given prepared list.

no_maint_mode
boolean

Configure Maintainance mode in Firmware Download.

drc
boolean

Configure a drift reconciliation operation performed after Firmware Download.

force
boolean

Configure force option in prepare request to skip all validations

Request Body schema: application/json
required

Firmware host details and IPs of the devices to be prepared for a firmware download.

device_ips
Array of strings
group_name
integer
fabric
string
prepared_list_name
string
firmware_host
required
string
firmware_directory
required
string

Responses

Request samples

Content type
application/json
{
  • "fabric": "fabric",
  • "device_ips": [
    ],
  • "firmware_host": "firmware_host",
  • "firmware_directory": "firmware_directory"
}

Response samples

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

FirmwareDownloadHistory

getFirmwareDownloadHistoryStatus

Get the status of the firmware download history execution.

Authorizations:
bearerAuth
query Parameters
fabric_name
string

Fabric name. Get the firmware download execution status for devices in the given fabric.

execution_id
string

Execution ID(s). Get the firmware download execution status for devices in the fabric by a comma-separated list of execution IDs.

prepared_list_name
string

Prepared list name. Get the firmware download execution status for devices in the given prepare list.

device_ips
Array of strings non-empty unique

IPs of the devices to be fetched.

device_type
string
Enum: "fabric" "npb"

Device type npb/fabric.

object (SearchQuery)

{"group_by":"ip_address"} Responses grouped by device ipaddress. {"filter":[{"name":"ip_address","value":"1.1.1.1"}] Responses filtered by device ipaddress="1.1.1.1". {"fuzzy":"failed"} Responses searched using fuzzy search for "failed".

object (PaginationQuery)

{"sort_by":"asc|desc"} Responses execution ID in ascending or descending order. {"offset" : "lt:30"} Responses filtered ID less than 30. {"page_size":20} Responses searched with a limit of 20 entries.

Responses

Response samples

Content type
application/json
{
  • "overall_status": "Completed",
  • "items": [
    ]
}

FirmwareDownloadOperationHistory

getFirmwareDownloadOperationHistory

Get the status of the firmware download Operation history execution.

Authorizations:
bearerAuth
query Parameters
fabric_name
string

Fabric name. Get the firmware download execution status for devices in the given fabric.

execution_id
string

Execution ID(s). Get the firmware download execution status for devices in the fabric by a comma-separated list of execution IDs.

prepared_list_name
string

Prepared list name. Get the firmware download execution status for devices in the given prepare list.

device_ips
Array of strings non-empty unique

IPs of the devices to be fetched.

device_type
string
Enum: "fabric" "npb"

Device type npb/fabric.

last_execution_history
boolean
Default: false

Value true implies get firmware last execution history info.

fwdl_task_id
Array of integers non-empty unique

ID of the firmware download execution task obtained from the firmware download history status for devices in the fabric. Provide a comma-separated list of IDs. Example 100,200,2.

object (SearchQuery)

{"group_by":"ip_address"} Responses grouped by device ipaddress. {"filter":[{"name":"ip_address","value":"1.1.1.1"}] Responses filtered by device ipaddress="1.1.1.1". {"fuzzy":"failed"} Responses searched using fuzzy search for "failed".

object (PaginationQuery)

{"sort_by":"asc|desc"} Responses execution ID in ascending or descending order. {"offset" : "lt:30"} Responses filtered ID less than 30. {"page_size":20} Responses searched with a limit of 20 entries.

Responses

Response samples

Content type
application/json
{
  • "overall_status": "Completed",
  • "items": [
    ]
}

FabricServiceData

fabricServiceData

Populate Fabric service specific data in Inventory service

Authorizations:
bearerAuth
Request Body schema: application/json
required

Fabric service data fabric_type, device_rack.

Array of objects (Fabric service specefic data)

Responses

Request samples

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

Response samples

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

SupportSave

DeviceSupportSave

Capture the supportsave data from device(s) and return the file name in the response

Authorizations:
bearerAuth
Request Body schema: application/json

SupportSave for devices

fabric
string

Fabric name to take SS of rall devices in the fabric

device-ips
string

Device IP's of switches to collect support save from

fabric-all
boolean

true/false to take Support save of all devices

Responses

Request samples

Content type
application/json
{
  • "fabric": "default",
  • "device-ips": "10.24.131.3,162.101.21.2,192.24.32.204",
  • "fabric-all": true
}

Response samples

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

DeviceTacacs

getDeviceTacacsConfigs

This API will return all TACACS configuration existing on the device

Authorizations:
bearerAuth
query Parameters
device_ip
required
string

device ip

Responses

Response samples

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

createDeviceTacacsConfig

This API will create the TACACS configuration on the device

Authorizations:
bearerAuth
Request Body schema: application/json
required

TACACS configuration on the given device

device_ip
required
string

Device IP address

device_id
uint

Device ID

id
integer <int64>
name
required
string

TACACS configuration host name

secret_key
string

TACACS secret key

vrf_name
string

TACACS VRF name

port
integer

TACACS port number

Responses

Request samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "name": "TACACS_Config1",
  • "secret_key": "secret",
  • "vrf_name": "mgmt-vrf",
  • "port": 49
}

Response samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "name": "TACACS_Config1",
  • "secret_key": "secret",
  • "vrf_name": "mgmt-vrf",
  • "port": 49
}

updateDeviceTacacsConfig

This API will update the TACACS configuration on the device

Authorizations:
bearerAuth
Request Body schema: application/json
required

TACACS configuration on the given device

device_ip
required
string

Device IP address

device_id
uint

Device ID

id
integer <int64>
name
required
string

TACACS configuration host name

secret_key
string

TACACS secret key

vrf_name
string

TACACS VRF name

port
integer

TACACS port number

Responses

Request samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "name": "TACACS_Config1",
  • "secret_key": "secret",
  • "vrf_name": "mgmt-vrf",
  • "port": 49
}

Response samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "name": "TACACS_Config1",
  • "secret_key": "secret",
  • "vrf_name": "mgmt-vrf",
  • "port": 49
}

deleteDeviceTacacsConfig

This API will delete TACACS config from device

Authorizations:
bearerAuth
Request Body schema: application/json
required

TACACS configuration on the given device

device_ip
required
string

Device IP address

device_id
uint

Device ID

id
integer <int64>
name
required
string

TACACS configuration host name

secret_key
string

TACACS secret key

vrf_name
string

TACACS VRF name

port
integer

TACACS port number

Responses

Request samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "name": "TACACS_Config1",
  • "secret_key": "secret",
  • "vrf_name": "mgmt-vrf",
  • "port": 49
}

Response samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "name": "TACACS_Config1",
  • "secret_key": "secret",
  • "vrf_name": "mgmt-vrf",
  • "port": 49
}

DeviceTacacsConfig

getDeviceTacacsConfig

This API will return TACACS configuration by host name and device IP address

Authorizations:
bearerAuth
query Parameters
device_ip
required
string

device ip

name
required
string

TACACS host name

Responses

Response samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "name": "TACACS_Config1",
  • "secret_key": "secret",
  • "vrf_name": "mgmt-vrf",
  • "port": 49
}

AAAConfig

getAAAConfig

This API will return the AAA configuration existing on the device

Authorizations:
bearerAuth
query Parameters
device_ip
required
string

device ip

Responses

Response samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "type": "local",
  • "local_auth_fallback": true
}

createAAAConfig

This API will create the AAA configuration on the device

Authorizations:
bearerAuth
Request Body schema: application/json
required

AAA configuration on the given device

device_ip
required
string

Device IP address

device_id
uint

Device ID

id
integer <int64>
type
string

AAA authentication type (tacacs+, local, default)

local_auth_fallback
bool

Local authentication fallback option

Responses

Request samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "type": "local",
  • "local_auth_fallback": true
}

Response samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "type": "local",
  • "local_auth_fallback": true
}

updateAAAConfig

This API will update the AAA configuration on the device

Authorizations:
bearerAuth
Request Body schema: application/json
required

AAA configuration on the given device

device_ip
required
string

Device IP address

device_id
uint

Device ID

id
integer <int64>
type
string

AAA authentication type (tacacs+, local, default)

local_auth_fallback
bool

Local authentication fallback option

Responses

Request samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "type": "local",
  • "local_auth_fallback": true
}

Response samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "type": "local",
  • "local_auth_fallback": true
}

deleteAAAConfig

This API will delete AAA config from device

Authorizations:
bearerAuth
Request Body schema: application/json
required

AAA configuration on the given device

device_ip
required
string

Device IP address

device_id
uint

Device ID

id
integer <int64>
type
string

AAA authentication type (tacacs+, local, default)

local_auth_fallback
bool

Local authentication fallback option

Responses

Request samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "type": "local",
  • "local_auth_fallback": true
}

Response samples

Content type
application/json
{
  • "device_ip": "string",
  • "device_id": null,
  • "id": 1,
  • "type": "local",
  • "local_auth_fallback": true
}

Interfaces

getInterfaces

Get only the interfaces with the specific parameters for the specified switch

Authorizations:
bearerAuth
query Parameters
device_ips
Array of strings non-empty unique

IP address of the device for which the interfaces are being fetched for

device_ids
Array of integers non-empty unique

IP address of the device for which the interfaces are being fetched for

type
required
string
Default: "All"
Enum: "All" "Physical" "Loopback" "VE" "PO"

Interface types. All, Ethernet interfaces, Loopback interfaces only, VE interfaces only or Port channels only

admin_state
required
string
Default: "All"
Enum: "Up" "Down" "All"

Interface's admin state. up, down, all values only for admin state

rme
boolean

Interface's RME. enabled or not

oper_state
required
string
Default: "All"
Enum: "Up" "Down" "All"

Interface's oper state(Line protocol state). up, down, all values only for admin state

fabric_intf_role
string
Enum: "fabric" "edge"

Fabric interface role , it can be either fabric or edge, Fabric means it will returns interfaces connected to other fabric devices otherwise it is edge ports. This parameter must be given in conjunction with device_ips or device_ids

object (SearchQuery)

{"group_by":"fec_mode"} Responses grouped by fec_mode {"filter":[{"name":"name","value":"0/1"},{"name":"fec_mode',"value":"auto"}] Responses filtered by name="0/1" and fec_mode="auto" {"fuzzy":"adm"} Responses searched using fuzzy search "adm"

object (PaginationQuery)

{"sort_by":"asc|desc"} Responses grouped id in ascending or descending order {"offset" : "lt:30"} Responses filtered id less then 30 {"page_size":20} Responses searched with limit of 20 entriess

Responses

Response samples

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

Change Interface Port Admin State

Down/Up interfaces with the specific parameters for the specified switch

Authorizations:
bearerAuth
Request Body schema: application/json
required

Register a new Switch.

ip_address
required
Array of strings non-empty unique
intfNames
required
Array of strings non-empty unique
adminState
required
string
Enum: "up" "down"
intfType
string
Default: "Eth"
Enum: "Eth" "VE" "PO"

Responses

Request samples

Content type
application/json
{
  • "intfType": "Eth",
  • "adminState": "up",
  • "ip_address": "ip_address",
  • "intfNames": [
    ]
}

Response samples

Content type
application/json
[
  • {
    }
]

Create Breakout Interface Port

Create Breakout interfaces port with the specific parameters for the specified switch

Authorizations:
bearerAuth
Request Body schema: application/json
required

Breakout break Port into multiple interfaces.

ip_address
required
Array of strings non-empty unique
intfNames
required
Array of strings non-empty unique

Interface Port Names

intfType
string
Default: "Eth"
Enum: "Eth" "VE" "PO"
mode
required
string
Enum: "4x10g" "4x25g"

Port breakout mode

Responses

Request samples

Content type
application/json
{
  • "mode": "4x10g",
  • "intfType": "Eth",
  • "ip_address": "ip_address",
  • "intfNames": [
    ]
}

Response samples

Content type
application/json
[
  • {
    }
]

Remove Breakout of Interface Port

Remove Breakout of interfaces port with the specific parameters for the specified switch

Authorizations:
bearerAuth
Request Body schema: application/json
required

Removes Breakout of interfaces of the Switch.

ip_address
Array of strings unique
intfNames
required
Array of strings unique

Interface Port Names

intfType
string
Default: "Eth"
Enum: "Eth" "VE" "PO"

Responses

Request samples

Content type
application/json
{
  • "ip_address": [
    ],
  • "intfNames": [
    ],
  • "intfType": "Eth"
}

Response samples

Content type
application/json
[
  • {
    }
]

List Breakout Interface Port

List Breakout interfaces port with the specific parameters for the specified switch

Authorizations:
bearerAuth
query Parameters
device_ips
Array of strings non-empty unique

IP Addresses of the device(s) to List Breakout Ports.

fabric_name
string

List Breakout Ports of devices which are associated to the fabric name.

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Change Interface Port Speed

Change interfaces port speed with the specific parameters for the specified switch

Authorizations:
bearerAuth
Request Body schema: application/json
required

Change Port speed of interfaces of the Switch.

ip_address
required
Array of strings non-empty unique
intfNames
required
Array of strings non-empty unique

Interface Port Names

speed
required
string
Enum: "100Mbps" "1Gbps" "10Gbps" "25Gbps" "40Gbps" "100Gbps" "1GbpsAN" "AUTO"

Port Speed

intfType
string
Default: "Eth"
Enum: "Eth" "VE" "PO"

Interface Type

Responses

Request samples

Content type
application/json
{
  • "intfType": "Eth",
  • "ip_address": "ip_address",
  • "intfNames": [
    ],
  • "speed": "100Mbps"
}

Response samples

Content type
application/json
[
  • {
    }
]

Change Interface Port MTU

Set L2Mtu, IPv4Mtu and IPv6Mtu to interfaces with the specific parameters for the specified switch

Authorizations:
bearerAuth
Request Body schema: application/json
required

Set L2Mtu, IPv4Mtu and IPv6Mtu to device interfaces.

ip_address
required
Array of strings non-empty unique
intfNames
required
Array of strings non-empty unique

Interface Port Names

intfType
string
Default: "Eth"
Enum: "Eth" "VE" "PO"

Interface Type

mtu
integer

L2 Mtu of interface

ip_mtu
integer

IPv4 Mtu of interface

ipv6_mtu
integer

IPv6 Mtu of interface

Responses

Request samples

Content type
application/json
{
  • "ip_address": [
    ],
  • "intfNames": [
    ],
  • "intfType": "Eth",
  • "mtu": 1600,
  • "ip_mtu": 1600,
  • "ipv6_mtu": 1600
}

Response samples

Content type
application/json
[
  • {
    }
]

Remove Interface Port MTU

Remove L2Mtu, IPv4Mtu and IPv6Mtu from interfaces with the specific parameters for the specified switch

Authorizations:
bearerAuth
Request Body schema: application/json
required

Remove L2Mtu, IPv4Mtu and IPv6Mtu from device interfaces.

ip_address
required
Array of strings non-empty unique
intfNames
required
Array of strings non-empty unique

Interface Port Names

intfType
string
Default: "Eth"
Enum: "Eth" "VE" "PO"

Interface Type

mtu
boolean

Remove this Mtu from interface

ip_mtu
boolean

Remove this IPv4 Mtu from interface

ipv6_mtu
boolean

Remove IPv6 Mtu from interface

Responses

Request samples

Content type
application/json
{
  • "ip_address": [
    ],
  • "intfNames": [
    ],
  • "intfType": "Eth",
  • "mtu": true,
  • "ip_mtu": true,
  • "ipv6_mtu": false
}

Response samples

Content type
application/json
[
  • {
    }
]

Change Interface Port Forward Error Correction (FEC)

Change interfaces port FEC with the specific parameters for the specified switch

Authorizations:
bearerAuth
Request Body schema: application/json
required

Change Port FEC of interfaces of the Switch.

ip_address
required
Array of strings non-empty unique
intfNames
required
Array of strings non-empty unique

Interface Port Names

mode
required
string
Enum: "fc-fec" "rs-fec" "auto" "disabled"

Port FEC mode

intfType
string
Default: "Eth"
Enum: "Eth" "VE" "PO"

Interface Type

Responses

Request samples

Content type
application/json
{
  • "intfType": "Eth",
  • "ip_address": "ip_address",
  • "intfNames": [
    ],
  • "mode": "fc-fec"
}

Response samples

Content type
application/json
[
  • {
    }
]

Remove Port Forward Error Correction (FEC) from Interface Port

Remove Port FEC of interfaces port with the specific parameters for the specified switch

Authorizations:
bearerAuth
Request Body schema: application/json
required

Removes Port FEC of interfaces of the Switch.

ip_address
Array of strings unique
intfNames
required
Array of strings unique

Interface Port Names

intfType
string
Default: "Eth"
Enum: "Eth" "VE" "PO"

Interface Type

Responses

Request samples

Content type
application/json
{
  • "intfType": "Eth",
  • "ip_address": "ip_address",
  • "intfNames": [
    ]
}

Response samples

Content type
application/json
[
  • {
    }
]

Change Interface Port Dampening

Change interfaces port dampening with the specific parameters for the specified switch

Authorizations:
bearerAuth
Request Body schema: application/json
required

Change Port Dampening of interfaces of the Switch.

ip_address
required
Array of strings non-empty unique
intfNames
required
Array of strings non-empty