Get protection traffic statistics
The filter's own view of an address: what reached the server and what it discarded.
passUnit and dropUnit are chosen by the panel from the window and are not always the
same — read both rather than assuming Kb.
apiToken firewall:readAuthorizationBearer <token>A personal API token: Authorization: Bearer dh_live_…. See Authentication for scopes.
Scope: firewall:read
ip*stringOne of your protected addresses, from GET /v1/firewall/ips. Any other address is a 403.
period?stringHow far back to go. An unknown value falls back to 10m.
"10m""10m""1h""1d""1w"The series, oldest first.
application/json- response
points*array<>passUnit*stringUnit of pass, e.g. Kb. Chosen by the panel.
dropUnit*stringUnit of drop. Not necessarily passUnit.
curl -X GET 'https://api.deluxhost.net/v1/firewall/traffic?ip=string' \ -H "Authorization: Bearer $DELUXHOST_TOKEN"{ "points": [ { "time": "string", "pass": 0, "drop": 0 } ], "passUnit": "string", "dropUnit": "string"}List protected IP addresses GET
Start here: every other firewall endpoint is keyed by `ip`, and an address that is not in this list answers `403` everywhere. Resolved live from the panels, so it can be empty for a minute after a service is provisioned. It only contains addresses that sit behind the filtered network — a service hosted elsewhere simply has no entry.
List DDoS attacks GET
Mitigated attacks against one address, newest first. `endedAt` is null while one is still in progress — that, not a separate endpoint, is how you tell you are under attack now. Page-numbered rather than cursor-paginated like the invoice list: the panel offers page and size, and a cursor on top of that would promise a stability it does not give.