CNBC All-in-One API avatar

CNBC All-in-One API

Pricing

Pay per event + usage

Go to Apify Store
CNBC All-in-One API

CNBC All-in-One API

Unofficial always-on REST API for live CNBC data: news feed, trending, breaking news, special reports, article body text, video with direct stream URL, TV schedule, market ticker banner, and real-time stock/bond/crypto quotes with symbol search. No account needed.

Pricing

Pay per event + usage

Rating

0.0

(0)

Developer

Romy

Romy

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

13 days ago

Last modified

Categories

Share

What does CNBC All-in-One API do?

CNBC All-in-One API is a REST endpoint for CNBC's live data — news feed, trending news & videos, breaking news, special reports, most-popular articles, article detail, video with a direct playable stream URL, today's live TV schedule, and a market index ticker banner — plus real-time quotes for stocks, indexes, bonds, crypto, and commodities with symbol search, per-symbol news, and fundamentals. All from a single always-on API powered by Apify Standby.

It talks directly to the same internal API the official CNBC Android app uses (webql.cnbcfm.com, quote.cnbc.com, marketdata.cnbc.com), reverse-engineered by live MITM capture against a real device — every endpoint below is a real persisted GraphQL query or REST call the app itself sends (captured live, never guessed). No CNBC account, no API key, no scraping setup — call the endpoint, get JSON back. Every endpoint works fully anonymously (confirmed by inspecting real request headers — no Authorization header, no cookie, no session token needed).

Why use CNBC All-in-One API?

  • Full article body text, no account needed/article returns real structured body content (paragraphs, links) for the large majority of CNBC's articles anonymously; only premium: true (Investing Club/Pro) pieces are gated
  • Real-time quotes for anything CNBC covers — stocks, indexes, bonds, crypto, commodities, futures, forex — one endpoint, no auth
  • Video with a direct stream URL/video returns a playbackURL you can hand straight to any HLS player, no scraping the video player page
  • Live TV schedule — what's on CNBC right now and what's coming up next
  • Market ticker banner — the DJIA/S&P 500/NASDAQ-style summary the app itself shows on its home screen
  • Symbol search → fundamentals pipeline — search a company name, get its internal id, pull 52-week/5-year/10-year highs and lows and period returns
  • Always-on — Standby mode means no cold start, responds in milliseconds
  • No account needed — every endpoint works fully anonymously
  • Use cases: financial dashboards, market monitoring bots, news aggregation, quote widgets, video/media pipelines

Endpoints

MethodPathDescription
GET/newsContent feed for one or more section ids
GET/trendingTrending news articles or trending videos
GET/breaking-newsCurrent breaking news alert / watch-live banner
GET/special-reportsSpecial reports feed
GET/most-popular"Most popular" articles rail, scoped to an article
GET/articleArticle detail, full body text included for non-premium articles
GET/videoVideo detail with a direct playable stream URL
GET/tv-scheduleToday's live TV schedule
GET/marketsMarket index ticker banner (DJIA/S&P 500/NASDAQ)
GET/quoteReal-time quote for any symbol (stocks, indexes, bonds, crypto, ...)
GET/quote-searchSearch for a symbol by company name or ticker
GET/quote-newsNews related to a specific symbol
GET/fundamentals52-week/5-year/10-year highs and lows, period returns

How to use CNBC All-in-One API

  1. Open this Actor's Standby API URL (shown on the Actor's page, under the API tab) — https://romy--cnbc-all-in-one-api.apify.actor.
  2. Call any endpoint — for example:
    curl "https://romy--cnbc-all-in-one-api.apify.actor/news?ids=105230142&count=10"
    curl "https://romy--cnbc-all-in-one-api.apify.actor/trending?type=news"
    curl "https://romy--cnbc-all-in-one-api.apify.actor/quote?symbols=AAPL,.DJI,US10Y"
    curl "https://romy--cnbc-all-in-one-api.apify.actor/quote-search?symbol=TESLA"
    curl "https://romy--cnbc-all-in-one-api.apify.actor/video?vcp_id=7000422401"
    curl "https://romy--cnbc-all-in-one-api.apify.actor/tv-schedule"
    curl "https://romy--cnbc-all-in-one-api.apify.actor/markets"
    Every call needs your Apify API token, either as Authorization: Bearer <token> or ?token=<token> — the Actor's page API tab has a ready-to-copy version with your token filled in.
  3. Read the JSON response — no setup required.

