Authz
Generated from Huudis's own code: every route in this area, what it takes and how to call it.
| Method | Path | What it does |
|---|---|---|
POST |
/api/v1/authz/assume-role |
Create an assume role |
POST |
/api/v1/authz/check |
Create a check |
GET |
/api/v1/authz/whoami |
Session-auth health ping so dashboard can verify reachability. |
Create an assume role
POST /api/v1/authz/assume-role
Authentication: Takes a signed-in person's session or bearer token, or any IAM access key (Huudis-HMAC-SHA256) — a user's or a service account's. See access keys.
Body
| Field | Type | Required | Notes |
|---|---|---|---|
roleId |
string | yes | min length 1 |
sessionName |
string | no | max length 64 |
durationSeconds |
integer | no | min 900; max 43200 |
Example
curl -X POST "https://huudis.com/api/v1/authz/assume-role" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{"roleId":"…","sessionName":"…","durationSeconds":900}'
Create a check
POST /api/v1/authz/check
Authentication: Takes a signed-in person's session or bearer token, or any IAM access key (Huudis-HMAC-SHA256) — a user's or a service account's. See access keys.
Body
| Field | Type | Required | Notes |
|---|---|---|---|
principal |
object | yes | |
action |
string | yes | min length 1 |
resource |
string | yes | min length 1 |
context |
object | no |
Example
curl -X POST "https://huudis.com/api/v1/authz/check" \
-H "Authorization: Bearer <access token>" \
-H "Content-Type: application/json" \
-d '{"principal":{"type":"user","id":"…","accountId":"…"},"action":"…","resource":"…","context":{}}'
Session-auth health ping so dashboard can verify reachability.
GET /api/v1/authz/whoami
Authentication: Takes a signed-in person's session or bearer token, or an IAM access key (Huudis-HMAC-SHA256) whose user's policies allow huudis:GetCallerIdentity. See access keys.
Example
curl -X GET "https://huudis.com/api/v1/authz/whoami" \
-H "Authorization: Bearer <access token>"