Introducing the Diffusion Cloud REST API

Joseph Moran - July 1, 2020

Publish and Request Real-Time Data for Tens of Thousands of App Users or Sensors Via Simple HTTP in the Programming Language of Your Choice

 

Diffusion Cloud is used successfully by customers around the world to send billions of real-time messages each month. One of the most common type of feature requests we receive is to let customers expand their applications even further by supporting new programming languages and platforms.

In addition to the wide array of SDKs that we provide, there are always more popular languages for which we could develop an SDK for – Python, PHP, Go… – how should we choose?

Our answer was to develop a REST API to support all of them.

The new REST API for Diffusion Cloud (previously known as the Service API) provides a REST interface for publishing and requesting data. Now, the power of Diffusion is available to any programming language that can make an HTTP request.

While our Client SDKs are still the preferred mechanism for many high-performance integrations, developers can quickly start interacting, prototyping, and launching services with Diffusion Cloud in minutes thanks to our simple new REST API. Better yet, since the REST API sits on top of our existing Diffusion Cloud services, you can easily mix & match your application types – publish real-time events using our SDKs and query from a REST client, or have thousands of IoT sensors sending updates via HTTP and use a topic view to dynamically transform and ingest that data to a back-end service.

To start using the REST API, log into your Cloud account, go to the Service Dashboard (select MANAGE on any Cloud service) and then select ADAPTERS > SERVICE API.

Don’t have a Cloud account yet? Sign up here.

Python

//Update topic
requests.post('https://api.diffusion.cloud/topics/set', headers={ 'Authorization':
'Bearer ' + token }, json = {
 'value': { 'latitude': 44.934, 'longitude': -93.262, "timestamp": 15903912 },
 'path': 'sensors/1032952'
})
//Fetch topic
var response = requests.post('https://api.diffusion.cloud/topics/fetch', headers={
'Authorization': 'Bearer ' + token }, json = { selector: '?sensors/.*' })
print (response.json()[‘results])

 

PHP

//Update topic
$client = new \GuzzleHttp\Client(["base_uri" => "https://api.diffusion.cloud"]);
$client->post("/topics/set", [
 'headers' => ['Authorization' => 'Bearer '],
 'json' => [
 'value' => ['latitude' => 44.934, 'longitude' => -93.262, "timestamp" => 15903912
]
 'path' => 'sensors/1032952'
 ]
]);
//Fetch topic
$client = new \GuzzleHttp\Client(["base_uri" => "https://api.diffusion.cloud"]);
$response = $client->post("/topics/fetch", [
 'headers' => ['Authorization' => 'Bearer '],
 'json' => [ 'selector' => '?sensors/.*']
]);
echo json_decode($response->getBody())[‘results’];

Push Technology’s corporate mission is to make it simple and easy to start using real-time data across any and all applications. We’re excited to see what our new REST API will enable our customers to achieve with Diffusion Cloud.

Our new REST API is the first of many steps that we have planned to ensure that open standards and ease-of-use remain an important part of your development experience with Diffusion Cloud.


The Diffusion Intelligent Data Mesh manages, optimizes, and integrates data among devices, systems, and applications. Push Technology pioneered and is the sole provider of real-time delta data streaming™ technology that powers mission-critical business applications worldwide. Leading brands use Push Technology to fuel revenue growth, customer engagement, and business operations. The products, Diffusion® and Diffusion Cloud™, are available on-premise, in-the-cloud, or in a hybrid configuration, to fit the specific business and infrastructure requirements of the applications operating in today’s mobile obsessed, everything connected world. Learn how Push Technology can reduce infrastructure costs, and increase speed, efficiency, and reliability, of your web, mobile, and IoT application.

Learn More: View Blog Posts and Developer Resources

Share:

Check out these other resources

Info

Info Center

Case Studies, White Papers, and Tech Talk notes relating to Diffusion and the customers benefiting from using it.

Info

Quick Start Guide

Step-by-step guide to getting started fast with Diffusion or Diffusion Cloud.

Info

Diffusion Cloud

Get the facts and the details about our Diffusion Cloud platform.