Using Client SDK

You can access the REST API directly or use the sdk for convenience. We’ve developed API clients sdk for JavaScript, Node.js, Python, Java and C/C++ that will help you to quickly and easily interact with the API. Depending on your chosen application language, you can find a client SDK at GitHub repo. The client SDKs are advanced wrappers on top of the APIs you define.

Language SDK Status
Javascript Javascript SDK
Node.js Node.js SDK
Python Python SDK
Java Java SDK
C/C++ C/C++ SDK

Few examples using the SDK


final Client rapidomize = new Client(appId, token, Transport.MQTT);
 
// Update device configuration properties using HTTP requests

String device = "{\"att\": [{\"n\":\"serial\", \"v\":\"1-000-xyz123\"}, {\"n\":\"type\", \"v\":1}, " +
                      "           {\"n\":\"model\", \"v\":\"m-102\"}]," +
                      " \"prop\":[{\"n\":\"temperature\", \"dt\":\"double\", \"rwx\":1}," +
                      "           {\"n\":\"valve\", \"dt\":\"string\", \"rwx\":3}]}";
rapidomize.register(Json.fromJson(device), cbReq);
 
// Read device configuration properties
rapidomize.read(new Json("n", "color"), new AckHandler() {
  boolean shutdown=false;
  @Override
  public void ack(Json res){
      System.out.println("response: "+res);
  }
  @Override
  public boolean shutdown() {
      return shutdown;
  }
});
 
// Trigger ICApp by Geofence
Json location = new Json("lat", 8.1, "lng", 70.3);
Json event = new Json("_evt", "loc","loc", location);
rapidomize.trigger(icappId, event);
 
// Trigger a ICApp without responses (fire and forget)
rapidomize.trigger(icappId, "{\"a\":\"b\"}");
 
// Trigger a ICApp having a response.
rapidomize.trigger(icappId, new Json("id", "2", "n", "abcd", "val", 10), new AckHandler() {
  boolean shutdown=false;
  @Override
  public void ack(Json res){
      System.out.println("response: "+res);
  }
  @Override
  public boolean shutdown() {
      return shutdown;
  }
});
 
  // Trigger api endpoint using events. events validated by api gateway
  Json ev = new Json(true);
  ev.add(new Json("_evt","locEv", "loc", new Json("lat", 6.84699914466525, "lng", 80.00123977661133)));
  ev.add(new Json("_evt","appEv","temperature", Math.random() * 100, "color","red", "new-sensor",65));
  rapidomize.event(ev);
 
// Handle server requests.
rapidomize.connect(new DeviceActionHandler(rapidomize));
String a = "";
const rapidomize = require('../../dist/rapidomize');

/* initialize the library with appId and token */
rapidomize.init(APP_ID, TOKEN);
 
 /* track an event */
rapidomize.event('register', {
  'type': 'click',
  'wait': '160s'
}, ICAPP_ID);
 
 /* Trigger an ICApp */
 rapidomize.trigger(ICAPP_ID, {
      to: 'sample@abc.com',  
      from: 'noreply@my-site.com',
      subject: 'Test Subject',
      body: 'Test body'
  }, 
  //call back
  {   
      ack: (res) => { 
          console.log('res', res)
      }, 
      err: (err) => {
          console.log('err', err.err)
      }
  }
);
String a = "";
Last modified June 23, 2025