List Static IP Rules
Retrieve all static IP rules configured for the organization. Static IP rules provide permanent whitelisting of specific IP addresses across multiple resources.
Request
GET /static-ip-rules
Authentication
Requires an Admin Bearer JWT token.
Authorization: Bearer <access_token>
Query Parameters
None.
Response
Returns an array of static IP rule objects with their application status on each resource.
Success Response
Status Code: 200 OK
Response Body:
[
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"label": "Office Network",
"ipAddress": "203.0.113.0/24",
"status": "ACTIVE",
"createdByEmail": "[email protected]",
"createdAt": "2026-01-15T09:00:00Z",
"resources": [
{
"resourceId": "660e8400-e29b-41d4-a716-446655440001",
"resourceName": "Production DB Security Group",
"status": "APPLIED",
"appliedAt": "2026-01-15T09:00:30Z",
"errorMessage": null
},
{
"resourceId": "770e8400-e29b-41d4-a716-446655440002",
"resourceName": "API Server Security Group",
"status": "APPLIED",
"appliedAt": "2026-01-15T09:00:35Z",
"errorMessage": null
}
]
}
]
Response Fields
| Field | Type | Description |
|---|---|---|
id | UUID | Unique identifier for the static IP rule |
label | string | Human-readable label for the rule |
ipAddress | string | IP address or CIDR range (IPv4 or IPv6) |
status | string | Overall status: ACTIVE, PENDING, PARTIAL, or FAILED |
createdByEmail | string | Email of the user who created the rule |
createdAt | string | ISO timestamp of creation |
resources | array | List of resources where this rule is applied |
resources[].resourceId | UUID | Resource unique identifier |
resources[].resourceName | string | Human-readable resource name |
resources[].status | string | Application status: APPLIED, PENDING, or FAILED |
resources[].appliedAt | string | ISO timestamp when rule was applied (null if pending/failed) |
resources[].errorMessage | string | Error description if status is FAILED |
Rule Status Values
| Status | Description |
|---|---|
ACTIVE | Rule is successfully applied to all resources |
PENDING | Rule is being applied asynchronously |
PARTIAL | Rule is applied to some resources but failed on others |
FAILED | Rule failed to apply to all resources |
Errors
| Status Code | Error Code | Description |
|---|---|---|
401 | UNAUTHORIZED | Missing or invalid JWT token |
403 | FORBIDDEN | User does not have admin privileges |
Example
Request
curl -X GET https://api.entryguard.io/api/v1/static-ip-rules \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
Response
[
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"label": "Office Network",
"ipAddress": "203.0.113.0/24",
"status": "ACTIVE",
"createdByEmail": "[email protected]",
"createdAt": "2026-01-15T09:00:00Z",
"resources": [
{
"resourceId": "660e8400-e29b-41d4-a716-446655440001",
"resourceName": "Production DB Security Group",
"status": "APPLIED",
"appliedAt": "2026-01-15T09:00:30Z",
"errorMessage": null
},
{
"resourceId": "770e8400-e29b-41d4-a716-446655440002",
"resourceName": "API Server Security Group",
"status": "APPLIED",
"appliedAt": "2026-01-15T09:00:35Z",
"errorMessage": null
}
]
},
{
"id": "880e8400-e29b-41d4-a716-446655440003",
"label": "VPN Gateway",
"ipAddress": "198.51.100.42",
"status": "PARTIAL",
"createdByEmail": "[email protected]",
"createdAt": "2026-02-10T14:30:00Z",
"resources": [
{
"resourceId": "660e8400-e29b-41d4-a716-446655440001",
"resourceName": "Production DB Security Group",
"status": "APPLIED",
"appliedAt": "2026-02-10T14:30:25Z",
"errorMessage": null
},
{
"resourceId": "990e8400-e29b-41d4-a716-446655440004",
"resourceName": "Staging Environment",
"status": "FAILED",
"appliedAt": null,
"errorMessage": "Security group not found"
}
]
}
]