FINRA short volume

One ticker day of short-sale volume, total volume and off-exchange ratios.

One row is

One ticker day of short-sale volume, total volume and off-exchange ratios

Example response

Trimmed real output. No key needed.

GET /v1/datasets/short-volume/sample

Dates reflect the example, not current coverage.

{
  "data": {
    "version": 1,
    "symbol": "AAPL",
    "finraSymbol": "AAPL",
    "scope": "nms",
    "status": "partial",
    "fetchedAt": "2026-09-22T12:00:00.000Z",
    "asOf": "2026-09-21",
    "sourceAsOf": "2026-09-21",
    "source": {
      "name": "FINRA consolidated NMS off-exchange volume",
      "url": "https://www.finra.org/finra-data/browse-catalog/short-sale-volume",
      "cadence": "Daily, no later than 18:00 America/New_York; later corrections possible"
    },
    "latest": {
      "date": "2026-09-21",
      "shortVolume": "5442428.346356",
      "shortExemptVolume": "23826",
      "totalVolume": "12178460.751537",
      "ratioPercent": 44.68896732,
      "markets": [
        "B",
        "Q",
        "N"
      ],
      "fetchedAt": "2026-09-22T00:00:00.000Z",
      "sourceUrl": "https://cdn.finra.org/equity/regsho/daily/CNMSshvol20260921.txt",
      "refreshFailed": false,
      "unavailableReason": null,
      "changePp": null,
      "previousDate": null,
      "percentile": {
        "value": null,
        "rank": null,
        "sampleCount": 1,
        "windowStart": "2025-09-21",
        "windowEnd": "2026-09-21",
        "historyStart": "2026-09-21",
        "historyEnd": "2026-09-21",
        "completeWindow": false,
        "min": 44.68896732,
        "max": 44.68896732,
        "mean": 44.68896732
      }
    },
    "coverage": {
      "windowStart": "2025-09-21",
      "windowEnd": "2026-09-21",
      "expectedFiles": 1,
      "ingestedFiles": 1,
      "missingFiles": 0,
      "expectedMonths": 13,
      "discoveredMonths": 0,
      "completeWindow": false
    },
    "history": [
      {
        "date": "2026-09-21",
        "shortVolume": "5442428.346356",
        "shortExemptVolume": "23826",
        "totalVolume": "12178460.751537",
        "ratioPercent": 44.68896732,
        "markets": [
          "B",
          "Q",
          "N"
        ],
        "fetchedAt": "2026-09-22T00:00:00.000Z",
        "sourceUrl": "https://cdn.finra.org/equity/regsho/daily/CNMSshvol20260921.txt",
        "refreshFailed": false,
        "unavailableReason": null
      }
    ],
    "warnings": [
      "Publication-index discovery is incomplete; the one-year file coverage is still being established.",
      "At least 20 observed ratios are required for a percentile.",
      "This symbol has limited usable history; percentile sample count and actual history dates remain explicit."
    ]
  },
  "meta": {
    "dataset": "short-volume",
    "asOf": "2026-09-21",
    "source": [
      {
        "id": "short-volume",
        "attribution": "Public trading activity reports",
        "licence": "Use subject to Gloom Datasets terms"
      }
    ],
    "historyStarts": "2026-09-21",
    "coverage": {
      "windowStart": "2025-09-21",
      "windowEnd": "2026-09-21",
      "expectedFiles": 1,
      "ingestedFiles": 1,
      "missingFiles": 0,
      "expectedMonths": 13,
      "discoveredMonths": 0,
      "completeWindow": false
    },
    "lastUpdated": "2026-09-22T00:00:00.000Z",
    "disclaimer": "Short-sale volume is not short interest and does not measure open short positions."
  }
}

Routes

Base URL https://api.gloom.sh. Send a key with each call; the key's account needs a plan.

GET /v1/short-volume/{symbol}2 credits

Daily off-exchange short-sale volume and ratios. Reads the existing dataset service and needs a key on an account with a plan; every plan reads every live dataset in full. Cached market reads can refresh their source data. Unknown, empty and repeated parameters are rejected. History and coverage metadata are null when the stored service cannot establish them.

Parameter

symbol

In

path, required

Type

string ^[A-Za-z0-9.:-]{1,32}$

Notes

Company symbol; normalized to uppercase.

Parameter

scope

In

query

Type

nms, otc

Parameter

limit

In

query

Type

integer 1 to 1000

  • Credits: 2 (history x1)
  • Plans: Basic, Desk, Enterprise

Meta fields

Field

dataset

Here

The dataset id

In the example

"short-volume"

Field

asOf

Here

The observation date established by the service; otherwise null

In the example

"2026-09-21"

Field

source

Here

Attribution and usage terms of each source

In the example

1 source

Field

historyStarts

Here

Earliest stored history when established by the service; otherwise null.

In the example

"2026-09-21"

Field

coverage

Here

Service-established coverage; null when unavailable.

In the example

{"windowStart":"2025-09-21","windowEnd":"2026-09-21","expectedFiles":1,"ingestedFiles":1,"missingFiles":0,"expectedMonths":13,"discoveredMonths":0,"completeWindow":false}

Field

lastUpdated

Here

The source update time established by the service; otherwise null

In the example

"2026-09-22T00:00:00.000Z"

Sources

Source

Public trading activity reports

Usage terms

Use subject to Gloom Datasets terms

Errors

These routes can answer 400, 401, 402, 403, 404, 429, 503. See Errors for the codes.

Gloom Datasets reads stored data only: a call never starts a collection.