Connect to Coinbase Data BETA#

You can connect to a Coinbase data source to get real-time trading prices including Bit Coin to U.S. Dollars, Ethereum to U.S. Dollars, and more.

You can query Coinbase ticker data, like the data shown below, in your application.

The video below and the steps below it demonstrate connecting to Coinbase.

Let’s connect to Coinbase.

Connecting to Coinbase#

  1. Go to Data Sources in the Console, by clicking Data Sources in the navigation.

    The Data Sources page appears.

  2. Click Create source. The Connect a Data Source form appears.

  3. Expand the Data Source menu and select Coinbase.

    Then click Next. The Coinbase connection fields appear.

  4. Specify your Coinbase connection by filling in the following fields.

    Source ID: A name for the data source.

    Dataset ID: Name of a dataset (new or existing) to populate with the streaming data.

    Description: Describe your source.

    URL: A URL to a Coinbase (defaults to the free Coinbase websocket). If you want to link to your personal account, please contact Support.

    Product ID: Currency pairs. For example, BTC-USD or ETH-USD. For a Coinbase product listing, see https://api-public.sandbox.pro.coinbase.com/products/. For each product ID, click the plus (+) sign and enter the ID.

    Tip

    If you want to process a product’s events (i.e., via rules), specify only that product’s ID.

    Here’s an example configuration:

  5. Use the Synchronous checkbox to indicate whether you want data written in asynchronously (default) or synchronously.

    Asynchronous (default): This is the fastest way to stream data. Apperate saves the data, queues it, and shortly therafter makes it available to query.

    Synchronous: With each write to Apperate, Apperate blocks until the data write is confirmed and is available to query.

  6. Click Create Connector, when you’re done configuring the connector. Apperate returns you to the Data Sources page and a message indicates that your connector is created.

    The connector’s status is PENDING until the connector has received the list of available streams from the data source.

  7. Click on the data source to open its details. When the source’s status is RECEIVED, the Streams menu appears.

  8. Select the ticker stream.

    The source status is READY and the Submit Stream button is enabled.

    Note

    ticker is currently the only supported Coinbase stream. Please contact Support if you’re interested in additional streams.

  9. Click Submit Stream to complete your connector configuration. A Start Connector button appears.

Starting Your Connector#

You can start and stop your connector from its details page (which you’re already at from the last step).

Note

You can access a data source’s details page from Data Sources by clicking on your data source’s name or its Manage button.

Click Start Connector to start data flowing from your data source. Your data source has the RUNNING status.

Your dataset’s Database page shows the data streamed into the dataset. You can get to the page by clicking the dataset name in the navigation under Your Datasets.

Tip

Apperate makes a best effort to derive a schema for your data. You can view the schema and modify it in the schema editor, available by clicking Edit for the dataset. Some changes, such as index changes, require re-ingesting data–this is best to do while the dataset is small.

Please see Updating a Dataset Schema for details.

Stopping Your Connector#

You can stop your connector from its details page.

Note

You can access a data source’s details page from Data Sources by clicking on your data source’s name or its Manage button.

In the connector details page, click Stop Connector to stop data flow. Your connector’s status is STOPPED.

You can start it again whenever you like.

Viewing Your API Documentation#

Note, your dataset has an auto-generated API and documentation. From your dataset’s page, click the Overview tab. The Overview appears.

Click Open Docs to view your dataset’s API.

You can query the REST API endpoint to get Coinbase data like this data below:

[
  {
    "best_ask": "28708.01",
    "best_ask_size": "0.17005923",
    "best_bid": "28706.63",
    "best_bid_size": "0.00009587",
    "high_24h": "28815.13",
    "last_size": "0.00355251",
    "low_24h": "28014.63",
    "open_24h": "28439.14",
    "price": "28708.01",
    "product_id": "BTC-USD",
    "sequence": 57267777618,
    "side": "buy",
    "time": "2023-03-22T16:58:29.949043Z",
    "trade_id": 512678288,
    "type": "ticker",
    "volume_24h": "19865.59373432",
    "volume_30d": "546031.10102793"
  },
  {
    "best_ask": "1807.27",
    "best_ask_size": "1.12676680",
    "best_bid": "1807.26",
    "best_bid_size": "0.12306491",
    "high_24h": "1823.8",
    "last_size": "0.47",
    "low_24h": "1781.4",
    "open_24h": "1818.07",
    "price": "1807.26",
    "product_id": "ETH-USD",
    "sequence": 43201759061,
    "side": "sell",
    "time": "2023-03-22T16:58:29.788400Z",
    "trade_id": 436795802,
    "type": "ticker",
    "volume_24h": "146305.08884488",
    "volume_30d": "5930625.89070654"
  },
  // ... more results
]

Congratulations! You’ve connected with Coinbase data.

What’s Next#

Filter on events from your data source and create alerts

Connect to Data via the API

Use the data in your apps

Provide rich data through views–joining data from multiple sources

Share access to data API endpoints