vpc — Virtual Private Cloud
vpc · 2017-03-12

DescribeSecurityGroups

POST

Query security groups.

Wire call

Converge Cloud is RPC over HTTP. There is one path — / — and the action travels in the X-TC-Action header. The /vpc/DescribeSecurityGroups path used in the OpenAPI document is a documentation convenience so each action is addressable; it is not a route on the server.

curl
curl -sS https://vpc.api3.convergecloud.com/ \
  -H 'Authorization: TC3-HMAC-SHA256 Credential=<SecretId>/<YYYY-MM-DD>/vpc/tc3_request, SignedHeaders=content-type;host;x-tc-action, Signature=<sig>' \
  -H 'Content-Type: application/json; charset=utf-8' \
  -H 'Host: vpc.api3.convergecloud.com' \
  -H 'X-TC-Action: DescribeSecurityGroups' \
  -H 'X-TC-Version: 2017-03-12' \
  -H 'X-TC-Timestamp: <unix-seconds>' \
  -H 'X-TC-Region: luzon' \
  -d '{"Offset":0,"Limit":20}'

Request parameters

FieldTypeRequiredDescription
SecurityGroupIdsstring[]—Security group ID, such as `sg-33ocnj9n`. Each request can contain up to 100 instances at a time. `SecurityGroupIds` and `Filters` cannot be specified at the same time.
FiltersFilter[]—Filter conditions. `SecurityGroupIds` and `Filters` cannot be specified at the same time.
Offsetstring—Offset. Default value: 0.
Limitstring—Number of returned results. Default value: 20. Maximum value: 100.
OrderFieldstring—Sorting field. Values: `CreatedTime`, `UpdateTime` Note: This field does not have default value.
OrderDirectionstring—Sorting method Order methods. Ascending: `ASC`, Descending: `DESC`. Default: `ASC`

Response

Fields are returned inside the Response envelope. Converge Cloud answers HTTP 200 for errors as well as successes, so read Response.Error rather than the status code — and test for the presence of that object, because Code is occasionally the empty string.

FieldTypeDescription
SecurityGroupSetSecurityGroup[]Security group object.
TotalCountintegerThe number of instances meeting the filter condition.
RequestIdstringThe unique request ID, generated by the server, will be returned for every request (if the request fails to reach the server for other reasons, the request will not obtain a RequestId). RequestId is required for locating a problem.
Success
{
  "Response": {
    "SecurityGroupSet": …,
    "TotalCount": …,
    "RequestId": "…"
  }
}
Error
{
  "Response": {
    "Error": { "Code": "…", "Message": "…" },
    "RequestId": "…"
  }
}

Try it

CredentialThe key never leaves this tab — it signs the request here. The signed request goes to /api-relay/vpc.
Request bodyvalid JSONPOST vpc.api3.convergecloud.com · DescribeSecurityGroups
Read-only. Creates nothing.
Recorded example response — captured 2026-09-17
{
  "Response": {
    "SecurityGroupSet": [],
    "TotalCount": 0,
    "RegionStatistics": [
      {
        "TotalCount": 0,
        "Region": "luzon"
      }
    ],
    "RequestId": "4cef7045-51d9-4d18-4250-8df097142a3f"
  }
}

What failure looks like

Example error responses for this action. Match on Code.

Recorded error 1
{
  "Response": {
    "Error": {
      "Code": "ResourceNotFound",
      "Message": "指定资源 `['sg-4e74nn5y']` 未找到。"
    },
    "RequestId": "5560e2d8-5f85-08d5-37c1-ee997c146f61"
  }
}

Behaviour

Returns group metadata only. It does not indicate whether a group is attached to anything; use DescribeSecurityGroupAssociationStatistics for that.