Skip to main content

List Resources

Retrieves all cloud resources configured for your organization. Resources represent cloud infrastructure (AWS Security Groups, GCP firewall rules, etc.) that can be dynamically whitelisted during sessions.

Request

GET /resources

Authentication

Requires one of:

  • Bearer JWT Token with ORG_ADMIN role
  • API Key with resources:read scope
Authorization: Bearer <access_token>

or

Authorization: ApiKey <api_key>

Query Parameters

None. All resources for the authenticated organization are returned.

Response

Success Response

Status Code: 200 OK

Response Body:

[
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Production API Gateway",
"credentialId": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"credentialName": "AWS Production Account",
"provider": "AWS",
"resourceType": "SECURITY_GROUP",
"resourceIdentifier": "sg-0abc123def456",
"region": "eu-central-1",
"config": {
"port": 443,
"protocol": "tcp"
},
"isActive": true,
"lastVerifiedAt": "2026-02-18T10:30:00Z",
"createdAt": "2026-01-15T08:00:00Z",
"updatedAt": "2026-02-18T10:30:00Z"
},
{
"id": "661f9511-f3ac-52e5-b827-557766551111",
"name": "Staging Database",
"credentialId": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"credentialName": "AWS Production Account",
"provider": "AWS",
"resourceType": "SECURITY_GROUP",
"resourceIdentifier": "sg-9xyz789ghi012",
"region": "eu-central-1",
"config": {
"port": 5432,
"protocol": "tcp"
},
"isActive": true,
"lastVerifiedAt": "2026-02-18T09:15:00Z",
"createdAt": "2026-01-20T14:30:00Z",
"updatedAt": "2026-02-18T09:15:00Z"
}
]

Response Fields

FieldTypeDescription
idUUIDUnique resource identifier
namestringHuman-readable resource name
credentialIdUUIDID of linked cloud credential
credentialNamestringName of linked cloud credential
providerstringCloud provider: AWS, GCP, AZURE, or APISIX
resourceTypestringType of resource (e.g., SECURITY_GROUP)
resourceIdentifierstringCloud provider's resource ID (e.g., sg-abc123)
regionstringCloud region (optional, provider-specific)
configobjectResource-specific configuration (e.g., ports, protocols)
isActivebooleanWhether resource is currently active and verified
lastVerifiedAtstring (ISO 8601)Timestamp of last successful verification (null if never verified)
createdAtstring (ISO 8601)Resource creation timestamp
updatedAtstring (ISO 8601)Last update timestamp

Error Responses

Status CodeDescription
401 UnauthorizedMissing or invalid authentication token/API key
403 ForbiddenUser lacks ORG_ADMIN role or API key lacks resources:read scope
429 Too Many RequestsRate limit exceeded
500 Internal Server ErrorServer error occurred

Example

Request

curl -X GET https://api.entryguard.io/api/v1/resources \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." \
-H "Content-Type: application/json"

Using API Key

curl -X GET https://api.entryguard.io/api/v1/resources \
-H "Authorization: ApiKey eg_live_1a2b3c4d5e6f7g8h9i0j" \
-H "Content-Type: application/json"

Response

[
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Production API Gateway",
"credentialId": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
"credentialName": "AWS Production Account",
"provider": "AWS",
"resourceType": "SECURITY_GROUP",
"resourceIdentifier": "sg-0abc123def456",
"region": "eu-central-1",
"config": {
"port": 443,
"protocol": "tcp"
},
"isActive": true,
"lastVerifiedAt": "2026-02-18T10:30:00Z",
"createdAt": "2026-01-15T08:00:00Z",
"updatedAt": "2026-02-18T10:30:00Z"
}
]