---
title: "Count calls per bucket"
method: GET
path: "/api/v1/requests/histogram"
tags: ["debugging"]
---

# Count calls per bucket

`GET /api/v1/requests/histogram`

## Request

- Base URL: `https://api.past.dev`
- URL: `https://api.past.dev/api/v1/requests/histogram`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

Calls per time bucket over a window, split into accepted, accepted then stopped later, and rejected.

## Query parameters

- `from` string, date-time
- `to` string, date-time
- `status` integer[]
- `statusClass` string[]
- `endpoint` string[]
- `keyName` string[]
- `search` string

## Response `200`

One bucket per interval, with the totals over the window.

- RequestHistogram
  - `project` string, required
  - `from` string, date-time, required
  - `to` string, date-time, required
  - `bucketMinutes` integer, nullable: The interval the platform chose.
  - `totals` RequestBucket, required
    - `start` string, date-time, nullable
    - `accepted` integer, required
    - `failedLater` integer, required: Calls the platform accepted and then stopped on.
    - `rejected` integer, required
  - `buckets` RequestBucket[], required
    - `start` string, date-time, nullable
    - `accepted` integer, required
    - `failedLater` integer, required: Calls the platform accepted and then stopped on.
    - `rejected` integer, required

## Other responses

- `400`: The request is malformed or violates a field constraint. Match behavior on the response code field.
- `401`: missing-api-key: no bearer. malformed-api-key: the header or the key has the wrong shape, or an agent token was sent to a route that accepts keys only. unauthorized: the key is unknown, expired, revoked, or of the kind this route refuses, or the agent token is invalid or expired.
- `403`: project-archived: the project of the key, or the project an agent token names, is archived. Unarchive it in the console to resume. insufficient-scope: the agent token does not carry the scope of the route.
- `429`: The plan's requests per minute are exceeded. This refusal carries no body.
- `default`: Any other failure uses the same JSON error envelope.

---

[API](https://skmtc.dev/past/apis/past-dev-memory-api.md) · [All operations](https://skmtc.dev/past/apis/past-dev-memory-api/llms.txt) · [OpenAPI document](https://skmtc.dev/past/apis/past-dev-memory-api/revisions/3ddccc19f0eb?raw)
