List Virtual Network Appliances

Summary

List all visible Virtual Network Appliances.

Type

  • List

Synchronous/Asynchronous

  • Synchronous

Request

HTTP Request Method

  • GET

HTTP Request Path

{api_endpoint}/v1.0/virtual_network_appliances

HTTP Request Header

Content-Type: application/json
Accept: application/json
X-Auth-Token: <token_id>

注釈

  • Field names in HTTP request header are case-insensitive.

HTTP Request Body

Parameters

Input Parameters

name

style

datatype

format

description

required/optional

default value

action for invalid parameter

response code for invalid parameter

token_id

Header

String

Non-Hyph-uuid

keystone authentication token

required

Terminate

401

name

Query

String

String(0-255)

Name of the Virtual Network Appliance

optional

id

Query

String

Hyph-uuid

ID of the Virtual Network Appliance

optional

appliance_type

Query

String

String(0-255)

Type of appliance

optional

description

Query

String

String(0-255)

Description of the Virtual Network Appliance

optional

availability_zone

Query

String

String(0-255)

Availability Zone, this can be referred to using Virtual Server (Nova)’s list availability zones

optional

os_monitoring_status

Query

String

String(0-255)

OS Monitoring Status

optional

os_login_status

Query

String

String(0-255)

OS Login Status

optional

vm_status

Query

String

String(0-255)

VM Status

optional

operation_status

Query

String

String(0-255)

Operation Status

optional

virtual_network_appliance_plan_id

Query

String

Hyph-uuid

ID of the Virtual Network Appliance Plan

optional

tenant_id

Query

String

Non-Hyph-uuid

Tenant ID of the owner (UUID)

optional

Response

Response Header

Format

HTTP/1.1 <response_code> <message>       (ex. 200 OK)
  • <response_code>: see "HTTP Responses" section

  • <message>: message based on the response code

Response Code

Response Codes

response code

condition

200

OK

401

Unauthorized

500

Internal Server Error

Response Body

Format

{
  "virtual_network_appliances": [
    {
      "name": "<name>",
      "id": "<id>",
      "appliance_type": "<appliance_type>",
      "description": "<description>",
      "availability_zone": "<availability_zone>",
      "os_monitoring_status": "<os_monitoring_status>",
      "os_login_status": "<os_login_status>",
      "vm_status": "<vm_status>",
      "operation_status" : "<operation_status>",
      "virtual_network_appliance_plan_id": "<virtual_network_appliance_plan_id>",
      "tenant_id": "<tenant_id>",
      "tags": {},
      "interfaces": {
        "interface_<slot_number>": {
          "name": "<name>",
          "description": "<description>",
          "network_id": "<network_id>",
          "updatable": "<updatable>",
          "tags": {},
          "fixed_ips": [
            {
              "ip_address": "<ip_address>",
              "subnet_id": "<subnet_id>"
            }
          ],
          "allowed_address_pairs":[
            {
              "ip_address": "<ip_address>",
              "mac_address": "<mac_address>",
              "type": "<type>",
              "vrid": "<vrid>"
            }
          ]
        }
      }
    }
  ]
}

Parameters

Response Parameters

item

datatype

format

description

virtual_network_appliances

Array<Object>

-

name

String

String(0-255)

Name of the Virtual Network Appliance

id

String

Hyph-uuid

It identifies a Virtual Network Appliance uniquely.

appliance_type

String

String(0-255)

Type of appliance

description

String

String(0-255)

Description of the Virtual Network Appliance

availability_zone

String

String(0-255)

Availability Zone, this can be referred to using Virtual Server (Nova)’s list availability zones

os_monitoring_status

String

String(0-255)

OS Monitoring Status

os_login_status

String

String(0-255)

OS Login Status

vm_status

String

String(0-255)

VM Status

operation_status

String

String(0-255)

Operation Status

virtual_network_appliance_plan_id

String

Hyph-uuid

It identifies a Virtual Network Appliance Plan uniquely.

