List exception requests across firewalls

GET
/v1/{namespace}/exception-requests

Exception requests on every firewall the caller can read, newest first, with the same capabilities as the per-firewall list. scope=review (the default) lists the pending requests the caller can decide: on firewalls that accept requests and where the caller has fw:update:exception. scope=mine lists the caller's own requests and needs a user session or personal access token. scope=all lists every request on the firewalls the caller can read.

Authorization

headerAuthorizationBearer <token>

A personal or service access token, sent as Authorization: Bearer <token>. See access tokens.

Path Parameters

namespace*string

The namespace id.

Query Parameters

scope?string

review (default), mine or all.

status?string

With scope=mine or scope=all: only requests with one of these statuses, comma-separated.

firewall?string

Only requests on these firewall ids, comma-separated. Ids the caller cannot read are ignored.

Response Body

The requests, with what the caller may do with each.

application/json
  1. response
[index: integer]?

An exception request, with what the caller may do with it.

curl -X GET 'https://eu-sov-1.bytesafecloud.eu/v1/my-namespace-id/exception-requests?scope=review&status=pending%2Cdenied&firewall=npm-main'
[  {    "id": "exr-01JZ8Q2V6R9X3T5W7Y0A2C4E6G",    "firewallId": "npm-main",    "status": "pending",    "proposedException": {      "id": "allow-left-pad",      "rule": "block-malware",      "selector": {        "packageName": "left-pad",        "version": "1.3.0"      },      "log": true,      "expires": "2026-05-31T09:30:00Z",      "reason": "evaluating_component"    },    "justification": "Needed for the build until we migrate off left-pad.",    "requestedBy": "user_2a9f",    "requestedAt": "2026-03-02T09:30:00Z",    "updatedAt": "2026-03-02T09:30:00Z",    "firewallName": "npm main",    "ruleDescription": "Block known malware",    "canApprove": true,    "canDeny": true,    "canWithdraw": true  }]