CSV exports
Two GET endpoints return CSV attachments for offline analysis, board reporting or a warehouse. Both work with any credential that can read the underlying data.
| Export | Endpoint | Row cap |
|---|---|---|
| Check results | GET / | 50,000 |
| Monitor uptime summary | GET / | none |
Logs, metrics and traces export through telemetry exports instead, as CSV or NDJSON.
Check results
Section titled “Check results”Every recorded check run for one uptime monitor (HTTP, TCP port or ping), oldest first. In the dashboard, open the monitor and choose Export CSV from its actions menu; it exports the range currently selected. Through the API, with the monitor’s id as JOB_ID:
curl -G "https://api.siteqwality.com/http/job/$JOB_ID/results/export" \ -H "Authorization: Bearer $SITEQWALITY_API_KEY" \ --data-urlencode "from=2026-07-01T00:00:00Z" \ --data-urlencode "to=2026-08-01T00:00:00Z" \ -o checks.csvColumns, in order:
timestamp, region, status, http_code, total_ms,dns_ms, tcp_connect_ms, tls_ms, ttfb_ms, download_ms, failure_reason,packets_sent, packets_received, rtt_min_us, rtt_avg_us, rtt_max_us, rtt_mdev_usfrom and to are optional: to defaults to now, from to 30 days before it. from must be before to. Check runs are kept for 90 days, so an older range returns only what is left of it.
The per-phase timing columns (dns_ms, tcp_connect_ms, tls_ms, ttfb_ms, download_ms) are empty for results recorded before mid-2026. total_ms is empty on a TCP port check that never connected and on a ping check that got no reply. The last six columns are the ping statistics, round trips in microseconds, and are empty except on ping checks.
Monitor uptime summary
Section titled “Monitor uptime summary”One row per uptime monitor (HTTP, TCP port or ping), summarizing the range. API only.
curl -G "https://api.siteqwality.com/monitors/export" \ -H "Authorization: Bearer $SITEQWALITY_API_KEY" \ --data-urlencode "from=2026-07-01T00:00:00Z" \ --data-urlencode "to=2026-08-01T00:00:00Z" \ -o monitors-uptime.csvColumns, in order:
monitor_id, name, url, check_type, state, uptime_percentage,avg_response_time_ms, days_with_data, range_from, range_to- Uptime monitors only, despite the endpoint name:
check_typeishttp,tcporping. Browser, cron, DNS and TLS monitors are not included. Paused monitors are, with empty metrics. uptime_percentageis the unweighted average of daily uptime percentages, from the same daily figures as the SLA report, so the current day counts with the checks so far.
When you exceed the cap
Section titled “When you exceed the cap”If a range matches more rows than the cap, the check results export returns no file, only a message with the actual count:
Range matches 91240 rows; the export cap is 50000. Narrow the date range.Split the request into smaller windows and concatenate the results, keeping one header row.