API/docs feedback: snapshot day/min zero-filled as unset (not documented)
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 45/100
- Issue type
- Documentation
- Clarity
- Mostly clear
- Activity status
- Quiet
- Domain
- api, documentation
Research direction
Start with the linked single-ticker snapshot documentation and compare its semantics with the linked missing-aggregates knowledge-base article and the reported JSON response. Document whether zero-filled day/min fields and updated: 0 indicate no current aggregate, and record the chosen omission or null behavior when the API decision is settled.
Written by the indexing model from the issue text.
Description
Context
This is product/API + docs feedback for the Massive REST stocks snapshot (not an SDK bug). Filing here per Massive’s data-discrepancy guidance (support email + GitHub). Also emailed support@massive.com.
Summary
After the documented daily snapshot clear (3:30 AM EST), GET /v2/snapshot/locale/us/markets/stocks/tickers/{ticker} often returns day and min objects with all numeric fields set to 0 and updated: 0 when there is no current session activity, instead of omitting those objects (or using JSON null).
This is surprising because:
- Single ticker snapshot docs never document
0as “unset” - Aggregates / missing aggregates KB omit bars when there are no eligible trades
- In the same snapshot payload,
lastTrade/lastQuoteare omitted when unavailable
Clients using nullish coalescing (??) treat 0 as a real price and never fall through.
Repro
- Endpoint:
GET /v2/snapshot/locale/us/markets/stocks/tickers/CHKP - Observed:
2026-08-10T11:42:00Z(US premarket) request_id:13acbb2342e8b650464494f4099af50astatus:OK
{
"ticker": {
"ticker": "CHKP",
"todaysChangePerc": 0,
"todaysChange": 0,
"updated": 0,
"day": { "o": 0, "h": 0, "l": 0, "c": 0, "v": 0, "vw": 0 },
"min": { "av": 0, "t": 0, "n": 0, "o": 0, "h": 0, "l": 0, "c": 0, "v": 0, "vw": 0 },
"prevDay": {
"o": 126.15, "h": 127.84, "l": 124.43, "c": 127.82,
"v": 582977.1251, "vw": 126.9216
}
},
"status": "OK",
"request_id": "13acbb2342e8b650464494f4099af50a"
}
Liquid names with premarket prints (e.g. NVDA) populate min.c with a real price while day.* can still be zero before RTH — so zeros act as sentinels for “no bar yet,” not as a $0 trade.
Request
- Document that snapshot
day/minnumeric zeros (andupdated: 0) mean “no current session aggregate,” not a traded price of $0. - Prefer omitting empty
day/min(or null) for consistency with aggregates and omittedlastTrade/lastQuote. - If zero-fill must stay for compatibility, call it out explicitly in the snapshot docs.
Thanks!
John Solly (github@jsolly.com)
- Dominant language
- TypeScript
- Stars
- 273
- Forks
- 74
- Avg merge
- 7h 58m
- Merged PRs (30d)
- 11
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from massive-com/client-js
-
Difficulty 3/5 1-2 days Newbie friendliness 52/100
massive-com/client-js#290 ·
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
massive-com/client-js#265 ·
-
cjs compatibility Open
Difficulty 2/5 1-3 hours Newbie friendliness 58/100
massive-com/client-js#263 · 2 reactions ·
-
Difficulty 3/5 1-2 days Newbie friendliness 48/100
massive-com/client-js#250 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
massive-com/client-js#227 · 2 comments ·
All issues in massive-com/client-js
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug clawsweeper:linked-pr-open clawsweeper:needs-live-repro clawsweeper:no-new-fix-pr impact:message-loss issue-rating: 🐚 platinum hermit P2 regression
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
calcite-components needs triage refactor
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Esri/calcite-design-system#15203 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 78/100
fullcalendar/fullcalendar#8106 ·