QueryFirewallRule

API Request

URLs
GET zstack/v1/vpcfirewalls/rules
GET zstack/v1/vpcfirewalls/rules/{uuid}
Headers
Authorization: OAuth the-session-uuid
Curl Sample
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X GET http://localhost:8080/zstack/v1/vpcfirewalls/rules
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X GET http://localhost:8080/zstack/v1/vpcfirewalls/rules/ace430872549342fbaca32f1d4c333e1

Queryable Fields

You can check all queryable fields and resource names that can be queried across tables by using zstack-cli, entering QueryFirewallRule, and pressing the Tab key.

API Response

Sample Response
{
  "inventories": [
    {
      "ruleSetUuid": "9fe12b6d1b3d38dbab13405722ccf264",
      "action": "accept",
      "protocol": "TCP",
      "destPort": "22",
      "sourcePort": "22",
      "sourceIp": "192.168.1.2",
      "destIp": "192.168.1.1",
      "ruleNumber": 1001.0,
      "allowStates": "invalid,new",
      "tcpFlag": "SYN",
      "icmpTypeName": "echo-reply",
      "enableLog": false,
      "isApplied": true,
      "expired": false,
      "state": "disable",
      "isDefault": false,
      "description": "example rule des"
    }
  ]
}
Name Type Description Starting Version
error ErrorCode The error code. If not null, the operation fails, or vice versa. For more information, see error. 3.6.0
inventories List See inventories. 3.6.0
#error
Name Type Description Starting Version
code String The error code, which is a numbered or alphanumeric code that specifies an error. For example, SYS.1000, HOST.1001. 3.6.0
description String The brief description of the error. 3.6.0
details String The details about the error. 3.6.0
elaboration String The reserved field. Default value: null. 3.6.0
opaque LinkedHashMap The reserved field. Default value: null. 3.6.0
cause ErrorCode The root error, which is the associated root cause of the current error. If no root error exists, this parameter is null. 3.6.0
#inventories
Name Type Description Starting Version
uuid String The firewall rule UUID. 3.6.0
ruleSetUuid String The ruleset UUID. 3.6.0
destPort String The destination port. 3.6.0
sourcePort String The source port. 3.6.0
sourceIp String The source IP address. 3.6.0
destIp String The destination IP address. 3.6.0
ruleNumber Integer The priority of the rule. 3.6.0
allowStates String The allow status of data packets. 3.6.0
tcpFlag String The TCP flag. 3.6.0
icmpTypeName String The ICMP type. 3.6.0
isDefault boolean Indicates whether the rule is applied. 3.6.0
isApplied boolean Indicates whether the rule is expired. 4.0.0
expired boolean Indicates whether the rule is a system rule. 4.0.0
description String The detailed description of the rule. 3.6.0
createDate Timestamp The time when the rule was created. 3.6.0
lastOpDate Timestamp The time when the rule was last modified. 3.6.0
action ActionType See action. 3.6.0
protocol ProtocolType See protocol. 3.6.0
state FirewallRuleState See state. 3.6.0
#action
Name Type Description Starting Version
drop ActionType 3.6.0
reject ActionType 3.6.0
accept ActionType 3.6.0
#protocol
Name Type Description Starting Version
tcp_udp ProtocolType 3.6.0
all ProtocolType 3.6.0
ah ProtocolType 3.6.0
ax.25 ProtocolType 3.6.0
dccp ProtocolType 3.6.0
ddp ProtocolType 3.6.0
egp ProtocolType 3.6.0
eigrp ProtocolType 3.6.0
encap ProtocolType 3.6.0
esp ProtocolType 3.6.0
etherip ProtocolType 3.6.0
fc ProtocolType 3.6.0
ggp ProtocolType 3.6.0
gre ProtocolType 3.6.0
hip ProtocolType 3.6.0
hmp ProtocolType 3.6.0
icmp ProtocolType 3.6.0
ipdr-cmtp ProtocolType 3.6.0
idpr ProtocolType 3.6.0
igmp ProtocolType 3.6.0
igp ProtocolType 3.6.0
ip ProtocolType 3.6.0
ipcomp ProtocolType 3.6.0
ipencap ProtocolType 3.6.0
ipip ProtocolType 3.6.0
isis ProtocolType 3.6.0
iso-tp4 ProtocolType 3.6.0
l2tp ProtocolType 3.6.0
manet ProtocolType 3.6.0
mpls-in-ip ProtocolType 3.6.0
ospf ProtocolType 3.6.0
pim ProtocolType 3.6.0
pup ProtocolType 3.6.0
rdp ProtocolType 3.6.0
rohc ProtocolType 3.6.0
rspf ProtocolType 3.6.0
rsvp ProtocolType 3.6.0
sctp ProtocolType 3.6.0
skip ProtocolType 3.6.0
st ProtocolType 3.6.0
tcp ProtocolType 3.6.0
udp ProtocolType 3.6.0
udplite ProtocolType 3.6.0
vmtp ProtocolType 3.6.0
vrrp ProtocolType 3.6.0
wesp ProtocolType 3.6.0
xns-idp ProtocolType 3.6.0
xtp ProtocolType 3.6.0
#state
Name Type Description Starting Version
disable FirewallRuleState 3.6.0
enable FirewallRuleState 3.6.0

SDK Sample

Java SDK
QueryFirewallRuleAction action = new QueryFirewallRuleAction();
action.conditions = asList();
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
QueryFirewallRuleAction.Result res = action.call();
Python SDK
QueryFirewallRuleAction action = QueryFirewallRuleAction()
action.conditions = []
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
QueryFirewallRuleAction.Result res = action.call()