CreateSecurityGroup
Headers
Authorization: OAuth the-session-uuidBody
{
"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-groupsParameter 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 |
| 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
}
}| Name | Type | Description | Starting Version |
|---|---|---|---|
| error | ErrorCode | Error code. If not null, the operation failed. If null, the operation succeeded. See error | 0.6 |
| inventory | SecurityGroupInventory | See inventory | 0.6 |
error
| Name | Type | Description | Starting Version |
|---|---|---|---|
| code | String | Error code number, a globally unique identifier for the error, for example SYS.1000, HOST.1001 | 0.6 |
| description | String | Brief description of the error | 0.6 |
| details | String | Detailed error information | 0.6 |
| elaboration | String | Reserved field, defaults to null | 0.6 |
| opaque | LinkedHashMap | Reserved field, defaults to null | 0.6 |
| cause | ErrorCode | Root error: the source error that caused the current error. If there is no original error, this field is null | 0.6 |
inventory
| Name | Type | Description | Starting Version |
|---|---|---|---|
| uuid | String | The UUID of the resource, uniquely identifying the resource | 0.6 |
| name | String | The resource name | 0.6 |
| description | String | The detailed description of the resource | 0.6 |
| state | String | 0.6 | |
| ipVersion | Integer | The IP version number | 3.1.0 |
| createDate | Timestamp | The creation time | 0.6 |
| lastOpDate | Timestamp | The last modification time | 0.6 |
| attachedL3NetworkUuids | Set | 0.6 | |
| rules | List | See rules | 0.6 |
rules
| Name | Type | Description | Starting Version |
|---|---|---|---|
| uuid | String | The UUID of the resource, uniquely identifying the resource | 0.6 |
| securityGroupUuid | String | The security group UUID | 0.6 |
| type | String | The traffic type | 0.6 |
| ipVersion | Integer | The IP version number | 3.1.0 |
| startPort | Integer | For TCP/UDP, it is the start port number of the port range; for ICMP, it is the ICMP type | 0.6 |
| endPort | Integer | For TCP/UDP, it is the end port number of the port range; for ICMP, it is the ICMP code | 0.6 |
| protocol | String | The traffic protocol type | 0.6 |
| state | String | The availability state of the rule, not implemented in the current version | 0.6 |
| allowedCidr | String | The 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 NIC | 0.6 |
| remoteSecurityGroupUuid | String | 0.6 | |
| createDate | Timestamp | The creation time | 0.6 |
| lastOpDate | Timestamp | The last modification time | 0.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()