Please be aware that you are viewing our bleeding edge unstable documentation. Unless you wanted to view the bleeding edge (and possibly unstable) documentation, we recommend you use our stable docs.

Go to Ably's stable canonical documentation »

I know what I'm doing, let me see the bleeding edge docs »

You are viewing our bleeding edge unstable documentation. We recommend you use our stable documentation »
Fork me on GitHub

Overview

What is API Streamer?

API Streamer makes it easy for developers to publish realtime APIs (also known as event-driven APIs or streaming APIs).

Built on Ably’s global Data Stream Network, API Streamer provides an additional layer of tooling and features for deploying streaming data to the Ably network to manage data streams, and distributing those data streams to developer teams at third party organizations through realtime push and pull subscription APIs.


Ably API Streamer

Our API Streamer docs are currently in beta. While we are working hard to improve them, please feel free to reach us out in case of any queries.

Why use the API Streamer to build realtime APIs for your streaming data?

When organizations decide to offer their data via APIs to developers, they typically start by building REST APIs. REST APIs are prolific, in a large part due to standardization allowing organizations to simply communicate with each other, synchronously, following a request/response pattern. To date, REST APIs have served developers well and are largely responsible for the catalyst that drove the API economy to emerge.

However, as organizations are increasingly moving towards event-driven architectures, and need to deliver realtime experiences to their end-users, the need for realtime business-to-business data exchange is rapidly emerging. REST APIs are still mostly being used to solve realtime data sharing requirements in spite of their design not being suitable for streaming data. As a result, REST APIs are frequently being subjected to excessive polling, infrastructure is becoming overloaded, and the latencies for realtime data delivery is high.

Many early adopter organizations are addressing this problem by building their own realtime APIs, typically based on WebSockets, WebHooks or a custom streaming HTTP protocol. These organizations are realizing that delivering realtime data at scale, with low latency, across the current and emerging protocols, with the necessary tooling to manage these data flows, is a significant upfront and ongoing engineering undertaking.

This is the problem that the API Streamer addresses. Developers can focus on the data that needs to be shared, whilst Ably provides ready-built realtime API management tools, a global low latency and reliable distribution network, protocol interoperability and limitless scale.

Here’s a look at the increasing engineering effort required with time and growing customers, when building a realtime API from scratch vs when using the API Streamer:


API Streamer vs building a realtime API

Understanding the working of the API Streamer

Ably’s established global Data Stream Network offers a simple API to developers who publish and receive realtime data using pub/sub channels. Ably is a serverless messaging platform that offers unparalleled reliability, latency, security and streaming at any scale, globally.

API Streamer is conceptually a management layer, built on top of the DSN, for data producers to share realtime data, over any number of push and pull subscription protocols, with any number of data consumers.

Due to the underlying pub/sub pattern in action, the API Streamer allows data producers to be decoupled from data subscribers, offloading the engineering complexity involved with scale, interoperability and distribution via the Ably network. Whilst Ably ensures producers and consumers are technically decoupled, producers retain complete control over their data with API Streamer dashboards, instrumentation, reporting and monetization features.

The Data Producer

Data producers are typically organizations or developers who use the API Streamer to distribute their realtime data streams with other developers. Data producers publish their data over channels to the Ably DSN, and using access control lists that are configurable within the API Streamer dashboards they can manage who has access to their data. For example, a train company may publish live train information on a channel in one their Ably apps, and using the API streamer, allow developers to subscribe to this data via the Ably platform. Developers may, for example, elect to have this data pushed to them via WebSub, or subscribe to this data directly on their mobile devices.

API Streamer ensures data producers are technically decoupled from data consumers, thus offloading all the engineering complexity required to stream data over realtime APIs.

Learn more about Producers and distributing data using the API Streamer.

The Data Consumer

Data consumers are typically organizations or developers, who have been given access to one or more data streams, from one or more data producers. The consumer, using their API Streamer dashboard, can configure how they want to consume these data streams.

Ably supports two models for subscribing to streams of data:

Learn more about Consumers and subscribing to data using the API Streamer.

Tutorials

We are working on step-by-step tutorials and video walk-throughs to help you get started with the API Streamer quickly. Get in touch if you need help in the meantime.

Next up

You are currently in the overview page of the API Streamer documentation. If you’d like to try out the API Streamer, you can read more about:


Back to top