Noticeably Playful Monkeys
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    airvantagepublic

    AirVantage.js

    Nodejs AirVantage API client

    Build Status

    Full AirVantage API documentation: https://doc.airvantage.net/av/reference/cloud/API/

    Install

    ⚠️ Node.js 4 or higher is required for airvantage@3 and above. For older Node.js versions use airvantage@2.

    $ npm install --save airvantage

    Usage

     
    const AirVantage = require("airvantage");
     
    const config = {
        serverUrl: "https://eu.airvantage.net", // or https://na.airvantage.net 
        credentials: {
            client_id: "YOUR_CLIENT_ID",
            client_secret: "YOUR_CLIENT_SECRET",
            username: "you@domain.com",
            password: "yOuRs3cR3t!"
        }
    };
     
    const airvantage = new AirVantage(config);
     
    airvantage
        .authenticate()
        .then(() => airvantage.querySystems({ labels: ["demo"] }))
        .then(systems => console.log("All demo systems:", systems));

    You may already have an access_token and want to use it:

     
    const AirVantage = require("airvantage");
    const airvantage = new AirVantage({
        serverUrl: "https://eu.airvantage.net", // or https://na.airvantage.net 
    });
     
    function querySystems(accessToken) {
        airvantage
            .authenticate({token: accessToken})
            .then(() => airvantage.querySystems({ labels: ["demo"] }))
            .then(systems => console.log("All demo systems:", systems));
    }

    OR you may want to authentication multiple users with a single AirVantage instance

     
    const AirVantage = require("airvantage");
    const airvantage = new AirVantage({
        serverUrl: "https://eu.airvantage.net", // or https://na.airvantage.net 
    });
     
    function authenticate(username, password) {
        airvantage
            .authenticate({username: username, password: password})
            .then(token => storeToken(username, token));
    }

    Available methods

    Systems

    • querySystems

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • getDetailsSystem

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • createSystem

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • editSystem

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • deleteSystem(uid)

      • uid
        • Required
        • Type: string
    • deleteSystems(options)

      • options
        • Type: object
        {
            "selection" : {
                "label": "aLabel",
                // Or 
                "uids" : ["uid1", ...]
            },
            "deleteGateway": false | true,
            "deleteSubscriptions": false | true
        }
    • activateSystems

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • suspendSystems

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • resumeSystems

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • terminateSystems

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • queryMultiRawDataPoints

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    Gateways

    • queryGateways

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • getDetailsGateway

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • createGateway

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • editGateway

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • deleteGateway(uid)

      • uid
        • Required
        • Type: string
    • deleteGateways(options)

      • options
        • Type: object
        {
            "selection" : {
                "label": "aLabel",
                // Or 
                "uids" : ["uid1", ...]
            }
        }

    Subscriptions

    • querySusbscriptions

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • getDetailsSubscription

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • createSusbscription

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • editSusbscription

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • deleteSusbscription(uid)

      • uid
        • Required
        • Type: string
    • deleteSusbscription(options)

      • options
        • Type: object
        {
            "selection" : {
                "label": "aLabel",
                // Or 
                "uids" : ["uid1", ...]
            }
        }
    • activateSusbscriptions

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • synchronizeSusbscriptions

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • suspendSusbscriptions

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • restoreSusbscriptions

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • terminateSusbscriptions

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    Applications

    • queryApplications

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • getDetailsApplication

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • createApplication

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • editApplication

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • editApplicationCommunication(uid, data)

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • editApplicationData(uid, data)

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • releaseApplication(filePath)

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • publishApplication(uid)

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • addApplication(uid)

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • deleteApplication(uid)

      • uid
        • Required
        • Type: string
    • deleteApplications(options)

      • options
        • Type: object
        {
            "selection" : {
                "label": "aLabel",
                // Or 
                "uids" : ["uid1", ...]
            }
        }

    Alert Rules

    • createAlertRule(data)

    • editAlertRule(uid, data)

    • deleteAlertRule(uid)

    • deleteAlertRules(params)

    • queryAlertRules(params)

    • getDetailsAlertRule(id)

    • createNotificationHook(id, callback)

    Add a new notification hook when the given alert rule identifier is triggered. When a rule get trigged, the given callback is invoked See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • getNotificationHooks(id)

    Get the list of all notification hooks configured for the given alert rule identifier. See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    Operations

    • queryOperations

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    • getDetailsOperation

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    Misc

    • currentUser

    See https://doc.airvantage.net/av/reference/cloud/API/ for the methods arguments.

    install

    npm i airvantage

    Downloadsweekly downloads

    32

    version

    4.0.0

    license

    MIT

    repository

    github.com

    last publish

    collaborators

    • avatar