---
title: "GNQL V3 Recall Stats"
method: GET
path: "/v3/gnql/timeseries/stats"
tags: ["Recall"]
---

# GNQL V3 Recall Stats

`GET /v3/gnql/timeseries/stats`

Get the number of unique IPs that match a GNQL query
per hour/day over a given time range.

## Query parameters

- `query` string, required
- `start` string, date-time
- `end` string, date-time
- `format` 'csv' | 'json'
- `interval` 'hour' | 'day', required

## Response `200`

Query successful.

- TimeSeriesStatsResponse — Response object for the timeseries stats/aggregation endpoint. This provides aggregated IP counts over time intervals matching a GNQL query.
  - `count` integer — The sum of all IP counts across all time intervals
  - `min` integer — The minimum IP count observed in any single time interval
  - `max` integer — The maximum IP count observed in any single time interval
  - `data` TimeSeriesStatsRecord[] — Array of aggregated data points, one per time interval
    - `date` string — The starting timestamp for this time interval in format 'YYYY-MM-DD HH:mm:ss.SSS'. For hourly intervals, the time component represents the hour. For daily intervals, the time will be 00:00:00.000.
    - `count` integer — The number of unique IPs matching the query in this time interval

## Other responses

- `206` — Partial content - request partially successful. Due to plan limitations, your request only returned a subset of fields and/or data. Contact sales@greynoise.io to upgrade your plan and unlock full results.
- `400` — Bad request - request syntax is invalid for the specified endpoint. Verify request syntax and try again.
- `401` — Unauthorized. Please check your API key.
- `429` — Too many requests. You've hit the rate-limit.

---

[API](https://skmtc.dev/greynoise/apis/greynoise-api.md) · [All operations](https://skmtc.dev/greynoise/apis/greynoise-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/greynoise/greynoise-api/revisions/30942574656d/schema)
