Services & customers
Sections ↑Barchart supplies market-data infrastructure for firms building trading applications, research systems, charts and information services. Openfeed is its unified streaming and snapshot layer. These services can sit inside a broker’s technology stack without making Barchart the broker, execution venue or trading counterparty. The practical starting point is the data workflow and permitted audience.[2]
Data-service choices
| Service | Delivery and use | Scope to establish |
|---|---|---|
| Openfeed streaming | Continuous L1/L2 updates using the Openfeed protocol and supported SDKs. | Real-time or delayed service, instruments and authorised depth.Source 7 |
| Openfeed snapshot REST | Request/response data from openfeed.aws.barchart.com. | Account entitlements and JSON/XML response selection.Source 8 |
| OnDemand | Query APIs for prices/history, technicals, fundamentals, corporate events, news and FX forward curves. | Required endpoints and licensed application use.Source 28 |
| Market Replay / Enterprise history | Historical APIs plus bulk delivery through S3 or SFTP. | Dataset, retention depth, frequency and file/API workflow.Source 3 |
Coverage spans exchange-traded markets, OTC data and benchmarks. The documented inventory includes FX, equities, futures, options, crypto, indices, rates and physical-commodity data, including forward curves. Availability can be real time, delayed, end of day or next day. Depth is venue-dependent: the exchange list gives L2 futures examples including CME, ICE, Eurex and SGX. A broad catalogue is not an entitlement to every venue or data level.[3]
OnDemand’s reference catalogue is useful for separating a price-feed project from enrichment work. It lists corporate actions, financial statements, SEC filings, technical indicators and specialised futures/options services alongside quotes and history. Endpoint selection therefore affects the fields, update cadence and interpretation a broker must implement; a single “market data” line in a procurement specification leaves substantial scope unresolved.[28]
Platforms & integrations
Sections ↑Openfeed uses Google Protocol Buffers. Its protocol files separate market messages, instrument definitions and client/server control, allowing generated encoders and decoders in supported languages. That division matters operationally: an application must process session and instrument information as well as prices. A decoder that reads trade fields alone is insufficient for maintaining a correctly interpreted live feed.[6]
Connection choices
| Route | Configuration | Operational boundary |
|---|---|---|
| Public endpoints | Separate demo, delayed, real-time and REST hostnames. | Select the correct environment and entitlement; these are not four interchangeable failover replicas.Source 10 |
| AWS PrivateLink | Obtain Barchart’s endpoint-service name, create the VPC endpoint and configure routing/security groups. | Barchart approval activates access; the connection stays on the AWS private network.Source 12 |
| Dedicated cross-connect | Deploy in a shared colocation facility; arrange the physical connection and port configuration. | Coordinate with Barchart and the facility provider, then validate the feed.Source 13 |
Subscriptions can select individual symbols or a full exchange feed. Full-exchange delivery includes definitions and metadata as well as market updates and requires account configuration through Institutional Support. Barchart recommends Java, .NET or Go for a primary full-data pipe, with Python suited to analytics/ETL and JavaScript to dashboards; any supported SDK can handle a limited-symbol use case. These are workload recommendations, rather than a guarantee for a particular deployment.[9]
Openfeed sends instrument metadata at initialisation and does not repeat every descriptive field with each update. Consumers need local definitions, including price formatting. REST users require a separate metadata workflow and local reference tables. The REST documentation supports JSON/XML selection and currently labels its OpenAPI specification “coming soon”; the live interface documentation should be distinguished from an available machine-readable specification.[15][8]
The developer overview suggests streaming for universes above roughly 2,000 instruments and REST for smaller query-driven needs. This is design guidance, not a hard account limit. Continuous observation, query frequency, fan-out and application state can make streaming appropriate even with fewer symbols. The intended workload should be agreed during sizing.[1]
Pricing & commercial terms
Sections ↑OnDemand offers custom packages for different business sizes, without a public price in the reviewed product overview. Openfeed’s access process uses a data consultant to establish the application, coverage, connectivity and licensing. The commercial enquiry should describe whether data is for internal use, client display, a subscription product, downloads or historical analysis.[26][4]
Commercial scope to specify
| Dimension | What changes the requirement | Evidence-led procurement point |
|---|---|---|
| Live data | Exchange, instrument universe, real-time/delayed service and L1/L2. | Ask for the exact permissions attached to the supplied credentials.Source 14 |
| Distribution | Internal workflow, client-facing display, subscription or downloadable data. | State the audience and reuse model when requesting the licence.Source 4 |
| Historical delivery | API retention and deeper bulk history. | Price the required API and S3/SFTP history separately in the offer.Source 21 |
| Private connectivity | PrivateLink or a physical cross-connect. | Identify connection provisioning and third-party infrastructure charges in the proposal.Source 12 |
No enterprise fee schedule or executed customer agreement was established from the accessible official material. The signed offer therefore needs to settle recurring charges, any exchange charges, renewal and termination, and rights to retain or redistribute stored data. Website access terms are addressed separately below; they are not a substitute for an enterprise data licence.[29]
Implementation & delivery
Sections ↑From demonstration to a maintained feed
| Step | Documented mechanics | Implementation consequence |
|---|---|---|
| Start in demo | New Openfeed users begin in the demonstration environment and move after onboarding. | Production exchange access must be enabled; demo credentials can return insufficient privileges.Source 11 |
| Initialise a symbol | Subscription response, instrument definition and initial market snapshot precede trade updates. | Establish current state before applying incremental messages.Source 16 |
| Choose snapshot behaviour | REAL_TIME_SNAPSHOT and DELAYED_SNAPSHOT send periodic updates at a configurable interval. | Currently symbol subscriptions only; this differs from a one-off REST request.Source 17 |
| Backfill observations | Tick requests cover one 24-hour day per commodity/maturity; default availability is 30 days, configurable by support up to 365. | Use Enterprise S3/SFTP delivery for deeper history and plan request windows.Source 21 |
OnDemand requires HTTPS and an API key; its quick start says to keep the key out of browser-side code and public repositories. Market Replay similarly documents backend/job-runner use with credentials held in environment variables. Where an API carries credentials in request parameters, application and proxy logs need corresponding secret handling. This security design belongs in the integration, not only in a later production checklist.[27][20]
OnDemand’s overview describes multiple US AWS data centres and Equinix facilities for physical backup and low-latency requirements. That is a product-level infrastructure description, not a promise that a particular feed is hosted in a chosen jurisdiction or that all endpoints share the same recovery arrangement.[26]
Support & contacts
Sections ↑Institutional Support handles Openfeed account and exchange configuration. For subscription problems, the FAQ asks for the username, endpoint, requested exchange/service type and complete subscription response. This distinguishes an entitlement issue from a connection failure. The public helpdesk supplies ticket submission and a knowledge base; response and restoration commitments need to be established for the selected enterprise service.[5][33]
Barchart’s operational guidance says the server sends a heartbeat every ten seconds. Monitor message timestamps, queues and processing lag as well as connection status: a connected consumer can still be stale. Overlapping logins with the same username may terminate both sessions, so reconnect logic should use controlled retries. If backlog becomes unusable, the guidance is to disconnect, clear stale work, reconnect and resubscribe, with historical delivery available for backfill. These are documented integration practices, not a measured uptime result.[18]
Historical-data troubleshooting starts with endpoint enablement, available date range and timezone. Tick record limits may be exceeded to include records sharing a matching second, so downstream code should not assume the requested maximum is an absolute payload cap. CSV layouts also vary by query. Logging the query type and parsing contract is more useful than treating every empty or unexpected response as an outage.[25]
Official contact routes
Scope Data-consultant discussion of coverage, connectivity and licensing.
Scope Published support-desk submission route.
Permissions & service scope
Sections ↑A requested real-time subscription may be downgraded to delayed data if the account has only delayed permission; unavailable access can return INSUFFICIENT_PRIVILEGES. The application should inspect the granted response instead of assuming the request succeeded at the requested timeliness. Barchart’s user-settings interface exposes the exchanges and service types associated with a username, providing another configuration check.[5][14]
OnDemand’s overview expressly restricts the documented data to internal use and prohibits redistribution. It also asks customers to avoid personally identifiable information and use meaningless unique user identifiers. Client display, downloads and onward supply therefore need an expressly agreed licence rather than an assumption based on API access.[26]
The Websol website terms permit personal, noncommercial use and require prior written consent from Barchart and/or its data providers for reproduction or distribution. They describe website registration, cookies and personal information. Those provisions should not be read as an enterprise processing agreement or a commitment to export and erase a brokerage’s complete stored market-data estate. The customer agreement must define that service-specific responsibility.[30]
Operator & evidence
Sections ↑The public Websol information agreement names Barchart.com, Inc. / AgriCharts and describes information owned by or licensed to it. Barchart’s own publisher biography on Nasdaq identifies Chicago as its headquarters and dates its website origins to 1995.[29][31]
Barchart combines institutional data services with public market-information and media properties. A Barchart-issued announcement dated 11 June 2025 describes Plus500 sponsorship of its retail futures pages and related educational placements. That commercial arrangement illustrates the media side of the business. It is separate from the enterprise feed licence and does not make Barchart the clearing broker or confer its partner’s financial permissions.[32]
- Operator
- Barchart.com, Inc.
- Service scope
- Institutional real-time, delayed, snapshot and historical market data, with dataset-specific access and distribution permissions.
- Customer types
- Brokerages; Market makers; Financial institutions; Application developers; Research teams; Media companies
- Delivery
- API; Hosted
- Pricing publication
- Quote only
- Platforms
- Openfeed; OnDemand; Market Replay; Enterprise historical delivery
- Pricing scope
- Custom data packages and enterprise scope; no public institutional tariff established.
- Implementation
- Demo onboarding, entitled production credentials, instrument metadata and streaming or query integration.
- Support
- Institutional Support for Openfeed configuration plus the published helpdesk; purchased service terms define incident commitments.
- Permissions and regulatory scope
- Market-information technology and data licensing; no brokerage or execution permission is implied.
Provider metadata checked 20 Oct 2026Source 31Source 29Source 4Source 2Source 3Source 13Source 7Source 26Source 11Source 33Source 1Source 28
Additional information
Sections ↑Historical-series choices that affect results
| Setting | Documented behaviour | Why it matters |
|---|---|---|
| Nearest versus continuation | Nearest follows the closest expiry; continuation follows the same contract month across years. | The two series answer different research questions.Source 23 |
| Equity adjustments | Set both splits=false and dividends=false to request raw prices. | Switching off one adjustment alone does not produce the fully unadjusted series.Source 23 |
| Futures back adjustment | Default is false; enabled adjustment is anchored to the current date, even when the requested series ends earlier. | Preserve query settings when reproducing an old analysis.Source 23 |
| Aggregated volume | Volume is averaged unless summation is requested. | Weekly/monthly aggregation may need an explicit volume choice.Source 23 |
Minute history supplies OHLCV bars with a configurable interval, defaulting to one minute. The documentation uses Eastern Time for equities and Central Time for futures/FX; start boundaries are inclusive and end boundaries exclusive. Preserve the market timezone and interval with the exported dataset before aligning prices with a broker’s execution timestamps or a UTC reporting system.[22]
Market Replay separates trade ticks from bid/ask queries, with a dedicated quote route and query type. Historical quote observations should therefore be selected explicitly when analysing spread or execution context; a trade-only extract answers a different question. The one-day request window also needs to be preserved when assembling longer histories.[21]
Openfeed depth subscriptions build a local order book from an initial marketSnapshotDepthPriceLevel and subsequent add, modify and delete updates. Maintaining that state is the consumer’s responsibility. The documented price-level feed provides market information; it is not an order-entry or execution interface. This distinction matters when a broker combines displayed depth with a separate routing system.[19]
Corporate-event queries return split, dividend and earnings records. Omitting all event flags requests all available event types. Unknown symbols are ignored, and a query can have no row when no matching event exists. An empty result consequently needs symbol and date-range validation before it is interpreted as proof that no corporate action occurred.[24]
Sources & further reading
- Openfeed developer overview Barchart · Accessed 20 Oct 2026
- Openfeed platform features Barchart · Accessed 20 Oct 2026
- Available exchanges and datasets Barchart · Accessed 20 Oct 2026
- Requesting Openfeed access Barchart · Accessed 20 Oct 2026
- Openfeed FAQ Barchart · Accessed 20 Oct 2026
- Core protocols Barchart · Accessed 20 Oct 2026
- Openfeed streaming API Barchart · Accessed 20 Oct 2026
- Openfeed snapshot REST Barchart · Accessed 20 Oct 2026
- Subscribing to market data Barchart · Accessed 20 Oct 2026
- Server endpoints Barchart · Accessed 20 Oct 2026
- New Openfeed users Barchart · Accessed 20 Oct 2026
- AWS PrivateLink Barchart · Accessed 20 Oct 2026
- Dedicated connections Barchart · Accessed 20 Oct 2026
- Openfeed user settings Barchart · Accessed 20 Oct 2026
- Instrument metadata Barchart · Accessed 20 Oct 2026
- Openfeed data flow Barchart · Accessed 20 Oct 2026
- Streaming snapshot types Barchart · Accessed 20 Oct 2026
- Openfeed best practices Barchart · Accessed 20 Oct 2026
- Market-depth order book Barchart · Accessed 20 Oct 2026
- Market Replay authentication Barchart · Accessed 20 Oct 2026
- Market Replay tick queries Barchart · Accessed 20 Oct 2026
- Market Replay minute queries Barchart · Accessed 20 Oct 2026
- End-of-day query parameters Barchart · Accessed 20 Oct 2026
- Market Replay event queries Barchart · Accessed 20 Oct 2026
- Market Replay troubleshooting Barchart · Accessed 20 Oct 2026
- OnDemand product overview Barchart · Accessed 20 Oct 2026
- OnDemand quick start Barchart · Accessed 20 Oct 2026
- OnDemand API reference Barchart · Accessed 20 Oct 2026
- Websol information user agreement Barchart · Accessed 20 Oct 2026
- Websol terms and privacy notice Barchart · Accessed 20 Oct 2026
- Barchart publisher biography Barchart / Nasdaq · Accessed 20 Oct 2026
- Barchart–Plus500 sponsorship announcement Barchart via PR Newswire · Accessed 20 Oct 2026
- Barchart support centre Barchart · Accessed 20 Oct 2026
This profile reports dated public information, including provider-published services and terms. It does not independently test or guarantee service delivery, integrations or performance. Inclusion is not an endorsement. Permissions and protections apply only to the named legal entity, service and client category; check the current official records and your contract.