Top keywords and use cases for your API, 50-60 chars

Introduction

To handle the dynamic nature of data, it is essential to have a continuous data stream to ensure that partner applications stay relevant and updated. Similar to a firehose in the physical world which provides a constant flow, the Cisco Spaces Firehose API constantly provides a steady stream of real-time data to a large number of subscribers simultaneously.

The amount of data streamed may vary with spikes and lows, but the data continuously flows through the Cisco Spaces Firehose API until it is processed. After the data is processed, it can be visualized, published, and converted to graphs in real time to suit consumer business needs.

Cisco Spaces Firehose API is an async API. This document provides information on how to fetch Cisco Spaces data using Cisco Spaces Firehose API in a Cisco Spaces partner application. This document covers the different channels available as part of the Cisco Spaces Firehose API to receive data from Cisco Spaces as well as details the events and the data model for the events supported by Cisco Spaces.

Advantages

Cisco Spaces Firehose API offers the following advantages of getting real time data data in your Cisco Spaces partner application:

  • The API is designed from ground up to scale for cloud.
  • A single channel supports multiple events. Use the Cisco Spaces partner application to specify the types of events required.
  • The API has very low latency and can be used to support real-time use cases.
  • A single channel carries information for all the customers that are sharing data with your application. There is no need to set up and manage separate connections for each customer.
  • The API supports sending both JSON data and Protocol Buffers (protobuf) objects.
    • JSON is easy to work with, and can be directly consumed by most platforms today.
    • Protocol Buffers (developed and open sourced by Google Inc.) is language neutral, binary format that optimizes the bandwidth used and allows faster processing.
  • Cisco Spaces Firehose API push channels are easy to set up and run if you are already on Amazon AWS, Google Cloud or Microsoft Azure. Just provide credentials and end-point details and start receiving data immediately.
  • Cisco Spaces Firehose API pull channels are designed for easy implementation in your application, and has several advantages over a Webhook type integration.
  • It is designed to handle high volume of events efficiently. Events are carried over a single pool of persistent connections significantly reducing connection overheads.
  • Pull channels allow resuming after a short period without any loss of data. This is particularly useful for system upgrades and short outages without loss of data.
  • The number of connections can be optimized based on the volume of events being received.
  • It also supports HTTP/2. HTTP/2 has lower overheads than HTTPx
  • It supports production, sandbox, and staging authentication tokens. This allows you to test and verify the next update to your application without disrupting data flowing to your production instance.

Push and Pull Channels

Cisco Spaces Firehose API supports the following types of API channels:

  • Push: Cisco Spaces starts transmitting the data continuously through the API channels immediately after the configurations are done.
  • Pull: Cisco Spaces starts transmitting the data once a request is initiated by the partner application. When initiating a request, the partner application can request to replay recent events. This option can be used to resume processing without loss of data.