Skip to content

List security groups in a project.

GET
/v1/projects/{projectId}/network/security-groups
Code sample: Shell / cURL
curl --request GET \
--url https://stratum.example.com/v1/projects/example/network/security-groups \
--header 'Authorization: Bearer <token>'
projectId
required
string
/^p-[a-z0-9-]+$/

Security groups.

Media typeapplication/json
object
items
required
Array<object>
object
ownedBy

Set on a platform-owned row; absent on a tenant’s own.

object
kind
required
string
Allowed values: auto-scaling-group platform
id
required

The owner: the Auto Scaling group id, or for platform the component (front-door, pack:platform-health, default-network, operator-recipe).

string
id
required
string
/^sg-[a-z0-9-]+$/
projectId
required
string
/^p-[a-z0-9-]+$/
name
required
string
/^[a-z][a-z0-9-]{1,38}[a-z0-9]$/
displayName
required
string
>= 1 characters <= 100 characters
description
string
region
required
string
/^[a-z][a-z0-9]+(-[a-z0-9]+)*$/
defaultEgressAllow
required

Matches AWS’s default-allow-egress. Set false to opt into explicit egress rules.

boolean
ingressRules
Array<object>
object
id
string
/^sgr-[a-z0-9-]+$/
direction
required
string
Allowed values: ingress egress
protocol
required
string
Allowed values: tcp udp icmp all
fromPort

Required for tcp/udp; ignored for icmp/all.

integer
<= 65535
toPort

Required for tcp/udp; ignored for icmp/all.

integer
<= 65535
source
required
object
type
required
string
Allowed values: cidr security-group
value
required

For cidr, an IPv4 CIDR like 10.0.0.0/16 or 0.0.0.0/0. For security-group, an sg-* ID; must point at an SG in the same project (cross-project refs land at post-2.x).

string
description
string
egressRules
Array<object>
object
id
string
/^sgr-[a-z0-9-]+$/
direction
required
string
Allowed values: ingress egress
protocol
required
string
Allowed values: tcp udp icmp all
fromPort

Required for tcp/udp; ignored for icmp/all.

integer
<= 65535
toPort

Required for tcp/udp; ignored for icmp/all.

integer
<= 65535
source
required
object
type
required
string
Allowed values: cidr security-group
value
required

For cidr, an IPv4 CIDR like 10.0.0.0/16 or 0.0.0.0/0. For security-group, an sg-* ID; must point at an SG in the same project (cross-project refs land at post-2.x).

string
description
string
state
required
string
Allowed values: creating available deleting deleted error
tags

AWS-shape resource tags. Freeform UTF-8 keys (1-128 bytes, no leading/trailing whitespace) mapped to freeform UTF-8 values (0-256 bytes). Max 50 tags per resource. Reserved prefixes (stratum.dev/, stratum.platform_health., stratum:, aws:) return 400 RESERVED_NAMESPACE on customer input. PATCH replaces the whole map..

object
<= 50 properties
key
additional properties
string
<= 256 characters
createdAt
required
string format: date-time
updatedAt
required
string format: date-time
deletedAt
string format: date-time
nullable
createdBy
required
string
nextPageToken
string
isTruncated

True when the server had more rows than it returned. The response is a valid prefix of the result, not the whole of it.

Without this flag a client at the server’s row ceiling receives a full page and no nextPageToken, which means “this is the complete set” — so data it never saw would be indistinguishable from data that does not exist.

It does not imply a cursor exists. These queries do not all sort on a total order, so a resumable token cannot be minted for them yet. The remedy is to narrow the request (a filter, or a tighter scope), not to page.

boolean

Example

{
"items": [
{
"ownedBy": {
"kind": "auto-scaling-group"
},
"ingressRules": [
{
"direction": "ingress",
"protocol": "tcp",
"source": {
"type": "cidr"
}
}
],
"egressRules": [
{
"direction": "ingress",
"protocol": "tcp",
"source": {
"type": "cidr"
}
}
],
"state": "creating"
}
]
}