Parameters

GET /newsids required.

ParamTypeExampleMeaning
idsint[], repeat105230142One or more section ids (repeat ids= for multiple). 105230142 is the app's default Home feed.
countint, default 3030Assets per section

GET /trendingtype required.

ParamTypeExampleMeaning
typeenumnewsnews | videos
countint, default 1313Items to return — type=news only
start_periodstring, default 2h2hTrending time window — type=videos only. App's own default, not a confirmed enum
sort_bystring, default engaged_minutesengaged_minutesRanking metric — type=videos only. Same caveat as start_period

GET /breaking-news

ParamType, defaultExampleMeaning
productstring, webwebProduct surface — only web confirmed live

GET /special-reports

ParamType, defaultExampleMeaning
page_sizeint, 3030Reports to return

GET /most-popularid required.

ParamTypeExampleMeaning
idint108352201Article id to scope the "most popular" rail to

GET /articleid required.

ParamTypeExampleMeaning
idint108351154Article id. Full body text unless the article is premium: true (see Data notes)

GET /videovcp_id required.

ParamTypeExampleMeaning
vcp_idint7000422401The video's numeric vcpID

GET /tv-schedule — no parameters.

GET /markets

ParamType, defaultExampleMeaning
idint, 100769431100769431Banner preset — default is the app's "US" home-screen banner
security_countint, 33Securities to include

GET /quotesymbols required.

ParamTypeExampleMeaning
symbolsstringAAPL,.DJI,US10Y,BTC.CM=Comma-separated symbols. Real formats: plain ticker (AAPL), index with leading dot (.DJI), bond (US10Y), crypto suffixed .CM=, futures prefixed @ (@CL.1)

GET /quote-searchsymbol required.

ParamTypeExampleMeaning
symbolstringTESLACompany name or partial ticker

GET /quote-newssymbol required.

ParamTypeExampleMeaning
symbolstring.DJISymbol to fetch news for
sectionstring106983828Optional section id — confirmed real param, exact effect not fully characterized

GET /fundamentalswsod_issue required.

ParamType, defaultExampleMeaning
wsod_issuestring599362CNBC's internal security id (NOT the ticker) — get it from /quote-search//quote's issueId
sectionstring, returnsreturnsOnly returns confirmed live; other values may exist but aren't validated

Output

Every response is returned directly over HTTP — this Actor does not write to an Apify dataset. Responses pass through CNBC's own real (deeply nested) GraphQL/REST data. Real responses (trimmed to the most relevant fields for readability):

GET /quote?symbols=AAPL:

{
"success": true,
"quote": {
"FormattedQuoteResult": {
"FormattedQuote": [
{
"symbol": "AAPL",
"name": "Apple Inc.",
"last": "313.36",
"changetype": "DOWN",
"change": "-3.47",
"change_pct": "-1.10%",
"exchange": "NASDAQ"
}
]
}
}
}

GET /article?id=108351154 (a regular, premium: false article — full body text, no auth):

{
"success": true,
"article": {
"id": 108351154,
"premium": false,
"body": {
"isAuthenticated": false,
"content": [
{
"tagName": "div",
"children": [
{
"tagName": "p",
"children": [
"Americans love ",
{
"tagName": "a",
"attributes": { "href": "https://www.cnbc.com/sport/" },
"children": ["sports"]
},
" — so much so that many are spending hundreds or thousands of dollars a year to show their fandom."
]
}
]
}
]
}
}
}

GET /video?vcp_id=7000422401:

{
"success": true,
"video": {
"headline": "Watch CNBC's full interview with Treasury Secretary Scott Bessent",
"duration": 1148,
"playbackURL": "//cnbcawsmpvod.akamaized.net/out/v1/6629fb.../master.m3u8",
"section": { "shortestHeadline": "Squawk on the Street" }
}
}

