ChangeFirewallRuleState

API Request

URLs
PUT zstack/v1/vpcfirewalls/rules/{uuid}/actions
Headers
Authorization: OAuth the-session-uuid
Body
{
  "changeFirewallRuleState": {
    "state": "disable"
  },
  "systemTags": [],
  "userTags": []
}
Note: In the preceding sample, both systemTags and userTags are optional. These two fields can be included in the body structure.
Curl Sample
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X PUT -d '{"changeFirewallRuleState":{"state":"disable"}}' http://localhost:8080/zstack/v1/vpcfirewalls/rules/4eef3024e5bd36f38be22b5af9807b20/actions
Request Parameters
Name Type Location Description Optional Value Starting Version
uuid String url The resource UUID. 3.6.0
state String body (contained in the changeFirewallRuleState structure) The action to change the state of the firewall rule.
  • enable
  • disable
3.6.0
systemTags List body Optional. The system tags. 3.6.0
userTags List body Optional. The user tags. 3.6.0

API Response

Sample Response
{
  "inventory": {
    "ruleSetUuid": "387ccd99cb2b3374a24f86108c3b8653",
    "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,
    "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
inventory VpcFirewallRuleInventory See inventory. 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
#inventory
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
isApplied boolean Indicates whether the rule is applied. 4.0.0
expired boolean Indicates whether the rule is expired. 4.0.0
isDefault boolean Indicates whether the rule is a system rule. 3.6.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
ChangeFirewallRuleStateAction action = new ChangeFirewallRuleStateAction();
action.uuid = "4eef3024e5bd36f38be22b5af9807b20";
action.state = "disable";
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
ChangeFirewallRuleStateAction.Result res = action.call();
Python SDK
ChangeFirewallRuleStateAction action = ChangeFirewallRuleStateAction()
action.uuid = "4eef3024e5bd36f38be22b5af9807b20"
action.state = "disable"
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
ChangeFirewallRuleStateAction.Result res = action.call()