> 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/openfeed-api/streaming.md).

# Streaming API

High-performance API for real-time Level 1, Level 2 market depth, and other global exchange data.

Openfeed Streaming is a high-performance market data streaming service.

It connects your application to delayed and real-time Level 1 and Level 2 market depth. This API exchanges around the world.

Use the Streaming API when you need continuous, low-latency updates across a large symbol universe.

#### **How to Get Started with Streaming Openfeed API**:

{% stepper %}
{% step %}

### Select an SDK

JAVA, .NET, and GO are available for streaming by exchange. Python  is available for data science, ops, and analytics. TypeScript/JavaScript are available for front-end interface applications.&#x20;
{% endstep %}

{% step %}

### Choose an API

Streaming and REST APIs are designed to fit even the most demanding workflows.&#x20;
{% endstep %}

{% step %}

### Authentication

Once Barchart's Institutional Support Team provides your credentials, you can being using our APIs
{% endstep %}

{% step %}

### Metadata

Streaming API users will receive full metadata packets upon login. REST API users should review the metadata docs (see left navigation sidebar) to download all exchange-listed instrument profiles.
{% endstep %}

{% step %}

### Best Practices

Before you design your system and information architecture, visit our Best Practices guide. This will help you optimize for performance and stability
{% endstep %}

{% step %}

### Optimize Your Network Connection

You can request a dedicated cross-link connection or AWS PrivateLink when streaming by exchange across asset classes and global exchanges.  This can help reduce latency, the number of network hops, and bandwidth costs.
{% endstep %}

{% step %}

### Working with Service Types

The Streaming API can provide the following service types: `DELAYED`, `REALTIME`, and `SNAPSHOT`. When using the `SNAPSHOT` service type, update your subscription code snippet to the relevant `REAL_TIME_SNAPSHOT` or `DELAYED_SNAPSHOT` .&#x20;
{% endstep %}

{% step %}

### Working with Connection Types

Choose one of the four endpoints specifically optimized for real-time, delayed data delivery.&#x20;
{% endstep %}
{% endstepper %}


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://developer.barchart.com/openfeed-api/streaming.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