GET /tv-schedule:

{
"success": true,
"schedule": {
"currDate": "2026-08-20",
"live": { "shortTitle": "Closing Bell", "startTimeFormatted": "03:00 pm", "endTimeFormatted": "04:00 pm" }
}
}

GET /fundamentals?wsod_issue=599362:

{
"success": true,
"fundamentals": {
"599362": {
"Ranges": [{ "Name": "52-Wk Hi/Lo", "HighValue": "53289.30", "LowValue": "43340.68" }],
"Values": [{ "Name": "FiveDayReturn", "Value": "0.23%" }]
}
}
}

Data notes

  • Two separate GraphQL backends are involved: webql.cnbcfm.com (the native app's own backend, powers /news, /trending, /breaking-news, /special-reports, /video, /tv-schedule, /markets, /quote-search, /quote-news) and webql-redesign.cnbcfm.com (the website's backend, powers /article and /most-popular — reachable from inside the app's in-app article browser). Both use Apollo-style persisted queries (fixed sha256 hashes) with no auth.
  • /article returns full body text for regular articles, no auth needed. Only premium: true articles (Investing Club / CNBC Pro pieces) come back with an empty body.content array when unauthenticated — that paywall is server-enforced, not a client-side UI restriction. Confirmed live across an 11-article sample: 9 of 11 (premium: false) returned full structured body text; the 2 premium: true ones were empty. Check the response's premium field to know which case you got.
  • /quote's symbol formats are real, not guessed: confirmed live across stocks (AAPL), indexes with a leading dot (.DJI, .SPX), bonds (US10Y, US30Y), crypto suffixed .CM= (BTC.CM=), and futures/commodities prefixed @ (@CL.1 for crude oil) — the same endpoint handles all of them.
  • /video's playbackURL is a direct Akamai HLS master playlist, confirmed playable with no signature or expiring token in the URL.
  • /trending's start_period/sort_by (videos only) are the app's own fixed defaults — no in-app control to change them was found, so only one real value is confirmed for each; they're passed through as-is rather than validated against a guessed enum.
  • The app has no separate article/content search — its single search icon (present on every News tab, including Home) always opens the same stock/symbol search (quoteSearch), confirmed live. /quote-search covers 100% of the app's search feature; there's no /search endpoint here because there's nothing further to wrap.
  • No pagination exists for /news, /trending, or /special-reports. Confirmed by scrolling all the way to the bottom of the app's Home feed, Trending Now, and Special Reports screens repeatedly — sections/trendingNews/specialReports are always called with the exact same count/pageSize, never an offset or cursor. These are fixed-size bounded lists in the app itself, not infinite-scroll feeds — count/page_size on those endpoints is the only real control, not a partial implementation.
  • The CNBC app's production build ignores Android's system-wide HTTP proxy setting and only trusts the OS + user certificate store — unlike some apps in this series, capturing its traffic needed extra work beyond the usual TLS-validation bypass used elsewhere across this developer's actors.

Pricing

Pay-per-event, billed on each successful call. See the Actor's Pricing tab for current rates.

Known limitations

  • /article only withholds body text for premium: true articles (Investing Club / CNBC Pro) — that paywall is enforced server-side even for anonymous requests, and this Actor does not support logging into a CNBC account to get around it. Regular articles are unaffected — full body text either way.
  • /fundamentals's upstream (marketdata.cnbc.com) showed intermittent 503s during development, unrelated to request format — a 502 from this endpoint may just reflect a transient issue on CNBC's side, worth retrying.
  • /fundamentals's section parameter is only confirmed with the value returns; other section values common on similar financial APIs (profile, estimates, financials) may be real but weren't captured live, so aren't documented as guaranteed to work.
  • This is an unofficial, reverse-engineered integration, not affiliated with or endorsed by CNBC or NBCUniversal. Behavior may change if CNBC changes its API.

Found a bug or have a feature request? Use the Issues tab on this Actor's page.