Network ServicesSecurity Group

CreateSecurityGroup

POST/zstack/v1/security-groups

Headers

Authorization: OAuth the-session-uuid

Body

{
  "params": {
    "name": "sp",
    "description": "test create security group"
  },
  "systemTags": [],
  "userTags": []
}

In the preceding sample, both systemTags and userTags are optional. These two fields can be included in the body structure.

Curl Example

curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X POST -d '{"params":{"name":"sp","description":"test create security group"}}' \
http://localhost:8080/zstack/v1/security-groups

Parameter List

Name

Type

Location

Description

Allowed Values

Starting Version

name

String

body (included in the params structure)

The resource name

 

0.6

description (Optional)

String

body (included in the params structure)

The detailed description of the resource

 

0.6

ipVersion (Optional)

Integer

body (included in the params structure)

The IP version number

  • 4
  • 6

3.1.0

resourceUuid (Optional)

String

body (included in the params structure)

User-specified resource UUID. If specified, the system does not randomly assign a UUID to the resource

 

0.6

systemTags (Optional)

List

body

System tags

 

0.6

userTags (Optional)

List

body

User tags

 

0.6

API Response

Response Example

{
  "inventory": {
    "uuid": "7bb070cdebf44fd8af354f25344d758b",
    "name": "web",
    "description": "for test",
    "state": "Enabled",
    "createDate": "Jun 7, 2017 9:21:20 PM",
    "lastOpDate": "Jun 7, 2017 9:21:20 PM",
    "internalId": 0.0
  }
}
NameTypeDescriptionStarting Version
errorErrorCodeError code. If not null, the operation failed. If null, the operation succeeded. See error0.6
inventorySecurityGroupInventorySee inventory0.6

error

NameTypeDescriptionStarting Version
codeStringError code number, a globally unique identifier for the error, for example SYS.1000, HOST.10010.6
descriptionStringBrief description of the error0.6
detailsStringDetailed error information0.6
elaborationStringReserved field, defaults to null0.6
opaqueLinkedHashMapReserved field, defaults to null0.6
causeErrorCodeRoot error: the source error that caused the current error. If there is no original error, this field is null0.6

inventory

NameTypeDescriptionStarting Version
uuidStringThe UUID of the resource, uniquely identifying the resource0.6
nameStringThe resource name0.6
descriptionStringThe detailed description of the resource0.6
stateString 0.6
ipVersionIntegerThe IP version number3.1.0
createDateTimestampThe creation time0.6
lastOpDateTimestampThe last modification time0.6
attachedL3NetworkUuidsSet 0.6
rulesListSee rules0.6

rules

NameTypeDescriptionStarting Version
uuidStringThe UUID of the resource, uniquely identifying the resource0.6
securityGroupUuidStringThe security group UUID0.6
typeStringThe traffic type0.6
ipVersionIntegerThe IP version number3.1.0
startPortIntegerFor TCP/UDP, it is the start port number of the port range; for ICMP, it is the ICMP type0.6
endPortIntegerFor TCP/UDP, it is the end port number of the port range; for ICMP, it is the ICMP code0.6
protocolStringThe traffic protocol type0.6
stateStringThe availability state of the rule, not implemented in the current version0.6
allowedCidrStringThe allowed CIDR. It has different meanings depending on the traffic type. For Ingress, it is the source CIDR allowed to access the VM NIC. For Egress, it is the destination CIDR that traffic is allowed to reach from the VM NIC0.6
remoteSecurityGroupUuidString 0.6
createDateTimestampThe creation time0.6
lastOpDateTimestampThe last modification time0.6

SDK Examples

Java SDK

CreateSecurityGroupAction action = new CreateSecurityGroupAction();
action.name = "sp";
action.description = "test create security group";
action.sessionId = "b5032c14210c4668a3a2bcd341d80bbf";
CreateSecurityGroupAction.Result res = action.call();

Python SDK

CreateSecurityGroupAction action = CreateSecurityGroupAction()
action.name = "sp"
action.description = "test create security group"
action.sessionId = "e34f8139af4548d5ade539ca2a5d7983"
CreateSecurityGroupAction.Result res = action.call()