Skip to content
Hoody.com

Enumerate the proxy groups and services attached to a container. These endpoints expose the read-only, debug-oriented view of the container’s proxy configuration: the list of defined groups with their auth-rule counts, the set of service names referenced anywhere in the proxy config, and a merged per-service view showing raw permissions, hooks, and the effective default.

Returns every defined proxy group name along with the number of auth rules it contains, plus the current file version and ETag for the proxy configuration.

NameInTypeRequiredDescription
idpathstringYesContainer ID
{
"statusCode": 200,
"message": "Proxy groups retrieved",
"data": {
"groups": [
{
"name": "default",
"auth_rule_count": 4
},
{
"name": "admins",
"auth_rule_count": 7
},
{
"name": "readonly",
"auth_rule_count": 2
}
],
"file_version": 12,
"etag": "9f8c2a1b7d3e0f44"
}
}
Terminal window
curl -X GET "https://api.hoody.icu/api/v1/containers/507f1f77bcf86cd799439012/proxy/groups" \
-H "Authorization: Bearer <token>"

GET /api/v1/containers/{id}/proxy/services

Section titled “GET /api/v1/containers/{id}/proxy/services”

Returns every service name referenced by any permission cell or hook rule in the container’s proxy configuration, along with the current file version and ETag.

NameInTypeRequiredDescription
idpathstringYesContainer ID
{
"statusCode": 200,
"message": "Proxy services retrieved",
"data": {
"services": [
"github",
"openai",
"anthropic",
"internal-api"
],
"file_version": 12,
"etag": "9f8c2a1b7d3e0f44"
}
}
Terminal window
curl -X GET "https://api.hoody.icu/api/v1/containers/507f1f77bcf86cd799439012/proxy/services" \
-H "Authorization: Bearer <token>"

GET /api/v1/containers/{id}/proxy/services/{service}

Section titled “GET /api/v1/containers/{id}/proxy/services/{service}”

Returns a merged, debug-only view of a single service: the per-group raw permission cells, any attached hooks, the effective default policy, and whether the service is on the reject list. The response also includes the current file version and ETag.

NameInTypeRequiredDescription
idpathstringYesContainer ID
servicepathstringYesService name

The effective_default field is one of "allow" or "deny". The permissions_raw object maps group names to their per-service access cells, and hooks lists any hook rules attached to the service.

{
"statusCode": 200,
"message": "Proxy service retrieved",
"data": {
"service": "github",
"is_reject_listed": false,
"permissions_raw": {
"default": {
"methods": ["GET"],
"paths": ["/repos/*"]
},
"admins": {
"methods": ["GET", "POST", "PUT", "DELETE"],
"paths": ["/*"]
}
},
"hooks": [
{
"event": "before_request",
"command": "log.sh"
}
],
"effective_default": "deny",
"file_version": 12,
"etag": "9f8c2a1b7d3e0f44"
}
}
Terminal window
curl -X GET "https://api.hoody.icu/api/v1/containers/507f1f77bcf86cd799439012/proxy/services/github" \
-H "Authorization: Bearer <token>"