> For the complete documentation index, see [llms.txt](https://developer.barchart.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.barchart.com/getting-started/faq.md).

# FAQ

### Getting access

<details>

<summary>How do I request Openfeed access?</summary>

Complete the [Contact Us form](https://www.barchart.com/solutions/contact). Include your use case, application audience, and historical-data requirements. A Data Consultant will recommend coverage, connectivity, and licensing.

</details>

<details>

<summary>Do new users start in demo or production?</summary>

New users start on the demo environment. Use `demo.openfeed.barchart.com` with demo credentials. Production exchange subscriptions are unavailable until onboarding is complete.

</details>

<details>

<summary>How do I check my exchange and service permissions?</summary>

Open `https://www.ddfplus.com/getUserSettings.php?username={user}`. Replace `{user}` with your Openfeed username. The response lists enabled exchanges and service permissions.

</details>

### Connecting to Openfeed

<details>

<summary>Which endpoint should I use?</summary>

Choose the endpoint for your workflow:

* `demo.openfeed.barchart.com` — trials, development, staging, and onboarding.
* `openfeed-delayed.aws.barchart.com` — delayed streaming data.
* `openfeed-realtime.aws.barchart.com` — real-time streaming data.
* `openfeed.aws.barchart.com` — Snapshot REST queries.

See [Server Endpoints](/getting-started/server-endpoints.md) for SDK connection examples.

</details>

<details>

<summary>Should I use Streaming, Snapshot REST, or both?</summary>

Use [Streaming API](/openfeed-api/streaming.md) for continuous updates. Use [Snapshot REST API](/openfeed-api/snapshot-rest.md) for request-response workflows. Combine them when your application needs both live updates and point-in-time queries.

</details>

<details>

<summary>Which SDK should I choose?</summary>

Use Java, .NET, or Go for full exchange feeds. These SDKs suit sustained throughput and production feed handlers. Use Python for analytics and ETL. Use TypeScript or JavaScript for dashboards and browser applications.

See [Subscribing to Market Data](/getting-started/subscribing-to-market-data.md) for subscription guidance.

</details>

### Subscriptions and data

<details>

<summary>What is the difference between symbol and exchange subscriptions?</summary>

A symbol subscription streams only requested instruments. It suits smaller universes and user-facing applications. An exchange subscription streams the full exchange feed, including instrument metadata. It suits market-data ingestion services.

Exchange subscriptions require credential configuration. Contact Barchart Institutional Support before using them.

</details>

<details>

<summary>Why is my real-time request delayed or rejected?</summary>

Your credentials govern available service levels. Openfeed may downgrade `REAL_TIME` to `DELAYED`. It rejects unavailable services with `INSUFFICIENT_PRIVILEGES`. Confirm permissions before connecting.

Delayed data usually arrives 10 to 15 minutes after real-time. Exchange rules determine the exact delay.

</details>

<details>

<summary>Can I control how often updates arrive?</summary>

Yes. Request a streaming snapshot service when periodic updates meet your needs. Set the interval in the subscription request. See [Streaming Snapshot Types](/getting-started/streaming-snapshot-types.md).

</details>

<details>

<summary>Which updates can I include in a subscription?</summary>

Choose the data types your application needs. Openfeed supports trades, quotes, participant quotes, market depth, cumulative volume, and OHLC updates. Review [Subscription Types](/getting-started/subscription-types.md) for details.

</details>

<details>

<summary>How do I know which exchanges are available?</summary>

Review [Available Exchanges](/getting-started/available-exchanges.md) for coverage. Then verify that your account has the required exchange permission in User Settings.

</details>

### Symbols and metadata

<details>

<summary>How do I obtain instrument metadata for streaming data?</summary>

Openfeed returns `instrumentResponse` and `instrumentDefinition` messages when a subscription starts. Exchange subscriptions provide metadata for every instrument on that exchange. Store these definitions before processing market-data updates.

See [Metadata](/getting-started/metadata.md) for message examples.

</details>

<details>

<summary>Does Snapshot REST return instrument metadata automatically?</summary>

No. Snapshot REST is query-based. Build a local instrument profile from the metadata endpoints before issuing market-data queries. The [Metadata](/getting-started/metadata.md) guide describes this workflow.

</details>

<details>

<summary>Where can I get help with an exchange subscription or permission issue?</summary>

Contact Barchart Institutional Support. Include your username, endpoint, requested exchange, service type, and the complete subscription response. This information speeds up diagnosis.

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://developer.barchart.com/getting-started/faq.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
