fastmon Docs
Analytics

List single CSP reports

Fehler melden

The reports of POST /analytics/csp one by one, newest first.

One row per stored report: when and on which page the policy broke, what it blocked, which directive, the script behind it, the visitor and the edge labels. report_count says how many identical reports of one upload the row stands for. The filters are those of the aggregate route.

Cursor paginated over (timestamp, id), with no total. visitor_id is absent where the report carries no stitch.

Authentifizierung

bearerAuth
headerAuthentifizierungBearer <token>

API token generated from the fastmon dashboard (Account → API Token) or at organization level (fmo_…, one that outlives its creator). Send as Authorization: Bearer fm_... or paste the full token (including its prefix) into the Authorize dialog.

Pfad-Parameter

org_id*Org Id
Formatuuid

Request-Body

application/json
  1. body

Request for the single CSP reports, newest first.

time_range*

Time range, on the time the browser saw the violation

filters?

The filters of POST /analytics/csp, with its 422 for a filter the table cannot answer

limit?Limit

Max rows per page

Range1 <= value <= 100
Default50
cursor?|

Opaque resume point from meta.next_cursor of the previous page. It carries the last row's timestamp and id, so two reports of the same millisecond page without a gap or a repeat.

Response-Body

Successful Response

application/json
  1. response
data*array<>
meta*

Meta for ClickHouse-backed cursor-paginated lists.

total is intentionally absent: COUNT(*) over beacon tables is too expensive. Clients rely on has_more + next_cursor instead.

POST
/organizations/{org_id}/analytics/csp/reports
curl -X POST 'https://api.fastmon.eu/organizations/497f6eca-6276-4993-bfeb-53cbbbba6f08/analytics/csp/reports' \  -H 'Content-Type: application/json' \  -d '{  "time_range": {    "from": "2019-08-24T14:15:22Z",    "to": "2019-08-24T14:15:22Z"  }}'
{  "data": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "timestamp": "2019-08-24T14:15:22Z",      "disposition": "enforce",      "effective_directive": "string",      "blocked_url": "string",      "page_url": "string",      "source_url": "string",      "line": 0,      "column": 0,      "status_code": 0,      "referrer_url": "string",      "original_policy": "string",      "site_id": "72771e6a-6f5e-4de4-a5b9-1266c4197811",      "visitor_id": "string",      "report_count": 0,      "country": "string",      "asn": 0,      "isp": "string",      "device_type": "string",      "browser": "string",      "browser_version": "string",      "os": "string",      "bot_name": "string",      "bot_type": "string",      "datacenter": "string",      "ua_anomaly": "string",      "bot_class": "bot"    }  ],  "meta": {    "limit": 0,    "has_more": true,    "next_cursor": "string"  }}