BellHour API
Free JSON API for global market hours and status
GET /api/markets
Returns full status for all 12 exchanges including countdown timers.
curl https://bellhour.com/api/marketsResponse Schema
[
{
"id": "nyse",
"name": "New York Stock Exchange",
"shortName": "NYSE",
"flag": "πΊπΈ",
"country": "United States",
"timezone": "America/New_York",
"status": "open | closed | pre-market | after-hours | lunch-break | holiday",
"localTime": "10:30:00 AM",
"nextEvent": "opens | closes | lunch | resumes",
"nextEventTimeMs": 1712678400000,
"nextEventLocal": "16:00",
"countdownMs": 19800000,
"regularHours": "09:30 - 16:00",
"holidayName": "Christmas Day",
"earlyClose": "13:00",
"earlyCloseName": "Christmas Eve"
}
]GET /api/status
Lightweight endpoint β status and countdown only.
curl https://bellhour.com/api/statusResponse Schema
[
{
"id": "nyse",
"status": "open",
"nextEvent": "closes",
"nextEventTimeMs": 1712678400000,
"countdownMs": 19800000,
"localTime": "10:30:00 AM"
}
]Embeddable Widget
Embed a live countdown widget on your site:
<iframe src="https://bellhour.com/embed/nyse" width="280" height="160" frameborder="0"></iframe>Available market IDs: nyse, nasdaq, lse, tse, hkex, sse, euronext, asx, tsx, nse, jse, krx
Usage
Rate LimitsNo authentication required. Responses are cached at the edge (10-30s).
CORSAll endpoints support cross-origin requests.
FormatAll responses are JSON with UTF-8 encoding.