---
title: "Get typical time-of-day volume curve"
method: GET
path: "/companies/{ticker}/volume-curve"
tags: ["Companies"]
---

# Get typical time-of-day volume curve

`GET /companies/{ticker}/volume-curve`

## Request

- Base URL: `https://api.signal8.ai/api/v1/public`
- URL: `https://api.signal8.ai/api/v1/public/companies/{ticker}/volume-curve`
- Auth: API key in header `X-Api-Key`

Get a company's typical intraday volume curve: for each time-of-day
slot (default 15 minutes) across the last N minute-bar-covered trade
dates, the average volume traded within the slot and the average
cumulative volume from 04:00 ET through the end of the slot. Slots
cover the full extended session [04:00, 20:00) ET as a dense,
zero-filled grid.

Designed as the baseline for time-of-day relative volume: divide
today's cumulative volume at a given time by `avgCumulativeVolume`
at the same slot ("by 08:00 this ticker typically has 31k shares —
today it has 1.9M, that's 61x"), or divide the latest slot's volume
by `avgSlotVolume` to detect an in-progress surge. Minutes with no
trades count as zero in the averages, and volumes are split-adjusted
to the current share basis.

`dayCount` reports the actual number of trade dates averaged, which
may be lower than `days` for tickers with a shallow local minute-bar
history. Returns 200 with an empty curve when no history exists yet.

**Credit cost: 3**

## Path parameters

- `ticker` string, required

## Query parameters

- `days` integer
- `slotMinutes` string

## Response `200`

Time-of-day volume curve

- object

## Other responses

- `400`: Invalid request parameters
- `401`: Missing or invalid API key
- `402`: Not enough credits for this request
- `404`: Resource not found
- `429`: Rate limit exceeded

---

[API](https://skmtc.dev/signal8/apis/signal8-public-api.md) · [All operations](https://skmtc.dev/signal8/apis/signal8-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/signal8/apis/signal8-public-api/revisions/5a18ae8d6d58?raw)
