Connect, Deliver, Control

Build low-latency realtime applications that perform reliably and securely, at global scale.

SDKs Icons New eBook! A World Transformed: Next Generation Apps with Cognitive Serviceschat ebook

Trusted by 2,000 companies worldwide.

Chat
USE CASE

Chat

Build powerful and feature-rich realtime chat apps, powered by flexible APIs and a global messaging infrastructure. Cross-device and cross-platform means they work across web, iOS, Android, and the rest.

Chat
IoT Device Control
USE CASE

IoT Device Control

Securely monitor, control, provision and stream data between smart devices, sensor networks, hubs, and more. Trigger device action, monitor meta data, or stream and process incoming and outgoing data. PubNub provides the infrastructure and APIs for communication for any size IoT deployment.

IoT Device Control
Realtime Updates
USE CASE

Realtime Updates

Keep everyone, and every device realtime. From mapping, geotracking and dispatch, to broadcasting push notifications and up-to-the-millisecond alerts, when something happens in the real world, it's reflected in your app.

Realtime Updates
  • JavaScript
  • .Net
  • Obj-C
  • Swift
  • Android/Java
  • // send a message
  • pubnub.publish({
  • channel: 'chatChannel',
  • message: { foo : 'bar' }
  • }, function ( status, response ) {
  • console.log( status.error, response )
  • })
  • Dictionary<string, string> chatMessage = new Dictionary<string, string>();
  • chatMessage.Add("foo", "bar");
  • pubnub.Publish<string>(
  • channel:"chatChannel",
  • message: chatMessage,
  • userCallback: DisplayPublishReturnMessage,
  • errorCallback: DisplayErrorMessage);
  • - (void)client: (PubNub *)client didReceiveStatus: (PNStatus *)status {
  • if (status.operation == PNSubscribeOperation && status.category == PNConnectedCategory) {
  • [self.client publish: @{@"foo": @"bar"} toChannel: @"chatChannel"
  • withCompletion:^(PNPublishStatus *publishStatus) {
  • if (!publishStatus.isError) {
  • NSLog(@"Published!");
  • }
  • else {
  • NSLog(@"Publish did fail with error: %@",
  • status.errorData.data?: status.errorData.information);
  • }
  • }];
  • }
  • }
  • func client(client: PubNub, didReceiveStatus status: PNStatus) {
  • if status.operation == .SubscribeOperation && status.category == .PNConnectedCategory {
  • client.publish(["foo": "bar"], toChannel: "chatChannel",
  • withCompletion: { (publishStatus) in
  • if !publishStatus.error {
  • print("Published!")
  • }
  • else {
  • print("Publish did fail with error: \(status.errorData.data ?? status.errorData.information)")
  • }
  • })
  • }
  • }
  • Map message = new HashMap();
  • message.put("foo", "bar");
  • pubnub.publish()
  • .channel("chatChannel")
  • .message(message)
  • .async(new PNCallback<PNPublishResult>() {
  • @Override
  • public void onResponse(PNPublishResult result, PNStatus status) {
  • if (status.isError()) {
  • System.out.println(status);
  • } else {
  • System.out.println("Published!");
  • }
  • }
  • });
Publish
  • JavaScript
  • .Net
  • Obj-C
  • Swift
  • Android/Java
Subscribe
Functions
  • export default request => {
  • request.message.hello = 'world!'
  • return request.ok()
  • }
Enterprise-Grade Security Comes Standard

Enterprise-Grade Security Comes Standard

  • TLS and AES256 Encryption
  • SOC 2 Type II Compliant
  • HIPAA Compliant
  • EU GDPR Compliant
  • EU-US Privacy Shield Certified
  • EU and US-Only Data Storage
AICPA SOCHI PAAPrivacy Shield FrameworkGDPR

Developers Developers Love PubNub PubNub

2 Trillion

Monthly Transactions

330 Million

Unique Monthly Devices

<1/4 Second

Latency Worldwide

99.999%

Uptime SLAs

Try PubNub Today