Get started with a free 7-day trial on our Startup plan.

start trial

PushRadar and Python

The latest version of PushRadar's API is v2, released July 5, 2019.

Welcome to PushRadar's API documentation for Python. This article covers calling the various methods of the PushRadar object to publish messages to a channel in realtime.

(Python)Prerequisites

PushRadar's Python library supports Python 3.3+.

You will need to do the following in order to use the library:

  • (a)Install PushRadar's Python library using Pip by running the command pip install PushRadar
(server)"Hello World!" example

The following example demonstrates broadcasting a "Hello World!" message on a channel called test-channel. Replace your-secret-key with your actual PushRadar secret, which may be obtained from the API page of your dashboard.

  • Python
from PushRadar import PushRadar

radar = PushRadar("your-secret-key")
radar.broadcast("test-channel", message="Hello World!")
(client)Receiving messages

To find out how to receive messages by subscribing to channels, check out the documentation for our JavaScript client library.

(tip)Adding multiple data items

For convenience, PushRadar's Python library supports a fluent syntax to structure broadcasts, as well as passing in unlimited data items to the broadcast method after the channel name. To add multiple data items, you can do either of the following:

  • Python
# ... radar = PushRadar(...)
radar.add_data_items(
    message="Hello World!",
    item_2="It's me!"
).broadcast("test-channel")

# --- or ---

radar.broadcast("test-channel", message="Hello World!", item_2="It's me!")
(security)Private channels

PushRadar supports private channels, which allow you to ensure that certain channels are only subscribed to by certain users.

The process is as follows. First you must set up an authentication endpoint, a URL that PushRadar will call to authenticate users when they subscribe to a channel. From this endpoint, you will need to check whether the user is allowed to subscribe to the desired channel. If they are, the endpoint should return an authentication token which can be generated using the channel_auth method.

The final step is to register your authentication endpoint using the JavaScript client library.

Note:   Private channels must start with the prefix "private-"

Here is some code showing the whole process:

  • Python
from PushRadar import PushRadar

radar = PushRadar("your-secret-key")

# Get request query parameter "channel" and determine whether the user can join it
channel = ...

# ... if they can, return the auth token
return json.dumps({"authToken": radar.channel_auth(channel)})

Lastly, register your authentication endpoint URL using the JavaScript client library:

  • JavaScript
var radar = new PushRadar("your-api-key");
radar.setAuthenticationEndpoint("http://localhost/channel-auth");