dfuse Streaming API for EOS

Build your project on EOS with the most powerful streaming API to provide the best experience to your users

Alpha Program

Join the most exclusive dapp developers community to build better and faster applications on blockchain

Build the next generation dapps

In a real-time application era, developers deserve the same standard on blockchain that they are used to having on the Web

Connect to the WebSocket endpoint

First, request your API key – it’s a JWT.

You can stream the EOS Mainnet, CryptoKylin or Jungle 2.0.

Note The examples here uses this ws CLI client. JSON needs to be entered in a single line if you follow along here.

Important The Origin header must be present when initiating the request, otherwise a 403 Forbidden error is returned by the server. See Origin header requirements section of the documentation for more details.

$ ws -o "https://examples.dfuse.io" "wss://mainnet.eos.dfuse.io/v1/stream?token=eyJhbGc...s8g"

Send a request

`get_actions` request sets up a listener for actions matching the filter criteria. Other types of requests can be found here.

{
  "type": "get_action_traces",
  "listen": true,
  "data": {
    "account": "eosio.token",
    "action_name": "transfer",
    "receiver": "11111dfuseio"
  }
}

Receive streaming responses

Responses contain detailed traces of events as they happen on the blockchain. 

{
  "type": "action_trace",
  "data": {
    "block_num": 14934816,
    "block_id": "00e3...6268",
    "trx_id": "e7d6...d75f",
    ...
    "trace": {
      "receipt": { ... },
      "act": {
        "account": "eosio.token",
        "name": "transfer",
        "authorization": [
          ...
        ],
        "data": {
          "from": "deathstarcom",
          "to": "11111dfuseio",
          "quantity": "5.0000 EOS",
          "memo": "It works!"
        }
      }
    }
  }
}

Features

Streaming API of actions

  • Filter on attributes like sender, receiver…
  • Detailed RAM usage of an action
  • Deferred transactions produced by each action
  • State changes produced by each action

 

Capacity to start from past blocks and continue in real-time

  • The API can process the whole chain history in one command, if needed
  • Gracefully handle disconnections, reconnect with the last block number seen, and continue without missing a beat

 

Streaming API of changes to tables

  • Filterable by account, table, scope and/or primary key
  • Notification for transactions signed by a user
  • Including an initial, consistent table snapshot
  • Snapshot of all the balances for a given user with deltas and changes

A Developer-First Solution

Built by the team behind EOS Canada, dfuse offers state of the art APIs to build next-generation dapps

Highly Responsive

Finally a reliable streaming API to support applications built on top of a fast blockchain like EOS.

Robust Security

Build your project on EOS with fully protected data provided through an API with enterprise-grade security.

Powerful API

Provide blockchain information with the flexibility and consistency of the best database.

Get started with a free dfuse streaming API account

During the beta period, we reserve the right to limit usage of certain features, volume of data or concurrent connections. At any time, you can ask us for high privilege keys.