tenant_id

String

Non-Hyph-uuid

Tenant ID of the owner (UUID)

tags

Object

-

Tags of the Virtual Network Appliance

interfaces

Object

-

Attached interfaces

interfaces.interface_<slot_number>

Object

-

interfaces.interface_<slot_number>.name

String

String(0-255)

Name of the Interface

interfaces.interface_<slot_number>.description

String

String(0-255)

Description of the Interface

interfaces.interface_<slot_number>.network_id

String

Hyph-uuid

The ID of network this Interface belongs to.

interfaces.interface_<slot_number>.updatable

Boolean

-

interfaces.interface_<slot_number>.tags

Object

-

Tags of the Interface

interfaces.interface_<slot_number>.fixed_ips

Array<Object>

-

List of fixes IP addresses assign to Interface.

interfaces.interface_<slot_number>.fixed_ips.ip_address

String

Ipv4

The IP address assign to Interface within subnet.

interfaces.interface_<slot_number>.fixed_ips.subnet_id

String

Hyph-uuid

The ID of subnet from which IP address is allocated.

interfaces.interface_<slot_number>.allowed_address_pairs

Array<Object>

-

Allowed address pairs

interfaces.interface_<slot_number>.allowed_address_pairs.ip_address

String

Ipv4

interfaces.interface_<slot_number>.allowed_address_pairs.mac_address

String

Mac_Address

interfaces.interface_<slot_number>.allowed_address_pairs.type

String

String(0-255)

interfaces.interface_<slot_number>.allowed_address_pairs.vrid

Integer

Integer(0-255)

Sample Request and Response

Sample API Request

Request URI

https://{api_endpoint}/v1.0/virtual_network_appliances

Request Header

Content-Type: application/json
Accept: application/json
X-Auth-Token: 69105c889f824efdafb56af224208ad4

Request Body

This operation does not send a request body.

Sample API response

Response Header

HTTP/1.1 200 OK

Response Body

{
  "virtual_network_appliances": [
    {
      "name": "virtual_network_appliance_name",
      "id": "a80c1728-cc0c-11e6-8080-525400060300",
      "appliance_type": "ECL::VirtualNetworkAppliance::VSRX",
      "description": "virtual_network_appliance_name_description",
      "availability_zone": "zone1-groupa",
      "os_monitoring_status": "ACTIVE",
      "os_login_status": "ACTIVE",
      "vm_status": "ACTIVE",
      "operation_status" : "ACTIVE",
      "virtual_network_appliance_plan_id": "b0cdb8c5-aaf0-48eb-81ac-f211b54da53c",
      "tenant_id": "13572f6f42a74d2b82f7099f78d0393a",
      "tags": {},
      "interfaces": {
        "interface_1": {
          "name": "interface_1_name",
          "description": "interface_1_description",
          "network_id": "0967afc2-73a8-4c1f-869a-54c3b07dc199",
          "updatable": true,
          "tags": {},
          "fixed_ips": [
            {
              "ip_address": "192.168.0.1",
              "subnet_id": "8c2cdf01-1aa5-49e4-9c8b-34bba452fe88"
            }
          ],
          "allowed_address_pairs":[
            {
              "ip_address": "192.168.0.100",
              "mac_address": "00:00:5e:00:01:0a",
              "type": "vrrp",
              "vrid": 10
            }
          ]
        }
        (snip)
      }
    }
  ]
}

Example Error Message

HTTP Request

GET /v1.0/virtual_network_appliances HTTP/1.1
User-Agent: curl/7.51.0
Host: 10.1.131.140
Accept:application/json
X-Auth-Token:4e54395a12b740d585d74190ba4eb14b
Content-Type: application/json

HTTP Response

HTTP/1.1 500 Internal Server Error
Server: nginx
Date: Wed, 07 Feb 2018 06:49:20 GMT
Content-Type: application/json
Content-Length: 40
Connection: keep-alive

{
  "cause": "Internal Server Error"
}