Matching results

System

The system is the core representation used in AirVantage to define and interact with a real system. A system is composed of:

  • a gateway: the physical module enabling the connectivity of the system
  • a subscription: a subscription is the configuration of the connectivity defined with the operator
  • one or several applications: an application defines a piece of logic executing on the system. It can be a firmware, a software, etc.

Read only fields are computed by AirVantage and can only be seen on response fragments sent by find, create, or edit requests.

Field Description Read Only Type
uid System's unique identifier. true uid
type System type. false string
name System name. false string
lifeCycleState Lifecycle state of the system. States are INVENTORY, ACTIVE, TEST_READY, SUSPENDED, RETIRED false string
state [DEPRECATED] State of the system. States are INVENTORY, READY, DEPLOYED, MAINTENANCE false string
activityState [DEPRECATED] Activity state of the system. States are ACTIVATED, SUSPENDED, ARCHIVED, PURGED true string
creationDate Date when the system has been created true timestamp
activationDate Date when the system has been activated true timestamp
lastStateChangeDate Date when the life cyle state changed for the last time true timestamp
lastCommDate Last communication date with the device true timestamp
commStatus Communication status of the system. Status are OK, ERROR, WARNING, UNDEFINED. true string
lastSyncDate Date when the system was synchronized for the last time. true timestamp
syncStatus This status says whether the last synchronization is OK or not. Status values may be OK, ERROR, WARNING, and NOT_SYNC. true string
labels Systems can be labeled with a list of labels.
gateway Linked gateway. false object
applications List of applications. false object array
subscription Linked subscription. false object
subscriptions [DEPRECATED] See subscription true object array
data List of system data. See the list below. true string
metadata List of system metadata false map
communication.msci Necessary parameters to establish a server initiated connection. false object
communication.msci.host Host to be used for server initiated communication false string
communication.msci.user User to be used for server initiated communication false string
communication.msci.password Password to be used for server initiated communication false string
communication.m3da Security parameters to establish secure communications with M3DA. false object
communication.m3da.registrationPassword Only for systems which do not have a specific password. Used within the first communication to generate the password. false string
communication.m3da.password false string
communication.rest Security parameters to establish secure communications with Rest API. false object
communication.rest.password false string
communication.mqtt Security parameters to establish secure communications with MQTT. false object
communication.mqtt.password false string
heartbeat System heartbeat configuration true string
statusReport Default status report based on device management values true string
reports Advanced system reports created by the user. true string
reports.dataset Dataset uid use by the advanced system reports true uid
offer The Offer used to activate the system true uid
dataUsage Gives an overview of the usage consumption. true object
dataUsage.bytesTotal Aggregation of the bytes consumption during the current calendar month. true long
dataUsage.timestamp The dateTime in ms of the bytes total computation. true timestamp
dataUsage.status The status of the current consumption. true string
dataUsage.pricePlan [DEPRECATED] See Offer.name true string
dataUsage.limit [DEPRECATED] See Offer.limit true long

AirVantage extracts device management data from communications received from systems in order to have the same representation of it throughout the different supported protocols.
The extracted data is listed below.

Data Description Type
apn The Access Point Name. string
cellId The Cell ID. string
sid (CDMA only) The System Identification Number. string
nid (CDMA only) The Network Identification Number. string
pnOffset (CDMA only) The PN Offset. string
latitude The latitude (manually entered or provided by the GPS).
Format: Signed degrees format (DDD.dddd).
A latitude with 8 decimal places pinpoints a location to within 1 millimeter,( 1/16 inch):
  • Prefix South latitudes with a minus sign.
  • Latitudes range from -90 to 90.
Example: 41.25
double
longitude The longitude (manually entered or provided by the GPS).
Format: Signed degrees format (DDD.dddd).
A longitude with 8 decimal places pinpoints a location to within 1 millimeter,( 1/16 inch):
  • Prefix West longitudes with a minus sign.
  • Longitudes range from -180 to 180.
Example: -120.9762
double
rssi The Received signal strength indicator (between -70 and -100) double
rssiLevel The level of RSSI computed from the raw value:
  • EXCELLENT (min : -70),
  • GOOD (min: -85, max: -70),
  • FAIR (min: -100, max: -85),
  • POOR (max: -100).
string
ecio The signal quality (values between -5 and -15). double
ecioLevel The level of Ec/Io computed from the raw value:
  • EXCELLENT (min: -5),
  • GOOD (min: -10, max: -5),
  • FAIR (min: -15, max: -10),
  • POOR (max: -15).
string
rsrp (LTE only) The Reference Signal Received Power (dBm) - in 1/10 dBm. double
rsrpLevel The level of RSRP computed from the raw value:
  • EXCELLENT (min : -90),
  • GOOD (min: -105, max: -90),
  • FAIR (min: -120, max: -105),
  • POOR (max: -120).
string
rsrq (LTE only) The Reference Signal Received Quality (dB) - in 1/10 dB. double
rsrqLevel The level of RSRQ computed from the raw value:
  • EXCELLENT (min : -9),
  • GOOD (min: -12, max: -9),
  • FAIR_TO_POOR (max: -12).
string
signalBars The number of signal bars indicator. integer
signalStrength The signal strength computed from the raw signalBar value: NO_REPORT(null), NO_SIGNAL(0), VERY_LOW(1), LOW(2), GOOD(3), VERY_GOOD(4), EXCELLENT(5) string
networkServiceType Returns a string indicating the type of wireless service the device has: "None", "GPRS", "EDGE", "UMTS", "HSDPA", "HSUPA", "HSPA", "1X", "EV-DO Rev.0", "EV-DO Rev.A", "LTE", "Unknown". string
networkOperator The active link's operator. string
bytesSent The number of bytes sent on the cellular link. integer
bytesReceived The number of bytes received on the cellular link. integer
packetsSent The number of packets sent on the cellular link. integer
packetsReceived The number of packets received on the cellular link. integer
boardTemp The temperature of the board in Celsius. integer
radioModuleTemp The temperature of the radio module in Celsius. integer
numberOfResets The number of system resets. integer
roamingStatus The roaming status. string
firmwareVersion Firmware version of the system. string
firmwareComponents Legato firmwares are composed of several components. This value lists these components in a comma separated list of strings. string
monthBytesTotal An aggregation of consumed bytes in the current calendar month. It is based on bytesSent/bytesReceived from the cellurar link. long
monthBytesTotalTime The date time when the monthly bytes total were computed. timestamp
usagesBytesTotal [DEPRECATED] An aggregation of consumed bytes in the current calendar month. It is based on consumptions sent by the provider. See dataUsage long
lastCommFailureDate The last time the system failed to communicate. timestamp
lastTemplateName The last template used to apply settings on the system. string
alertState Says if the system has raised an alert on at least one alert rule (stateful) in the company. boolean
alertStateChangeDate Says when this state has changed. timestamp

This is a complete representation of a System. This fragment can be used for create or edit requests. Please refer to the fields section to know which fields can be modified.

{
   "uid": "any_uid_string",
   "name": "name",
   "type" : "type",
   "state": "state",
   "lifeCycleState": "lifeCycleState",
   "activityState": "activity_state",
   "commStatus": "comm_status",
   "creationDate": timestamp,
   "activationDate": timestamp,
   "lastStateChangeDate": timestamp,
   "lastCommDate": timestamp,
   "syncStatus": "sync_status",
   "lastSyncDate": timestamp,
   "labels":["label1", "label2", "and so on"],

   "gateway":    {
      "uid": "any_uid_string",
      "imei": "imei",
      "macAddress": "mac_address",
      "serialNumber": "serial_number",
      "type": "type"
   },

   "subscription" : {
        "uid": "any_uid_string",
        "identifier" : "identifier",
        "mobileNumber": "mobile_number",
        "mobileNumber2": "mobile_number2",
        "networkIdentifier": "network_identifier",
        "ipAddress" : "ip_address",
        "requestedIp" : "requested_ip_address",
        "eid" : "eid",
        "operator" : "operator",
        "state" : "state",
        "appletGeneration" : "V4",
        "formFactor" : "2FF",
        "confType" : "LITE",
        "technology" : "4G",
        "orderId" : "order_id",
        "productRefName" : "LITE 2FF"
    },

    "applications" [{
        "uid": "any_uid_string",
        "name": "any_string",
        "revision" : "any_string",
        "type" : "any_string",
        "category" : "any_string"
   }],

   "metadata": {
      "name1": "value1",
      "name2": "value2"
   },

   "data": {
        "rssiLevel" : "rssi_level",
        "ecioLevel" : "ecio_level",
        "rssi" : "rssi",
        "ecio" : "ecio",
        "networkServiceType" : "network_service_type",
        "roamingStatus" : "roaming_status",
        "networkOperator" : "network_operator",
        "latitude" : "latitude",
        "longitude" : "longitude",
        "bytesReceived" : "bytes_received",
        "bytesSent" : "bytes_sent",
        "usagesByteTotal" : "bytes_total",
        "lastTemplateName" : "last_template_name",
        "lastCommFailureDate" : timestamp,
        "apn" : "apn",
        "cellId" : "cell_id",
        "sid" : "sid",
        "nid" : "nid",
        "pnOffset" : "pn_offset",
        "rsrp" : "rsrp",
        "rsrpLevel" : "rsrp_level",
        "rsrq" : "rsrq",
        "rsrqLevel" : "rsrq_level",
        "packetsSent" : "packets_sent",
        "packetsReceived" : "packets_received",
        "boardTemp" : "board_temp",
        "radioModuleTemp" : "radio_module_temp",
        "numberOfResets" : "number_of_resets",
        "signalBars" : 3,
        "signalStrength" : "GOOD",
        "firmwareVersion": "firmware_version",
        "firmwareComponents": "firmwareComponents",
        "alertState":true,
        "alertStateChangeDate":timestamp,
        "monthBytesTotal":long_value,
        "monthBytesTotalTime": timestamp
   },

   "dataUsage" : {
        "bytesTotal" : long_value,
        "timestamp"  : long_value,
        "status"     : "Data usage status"
    },

   "offer": {
        "uid"   : "1dbbb7dfeaf5481ba075190db16887d6",
        "name"  : "Offer's name",
        "limit" : long_value,
        "types" : ["TYPE1", "TYPE2"]
   }

   "communication" :   {
      "msci" :    {
          "host"     : "string",
          "user"     : "string",
          "password" : "string"
      },
      "m3da" :    {
          "password" : "string",
          "registrationPassword" : "string",
      },
      "rest" :    {
          "password" : "string"
      },
      "mqtt" :    {
          "password" : "string"
      }
   },

   "heartbeat" : {
      "state"      : "ON",
      "period"     : "15",
      "sla"        : {
         "error"   : "2",
         "warning" : "1"
      },
      "serverOnly" : boolean
   },

   "statusReport" : {
      "state"  : "ON",
      "period" : "20"
   },

   "reports" : [{
      "period"  : "20",
      "dataset" : {
         "uid"  : "af2061ef883449ae845866672097d005",
         "name" : "string"
      }
   }], 
}

/v1/systems

Returns a paginated list of systems with their complete details.

It is possible to filter out the result list using criteria parameters.

Though system creation date is not publicly exposed, the default sort order is based on the creation date.
More information about paging, filtering, and sorting here

Request

GET https://na.airvantage.net/api/v1/systems?fields=uid,name,gateway,subscription&name=MySystem

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "items":    [
            {
         "uid": "3ed6cd7426604ee0bca9fe01f2521230",
         "name": "MySystem",
         "gateway":          {
            "uid": "12e4b922b0034b26a92e7f9934da13ae",
            "imei": null,
            "macAddress": null,
            "serialNumber": "458555527",
            "type": null,
            "creationDate": "1337948436603"
         },
         "subscription" : {
            "uid": "bafd571985d641d7b159dc7ef3214f5d",
            "identifier" : "4569874563254156984",
            "mobileNumber": null,
            "networkIdentifier": null,
            "eid" : "eid",
            "operator": "UNKNOWN",
            "state" : "INVENTORY",
            "appletGeneration" : "V4",
            "formFactor" : "2FF",
            "confType" : "LITE",
            "technology" : "4G",
            "productRefName" : "LITE 2FF"
         }
      },
            {
         "uid": "d2cbc9d8e7b8491ea3433e6c78f984e4",
         "name": "MySystem",
         "gateway":          {
            "uid": "225faa5714624dffb4ff997a026effbd",
            "imei": null,
            "macAddress": null,
            "serialNumber": "789654123",
            "type": null,
            "creationDate": "1337948436603"

         },
         "subscription" : {
            "uid": "bafd571985d641d7b159dc7ef3214f5d",
            "identifier" : "4569874563254156984",
            "mobileNumber": null,
            "networkIdentifier": null,
            "eid" : "eid",
            "operator": "UNKNOWN",
            "state" : "INVENTORY",
            "appletGeneration" : null,
            "formFactor" : null,
            "confType" : null,
            "technology" : null,
            "productRefName" : "LITE 2FF"
         }
      }
   ],
   "count": 2,
   "size": 2,
   "offset": 0
}
Name Description Use Default Type Operand
uid Return system whose uid match with the specified id. optional null uid =
labels Returns all systems labeled with the specified string. optional null string list in
name Returns all systems whose name contains the given string. optional null string like
states Returns all systems whose state is in the given list. States are INVENTORY, READY, DEPLOYED, MAINTENANCE optional null string list in
lifeCycleStates Returns all systems whose lifeCycleState is in the given list. States are INVENTORY, ACTIVE, TEST_READY, SUYSPENDED, RETIRED optional null string list in
activityStates Returns all systems whose activityState is in the given list. States are ACTIVATED, SUSPENDED, ARCHIVED, PURGED optional null string list in
metadata Returns all systems with the given metadata. optional null string map with the following format: name1:value1,name2:value2,... = for the name and like for the value
lastCommAfter Returns all systems with a last communication date after the given date. The specified date is included. optional null timestamp >=
lastCommBefore Returns all systems with a last communication date before the given date. The specified date is included. optional null timestamp <=
creationAfter Returns all systems created after the given date. The specified date is included. optional null timestamp >=
creationBefore Returns all systems created before the given date. The specified date is included. optional null timestamp <=
activationAfter Returns all systems activated after the given date. The specified date is included. optional null timestamp >=
activationBefore Returns all systems activated before the given date. The specified date is included. optional null timestamp <=
lastStateChangeAfter Returns all systems whose state changed after the given date. The specified date is included. optional null timestamp >=
lastStateChangeBefore Returns all systems whose state changed before the given date. The specified date is included. optional null timestamp <=
commStatus Returns all systems with the given communication status. Status are OK, ERROR, WARNING, UNDEFINED. optional null string =
lastSyncAfter Returns all systems with a last synchronization date after the given date. The specified date is included. optional null timestamp >=
lastSyncBefore Returns all systems with a last synchronization date before the given date. The specified date is included. optional null timestamp <=
syncStatus Returns all systems with the given synchronization status. Status are OK, ERROR, WARNING, NOT_SYNC. optional null string =
lastAppliedTemplate Returns all systems with a last applied template name equals with the given template name. optional null string =
lastConfigName Returns all systems with a last configuration name equals with the given configuration name. optional null string =
type Returns all systems whose type contains the given string. optional null string like
application Returns all systems which contain an application matching the specified criteria.
The possible criteria are :
  • uid (exact match)
  • name (like)
  • revision (like)
  • type (like)
optional null string map with the following format: uid:xxx,name:xxx,revision:xxx,type:xxx See description
gateway Returns all systems linked to a gateway matching the specified criteria.
The possible criteria are :
  • uid (exact match)
  • type (like)
  • imei (like)
  • macAddress (like)
  • serialNumber (like)
optional null string map with the following format: uid:xxx,type:xxx,... See description
subscription Returns all systems linked to a subscription matching the specified criteria.
The possible criteria are :
  • uid (exact match)
  • operator (like)
  • identifier (like)
  • mobileNumber (like)
  • networkIdentifier (like)
  • ipAddress (like)
  • requestedIp (like)
  • eid (like)
  • appletGeneration (exact match)
  • formFactor (exact match)
  • confType (exact match)
  • technology (exact match)
optional null string map with the following format: uid:xxx,operator:xxx,identifier:xxx,... See description
data Returns all systems whose data match the specified criteria.
The possible criteria are :
  • rssiLevel (exact match)
  • ecioLevel (exact match)
  • networkServiceType (exact match)
  • signalStrength (exact match)
  • roamingStatus (exact match)
  • rsrpLevel (exact match)
  • rsrqLevel (exact match)
  • currentOperator (like)
optional null string map with the following format: rssiLevel:xxx,ecioLevel:xxx,networkServiceType:xxx,signalStrength:xxx,roamingSatus:xxx,rsrpLevel:xxx,rsrqLevel:xxx See description
company Set the context company. optional caller's company uid =
usageStatus Returns all the systems with the given data usage status. Status are WITHIN_PLAN, NEARING_PLAN or EXCEEDING_PLAN. optional null string =
offer Returns systems with the given offer. optional null uid =
notOffer Returns systems with a different offer from the given one. optional null uid =
options Returns systems having at least one active option among the given list of options. optional null uid list =
notOptions Returns systems having no active options among the given list of options. optional null uid list =
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers None
Permissions entities.systems.view
Order by name, creationDate, activationDate, lastStateChangeDate, lastCommDate, serialNumber, imei, identifier, ipAddress, requestedIp, data.rssi, data.ecio, data.rsrp, data.rsrq, data.bytesSent, data.bytesReceived, data.monthBytesTotal, dataUsage.bytesTotal, dataUsage.status
Fields uid, name, state, lifeCycleState, activityState, creationDate, activationDate, lastStateChangeDate, lastCommDate, commStatus, gateway, subscription, labels, applications, metadata, communication, data, heartbeat, statusReport, reports, lastSyncDate, syncStatus, type, offer

/v1/systems

Creates a single system from scratch. For the associated gateway and the subscription, you can either create a new one on the fly or select an existing one by its uid.

Request

POST https://na.airvantage.net/api/v1/systems
Content-Type: application/json
...

{
   "name": "MyFirstSystem",
   "state": "INVENTORY",
   "lifeCycleState": "INVENTORY",
   "type" : "my system type",
   "gateway":    {
      "serialNumber": "88545687",
      "creationDate": "1337948436603"
   },
   "subscription" : {
        "identifier" : "4569874563254156984",
        "operator": "OPERATOR_NAME"
    },
   "labels": ["labege"],
   "applications": [   {
      "uid": "171b9f022cd14c9b8e92d9ba6764db81"
   }],
   "metadata": {
      "name1": "value1",
      "name2": "value2"
   },
   "communication" :   {
      "msci" :    {
          "host" : null,
          "user" : null,
          "password" : null
      },
      "m3da" :    {
          "registrationPassword" : null,
          "password" : null
      },
      "rest" :    {
          "password" : null
      }
   }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "uid": "f88264cfec4a4fec9411fe59bc3c8637",
   "name": "MyFirstSystem",
   "state": "INVENTORY",
   "lifeCycleState": "INVENTORY",
   "type" : "my system type",
   "activityState": "ACTIVATED",
   "commStatus": "UNDEFINED",
   "creationDate": 1337948436603,
   "activationDate": null,
   "lastStateChangeDate": 1337948436603,
   "lastCommDate": null,
   "gateway":    {
      "uid": "4afd571029d641d7b159dc7ef5856469",
      "imei": null,
      "macAddress": null,
      "serialNumber": "88545687",
      "type": null,
      "creationDate": 1337948436603
   },
   "subscription" : {
      "uid": "bafd571985d641d7b159dc7ef3214f5d",
      "identifier" : "4569874563254156984",
      "mobileNumber": null,
      "ipAddress": null,
      "requestedIp": null,
      "networkIdentifier": null,
      "eid": null,
      "operator" : "UNKNOWN",
      "state" : "INVENTORY",
      "appletGeneration" : "V4",
      "formFactor" : "2FF",
      "confType" : "LITE",
      "technology" : "4G",
      "productRefName" : "LITE 2FF"
    },
   "labels": ["labege"],
   "applications": [   {
      "uid": "171b9f022cd14c9b8e92d9ba6764db81",
      "name": "The Application",
      "revision": "1.20.3",
      "type": "The type",
      "category" : "SOFTWARE"
   }],
   "metadata": {
      "name1": "value1",
      "name2": "value2"
   },
   "heartbeat" : null,
   "statusReport" : null,
   "reports" : [],
   "data": {
      "lastTemplateName": null,
      "lastCommFailureDate": null,
      "rssi": null,
      "networkServiceType": "UNKNOWN",
      "roamingStatus": "UNKNOWN",
      "networkOperator": null,
      "ecio": null,
      "bytesSent": null,
      "bytesReceived": null,
      "packetsSent": null,
      "packetsReceived": null,
      "apn": null,
      "cellId": null,
      "sid": null,
      "nid": null,
      "pnOffset": null,
      "rsrp": null,
      "rsrq": null,
      "boardTemp": null,
      "radioModuleTemp": null,
      "numberOfResets": null,
      "latitude": null,
      "longitude": null,
      "ipAddress": null,
      "rssiLevel": "NO_REPORT",
      "ecioLevel": "NO_REPORT",
      "rsrpLevel": "NO_REPORT",
      "rsrqLevel": "NO_REPORT",
      "signalBars": null,
      "signalStrength": "NO_REPORT"
   }
}
Name Description Use Default Type
company Set the context where the new systems will be created. optional caller's company uid

The content must looks like the one specified in the overview.

However, some fields have specific behaviors. Here you can find the list of these fields with detailed information.

Field Description Use Default Type
name The name of the system. If empty, the gateway identifiers will be used with this preferential order : serial number, imei, mac address optional see description string
applications.uid Used to link the created system with an existing application identified by its uid. optional uid string
gateway.uid Used to link the created system with an existing gateway identified by its uid. optional uid string
gateway.{other_fields} Used to create a gateway on the fly and link it with the created system.
If a gateway already exists in your company for the specified identifiers (IMEI or SERIAL or MAC) then only gateway identifiers will be updated.
optional Gateway
subscription.uid Used to link the created system with an existing subscription identified by its uid. optional uid string
subscription.{other_fields} Used to create a subscription on the fly and link it with the created system. optional Subscription
Name Description
gateway.missing Raised when no gateway is specified.
gateway.missing.identifiers Raised when missing gateway identifiers (IMEI or SERIAL or MAC).
gateway.not.unique.identifiers Raised when more than one gateway exists for the specified gateway identifiers (IMEI or SERIAL or MAC).
gateway.invalid.imei Raised when gateway IMEI is invalid.
gateway.invalid.esn Raised when gateway ESN is invalid.
gateway.invalid.meid Raised when gateway MEID is invalid.
gateway.invalid.mac.address Raised when gateway MAC address is invalid.
gateway.unknown Raised when gateway is unknown.
application.missing Raised when application is missing.
application.unknown Raised when application is unknown.
system.missing.fields Raised when missing required fields on system.
application.not.unique Raised when the application already exists.
applications.protocol.conflicts Raised when more than one application on the system use the same protocol
system.applications.type.not.unique Raised when application type is not unique
system.communication.identifier.already.used Raised when communication identifier is aldready used
subscription.assigned Raised when a subscription is already assigned to another system
subscription.missing.identifier Raised when subscription identifier is missing.
subscription.missing.operator Raised when subscription operation is not set.
subscription.operator.and.operator.account.incompatible Raised when subscription operator and operator account are not compatibles
operator.account.unknown Raised when operator is not found
gateway.assigned Raised when a gateway is already assigned to another system
system.invalid.m3da.registration.password Raised when the format of M3DA registration password is invalid
system.invalid.m3da.password Raised when the format of M3DA password is invalid
system.limit.exceeded" No more system can be created
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.create

/v1/systems/{uid}

Edits the system identified by the uid of the request.

Request

PUT https://na.airvantage.net/api/v1/systems/1cc562f8ec1340e79214f2113db751f6
Content-Type: application/json
...
{
    "gateway" : {
        "uid" : "4afd571029d641d7b159dc7ef5856469"
     },
    "applications" : [{
        "uid" : "12545710bcc641d79c9b2c7ef5c1c2c5"
    }]
    "subscription" : {
        "uid" : "85b45113632942c982325ac9abe6321c1"
    },
    "labels" : ["labege", "working"]
}

Response
200 OK

The descritpion of the system

...
Name Description
system.unknown Raised when no system matches the 'uid'.
gateway.being.transferred Raised when gateway is being transferred to a partner
gateway.missing Raised when no gateway is specified.
gateway.missing.identifiers Raised when missing gateway identifiers (IMEI or SERIAL or MAC).
gateway.not.unique.identifiers Raised when one of the gateway identifiers already exists (IMEI or SERIAL or MAC).
gateway.invalid.imei Raised when gateway IMEI is invalid.
gateway.invalid.esn Raised when gateway ESN is invalid.
gateway.invalid.meid Raised when gateway MEID is invalid.
gateway.invalid.mac.address Raised when gateway MAC address is invalid.
gateway.unknown Raised when gateway is unknown.
application.missing Raised when application is missing.
application.unknown Raised when application is unknown.
system.missing.fields Raised when missing required fields on system.
application.not.unique Raised when the application already exists.
applications.protocol.conflicts Raised when more than one application on the system use the same protocol
system.applications.type.not.unique Raised when application type is not unique
system.communication.identifier.already.used Raised when communication identifier is aldready used
subscription.assigned Raised when a subscription is already assigned to another system
gateway.assigned Raised when a gateway is already assigned to another system
system.invalid.state Raised when system is in an invalid state
system.invalid.m3da.registration.password Raised when the format of M3DA registration password is invalid
system.invalid.m3da.password Raised when the format of M3DA password is invalid
HTTP Method PUT
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.edit

/v1/systems/{uid}

Deletes a specific system from AirVantage. If needed, the user can delete the gateway and the subscription linked to the system.

Request

DELETE https://na.airvantage.net/api/v1/systems/1cc562f8ec1340e79214f2113db751f6
...

Response
200 OK

HTTP/1.1 200 OK
Content-Length: 0
Name Description Use Default Type
deleteGateway If true, the gateway linked to the system is also deleted optional false boolean
deleteSubscription If true, the subscription linked to the system are also deleted optional false boolean
Name Description
system.unknown Raised when no system matches the 'uid'.
HTTP Method DELETE
Requires Authentication Yes
Rate Limited Yes
Headers None
Permissions entities.systems.delete

/v1/systems/{uid}

Returns detailed information about the specified system.

Request

GET https://na.airvantage.net/api/v1/systems/9b629cbdc71a4276bacec471e35b7edd

Response
200 OK

HTTP/1.1 200 OK
{
    "reports": [],
    "activityState": "ACTIVATED",
    "commStatus": "UNDEFINED",
    "creationDate": 1337948436603,
    "activationDate": null,
    "lastStateChangeDate": 1337948436603,
    "lastCommDate": 138647531400,
    "applications": [
        {
            "category": "FIRMWARE",
            "revision": "04.07.01.01",
            "uid": "3eb137e9ae784c2da393345eeda19a60",
            "type": "AirCard 341U",
            "name": "AC341U Firmware"
        }
    ],
    "communication": {
        "msci": null,
        "m3da": null,
        "rest": {
            "password": "password"
        },
        "mqtt": null
    },
    "heartbeat": null,
    "statusReport": null,
    "lastSyncDate": null,
    "labels": [],
    "gateway": {
        "imei": "IMEI",
        "macAddress": null,
        "uid": "09d7a9a3c9a945dabb5771bea06e3745",
        "serialNumber": "SERIALNUMBER",
        "type": null
    },
    "syncStatus": "NOT_SYNC",
    "subscription": null,
    "uid": "9b629cbdc71a4276bacec471e35b7edd",
    "metadata": {},
    "type": null,
    "data": null,
    "state": "DEPLOYED",
    "lifeCycleState": "ACTIVE",
    "name": "testtttt"
}
Name Description
system.unknown Raised when no system matches the uid.
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers None
Permissions entities.systems.view

/v1/systems/{uid}/network/options

Returns the options of the specified system.
A config field can be returned to indicate how the option is configured:

  • For LTE option, config=DATA_ONLY indicates the option is optimized for data only.
  • For APN option, config=STATIC_IP indicates the option is used to set a static IP address.

Request

GET https://na.airvantage.net/api/v1/systems/9b629cbdc71a4276bacec471e35b7edd/network/options

Response
200 OK

HTTP/1.1 200 OK
[
  {
    "type": "ROAMING",
    "uid": "43c9ea75020f4fa2b24ff4c9b8f4884c",
    "name": "AFRICA - Central"
  },
  {
    "type": "GENERAL",
    "uid": "82cc3cd327454992b847c4cc539fad70",
    "name": "LTE",
    "config": "DATA_ONLY"
  },
  {
    "type": "SERVICE",
    "uid": "7b6425d4f0914f7e93f21e7ac9582c27",
    "name": "Data - Circuit Switched Data (CSD)"
  },
  {
    "type": "SERVICE",
    "uid": 876342d4f0914f7e53d21b7bc6582e64",
    "name": "Data - APN test.swir",
    "config": "STATIC_IP"
  }
]
Name Description
system.unknown Raised when no system matches the uid.
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers None
Permissions entities.systems.view

/v1/systems/{uid}/data

Gets the last datapoints of the system matching the unique identifier of data defined in the url.
If no data identifier is set, the last datapoint for all data will be retrieved.

Request

GET https://na.airvantage.net/api/v1/systems/6500ee29f8ed4e3991dff484b3ce3e73/data?ids=Data1,Data2,Data3

...

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "Data1": [{
      "value": "value1",
      "timestamp": 1331906459440
   }],
   "Data2": [{
      "value": "value2",
      "timestamp": 1331906459440
   }],
   "Data3": [{
      "value": "value3",
      "timestamp": 1331906459440
   }]
}
Name Description Use Default Type
ids The list of data ids separated by a ','. optional string
Name Description
system.unknown Raised when no system matches the 'uid'.
system.invalid.data.param Raised when data ID is invalid
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers none
Permissions entities.systems.view

/v1/systems/data/raw

Gets the historical values of a raw data for a selection of systems and a list of data id defined in the url. Most recent datapoints are returned first.

Request

GET https://na.airvantage.net/api/v1/systems/data/raw?targetIds=6500ee29f8ed4e3991dff484b3ce3e73,50cd2c2697e34fcbb5f61158d23fca52&dataIds=Data1,Data2
...

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
    "6500ee29f8ed4e3991dff484b3ce3e73": {
        "Data1": [{
                "ts": 1331908459440,
                "v": 1.36
            }, {
                "ts": 1331908459441,
                "v": 1.56
            }, {
                "ts": 1331908459442,
                "v": 2.89
            }],
        "Data2": [{
                "ts": 1331908454540,
                "v": "hard"
            }, {
                "ts": 1331907459061,
                "v": "smooth"
            }]
    },
    "50cd2c2697e34fcbb5f61158d23fca52" : {
        "Data1": [{
                "ts": 1331908459440,
                "v" : 3.4
            }, {
                "ts": 1331908459441,
                "v" : 5.43
            }, {
                "ts": 1331908459442,
                "v" : 2.67
            }]
    }
}

                               
Name Description Use Default Type
from Inclusive timestamp representing the beginning of the period. optional Current time less 3 months timestamp
to Exclusive timestamp representing the end of the period. optional current time timestamp
size The result size per system/data pair. Max result size: 500. optional 100 int
targetIds The list of system ids separated by a ','. It is only possible to request up to 5 ids. required - string
dataIds The list of data ids separated by a ','. It is only possible to request up to 10 ids. required - string
Name Description
system.unknown Raised when no system matches the 'uid'.
system.invalid.data.param Raised when data ID is invalid
system.invalid.timerange Raised when 'from' is bigger than 'to'
aggregation.too.many.data Raised when too many data are requested for a single API call
aggregation.too.many.targets Raised when too many systems are requested for a single API call
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers none
Permissions entities.systems.view

/v1/systems/data/aggregated

Gets a temporal aggregation of data points for a selection of systems identified by a list of unique identifiers and a list of data ids in the url. Most recent datapoints are returned first.

Request

GET https://na.airvantage.net/api/v1/systems/data/aggregated?dataIds=dataId1,dataId2&targetIds=be6647d8c9a64dc6aa3c36d3c4a28cf1,5cdc94f3e0494087a6f0e0fc4fe30fb8
...

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
    "be6647d8c9a64dc6aa3c36d3c4a28cf1": {
        "dataId1" : [{
               "ts": 1331908459440,
               "v": 2.0
            }, {
               "ts": 1331907459440,
               "v": 7.2
            }, {
               "ts": 1331906459440,
               "v": null
            }],
        "dataId2" : [{
               "ts": 1331908459440,
               "v": 2.0
            }, {
               "ts": 1331907459440,
               "v": 7.2
            }, {
               "ts": 1331906459440,
               "v": null
            }]
    },
    "5cdc94f3e0494087a6f0e0fc4fe30fb8": {
        "dataId1" : [{
               "ts": 1331908459440,
               "v": 2.0
            }, {
               "ts": 1331907459440,
               "v": 7.2
            }, {
               "ts": 1331906459440,
               "v": null
            }]
    }
}
Name Description Use Default Type
interval Intervals are specified by a multiplier and a unit of time, i.e. 6hour or 1day. The supported time units are:
  • hour - Hours
  • day - Days
  • month - Months
  • year - Years
The multiplier has to be lower than 50. Example: 1day
optional 1hour string
targetIds The list of system ids separated by a ','. It is only possible to request up to 5 ids. required - string
dataIds The list of data ids separated by a ','. It is only possible to request up to 10 ids. It is also possible to request for data usage. These data are:
  • DATA_SESSION
  • DATA_DURATION
  • DATA_BYTES_SENT
  • DATA_BYTES_RECEIVED
  • DATA_BYTES_TOTAL
  • DATA_ROUNDED_BYTES_TOTAL
  • VOICE_IN_SESSION
  • VOICE_OUT_SESSION
  • VOICE_IN_DURATION
  • VOICE_IN_ROUNDED_DURATION
  • VOICE_OUT_DURATION
  • VOICE_OUT_ROUNDED_DURATION
  • SMS_SENT
  • SMS_RECEIVED
  • MSU
required - string
from Timestamp used to select the start interval. This interval is included. optional null timestamp
to Timestamp used to select the end interval. This interval is excluded. optional current time timestamp
fn The folding function specifies how the datapoints are reduced within each interval. The default folding function is mean which returns the mean (average). The following folding functions are supported:
  • mean - Average of all datapoints.
  • sum - Sum of all datapoints.
  • min - Minimum value of all datapoints.
  • max - Maximum value of all datapoints.
  • stddev - Standard deviation of all datapoints.
  • ss - Sum of squares of all datapoints.
  • cnt - Number of datapoints. (only works on numbers)
  • occ - Number of occurrences of the set of values. Contrary to other functions, this one does not return a Double but a Map<String,Long>.
optional mean string
size Size of the list of values per system and data. Max result size: 500. optional 100 int
Name Description
aggregation.invalid.multiplier Raised when multiplier is lower than one or bigger than 50.
aggregation.invalid.timescale Raised when timescale is not one of hour, day, month or year.
invalid.timerange Raised when 'from' is greater than 'to'.
aggregation.too.many.targets Raised when too many system are requested for a single API call.
aggregation.too.many.data Raised when too many data are requested for a single API call.
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers none
Permissions entities.systems.view

/v1/systems/data/fleet

Gets a temporal aggregation of data points for a fleet of systems identified by a list of company identifier and a list of data id in the url. Most recent datapoints are returned first.

Request

GET https://na.airvantage.net/api/v1/systems/data/fleet?dataIds=dataId1,dataId2&targetIds=bd5a888f0af546719d2895b254831f14,e7deb45d8ad2484996a5ad0c7df3e154
...

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
    "bd5a888f0af546719d2895b254831f14": {
        "dataId1": [{
               "ts": 1331908459440,
               "v": 2.0
            }, {
               "ts": 1331907459440,
               "v": 7.2
            }, {
               "ts": 1331906459440,
               "v": null
            }],
        "dataId2" : [{
               "ts": 1331908459440,
               "v": 2.0
            }, {
               "ts": 1331907459440,
               "v": 7.2
            }, {
               "ts": 1331906459440,
               "v": null
            }]
    },
    "e7deb45d8ad2484996a5ad0c7df3e154": {
        "dataId1" : [{
                "ts": 1331908459440,
                "v": 2.0
            }, {
                "ts": 1331907459440,
                "v": 7.2
            }, {
                "ts": 1331906459440,
                "v": null
            }]
    }
}
Name Description Use Default Type
interval Intervals are specified by a multiplier and a unit of time, i.e. 6hour or 1day. The supported time units are:
  • hour - Hours
  • day - Days
  • month - Months
  • year - Years
The multiplier has to be lower than 50. Example: 1day
optional 1hour string
targetIds The list of company ids separated by a ','. It is only possible to request up to 5 ids. mandatory - string
dataIds The list of data ids separated by a ','. It is only possible to request up to 10 ids. It is also possible to request for data usage. These data are:
  • DATA_SESSION
  • DATA_DURATION
  • DATA_BYTES_SENT
  • DATA_BYTES_RECEIVED
  • DATA_BYTES_TOTAL
  • DATA_ROUNDED_BYTES_TOTAL
  • VOICE_IN_SESSION
  • VOICE_OUT_SESSION
  • VOICE_IN_DURATION
  • VOICE_IN_ROUNDED_DURATION
  • VOICE_OUT_DURATION
  • VOICE_OUT_ROUNDED_DURATION
  • SMS_SENT
  • SMS_RECEIVED
  • MSU
mandatory - string
from Timestamp used to select the start interval. This interval is included. optional null timestamp
to Timestamp used to select the end interval. This interval is excluded. optional current time timestamp
fn The folding function specifies how each datapoints get reduced within each interval. The default folding function is mean which returns the mean (average). The following folding functions are supported:
  • mean - Average of all datapoints
  • sum - Sum of all datapoints
  • min - Minimum value of all datapoints
  • max - Maximum value of all datapoints
  • stddev - Standard deviation of all datapoints
  • ss - Sum of squares of all datapoints
  • cnt - Total number of datapoints in the DataSet (only works on numbers)
optional mean string
fleetFn The fleet folding function specifies how the fleet datapoints are reduced within each interval. The default folding function is mean which returns the mean (average). The following folding functions are supported:
  • mean - Average of all datapoints
  • sum - Sum of all datapoints
  • min - Minimum value of all datapoints
  • max - Maximum value of all datapoints
  • stddev - Standard deviation of all datapoints
  • ss - Sum of squares of all datapoints
  • cnt - Total number of datapoints in the DataSet (only works on numbers)
optional mean string
size Size of the list of values per company and data. Max result size: 500. optional 100 int
Name Description
aggregation.invalid.multiplier Raised when multiplier is lower than one or bigger than 50.
aggregation.invalid.timescale Raised when timescale is not one of hour, day, month or year.
invalid.timerange Raised when 'from' is greater than 'to'.
aggregation.too.many.targets Raised when too many companies are requested for a single API call.
aggregation.too.many.data Raised when too many data are requested for a single API call.
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers none
Permissions entities.systems.view

/v1/operations/systems/{uid}/export/data/historical

Exports the historical data of one system to a CSV file.

Request

POST https://na.airvantage.net/api/v1/operations/systems/{uid}/export/data/historical
Content-Type: application/json
...
{
    "dataset" : "3ed6cd7426604ee0bca9fe01f2521230",
    "data" : ["_RSSI", "261"],
    "fromDate" : "1341093600",
    "toDate" : "1341180000"
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"4b89657f63aac4b299c1d46e98a495326"
}
{
    "notify" : true|false,
    "callback" : "callback_url",,
    "dataset" : "dataset_uid",
    "data" : ["data_id", ... ],
    "fromDate" : "from_date",
    "toDate" : "to_date"
}
                            
Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes optional boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
dataset The uid of the dataset to export optional string
data The list of data id or generated data to export
See generated data
optional string
fromDate The historical data values created after a given date time will be exported optional timestamp
toDate The historical data values created before a give date time will be exported optional timestamp

At least 'dataset' or 'data' should be set.

Name Description
system.unknown Raised when no system matches the 'uid'.
dataset.unknown The specified dataset is unknown
dataset.or.data.missing Could not find data to read because dataset, data or both were missing or unknown.
invalid.timerange toDate parameter is lower than fromDate parameter.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.export

/v1/operations/systems/usages/import

Imports data usage from a CSV file.

Request

POST https://na.airvantage.net/api/v1/operations/systems/usages/import
Content-Type: application/octet-stream
...
Content-Lenght:569874
...
// CSV attached

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"4b89657f63aac4b299c1d46e98a495326"
}
Name Description Use Default Type
company Set the context company. Referenced subscriptions in the file must belong to this company and have to be linked to an existing system. optional caller's company uid string
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
Header Description Use
SUBSCRIPTION[subscriptionIdentifier] The identifier of an existing subscription.
subscriptionIdentifier must be one of : UID, IDENTIFIER, NETWORK IDENTIFIER.
required
TYPE The type of the usage.
Must be one of : DATA, VOICE_IN, VOICE_OUT, SMS_SENT, SMS_RECEIVED
required
SESSION_ID Identifier of the session. Used to differentiate 2 identical usage records. optional
TIMESTAMP If TYPE is DATA or VOICE_IN/OUT, it corresponds to the start of session.
If TYPE is SMS_SENT or SMS_RECEIVED, it corresponds to the send/reception date of the SMS.
The expected format is a timestamp in milliseconds.
required
DURATION The duration of the session in seconds. Value must be equal or greater than 0.
Only used for DATA or VOICE_IN/OUT usage.
required for DATA & VOICE_IN/OUT usage
BYTES_SENT The volume of data sent in bytes. Value must be equal or greater than 0 and BYTES_RECEIVED has to be set.
Only used for DATA usage.
optional
BYTES_RECEIVED The volume of data received in bytes. Value must be equal or greater than 0 and BYTES_SENT has to be set.
Only used for DATA usage.
optional
BYTES_TOTAL The total volume of data in bytes. Value must be equal or greater than 0.
If BYTES_SENT and BYTES_RECEIVED are set then BYTES_TOTAL can be null or equals to BYTES_SENT + BYTES_RECEIVED.
Only used for DATA usage.
optional
PHONE_NUMBER If type is VOICE_IN/OUT, it is the calling/called number.
If type is SMS_RECEIVED, it is the source phone number.
If type is SMS_SENT, it is the target phone number.
Only used for VOICE_IN/OUT, SMS_SENT, SMS_RECEIVED usage.
required for VOICE_IN/OUT, SMS_SENT & SMS_RECEIVED usage

If type is DATA, at least one of (BYTES_SENT and BYTES_RECEIVED) or BYTES_TOTAL is expected.

Name Description
file.unreadable Raised when file is unreadable.
file.header.missing Raised when CSV header is missing.
csv.header.unknown.column Raised when CSV header column is unknown.
file.missing.data Raised when file contains no data.
file.too.large Raised when files size is more than 10MB.
operation.system.import.usages.missing.bytes Raised when BYTES_SENT, BYTES_RECEIVED, BYTES_TOTAL are incorrectly filled / inconsistent.
operation.system.import.usages.bytes.total.mismatch Raised when BYTES_TOTAL is filled and is not equal to BYTES_SENT + BYTES_RECEIVED.
operation.system.import.usages.missing.duration Raised when DURATION is missing.
operation.system.import.usages.missing.phonenumber Raised when PHONENUMBER is missing.
operation.system.import.usages.missing.subscription Raised when subscription identifier(s) is (are) missing.
operation.system.import.usages.already.exist Raised when a usage entry already exists for the given subscription at the given timestamp
subscription.unknown Raised when no subscription was found under the given identifier(s) (UID, identifier, network identifier) in the context company.
subscription.not.unique.identifiers Raised when more than one identifier has been provided for the subscription (UID, identifier, network identifier) and they do not match a single subscription in AirVantage.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/octet-stream
Permissions entities.systems.usages.create

/v1/systems/{uid}/usages/records

Gets list of data usage records for the given system. Most recent records are returned first.

Request

GET https://na.airvantage.net/api/v1/systems/3c12547b613740adb686271bdc8f097c/usages/records?to=1348836330000

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
[
      {
         "uid": "2c12547b613740adb686271bdc8f0978",
         "type": "DATA",
         "start": 1348836320150,
         "end": 1348836320250,
         "visitedNetwork": null,
         "visitedCountry": null,
         "visitedMnc": null,
         "visitedMcc": null,
         "servedImsi": null,
         "servedImei": null,
         "bytesSent": 512,
         "bytesReceived": 512,
         "bytesTotal": 1024,
         "roundedBytesTotal": 1024,
         "apn": "internet.mbqt.net",
         "pdpAddress": null,
         "ratType": null
      },
      {
         "uid": "8006cc58ba2141f69161a78f1bfdea1d",
         "type": "VOICE_IN",
         "start": 1348836320088,
         "end": 1348836320189,
         "visitedNetwork": null,
         "visitedCountry": null,
         "visitedMnc": null,
         "visitedMcc": null,
         "servedImsi": null,
         "servedImei": null,
         "servedMsisdn": null,
         "phoneNumber" : "0606060606",
         "roundedDuration" : 60000
      },
      {
         "uid": "547b613740a006cc58ba2db686a2141f",
         "type": "SMS_SENT",
         "start": 1348836320070,
         "visitedNetwork": null,
         "visitedCountry": null,
         "visitedMnc": null,
         "visitedMcc": null,
         "servedImsi": null,
         "servedImei": null,
         "servedMsisdn": null,
         "phoneNumber" : "0606060606"
      },
      {
         "uid": "06cc5847b613540a07ba2db686a2141f",
         "type": "SMS_RECEIVED",
         "start": 1348836320030,
         "visitedNetwork": null,
         "visitedCountry": null,
         "visitedMnc": null,
         "visitedMcc": null,
         "servedImsi": null,
         "servedImei": null,
         "servedMsisdn": null,
         "phoneNumber" : "0606060606"
      },
      {
         "uid": "06cc58ba2db686547b613740a0a2141f",
         "type": "MSU",
         "start": 1348836320040,
         "visitedNetwork": null,
         "visitedCountry": null,
         "visitedMnc": null,
         "visitedMcc": null,
         "servedImsi": null,
         "servedImei": null
      }
]
Name Description Use Default Type
from Inclusive timestamp representing the beginning of the period. optional Current time less 3 months timestamp
to Exclusive timestamp representing the end of the period. optional current time timestamp
size The result size. Max result size: 500. optional 100 int
Name Description
system.unknown Raised when no system matches the 'uid'.
invalid.timerange Raised when 'from' is bigger than 'to'
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers none
Permissions entities.systems.view

/v1/systems/usages/records

Gets a list of data usage for a selection of systems. Most recent records are returned first.

Request

GET https://na.airvantage.net/api/v1/systems/usages/records?to=1348836330000&targetIds=3c12547b613740adb686271bdc8f097c,e91c1fa4dbaa4367bdcf9b9f93afe564

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
{
    "3c12547b613740adb686271bdc8f097c" : {
        "SMS_RECEIVED": [{
                    "ts": 1385115215256,
                    "v": {
                        "uid":"6f501c994c464d049e98adf4261656c4"
                    }
                }, {
                    "ts": 1385115215253,
                    "v": {
                        "uid":"3e06594f225c4a1c9ceb94e4365250e2"
                    }
                }],
        "DATA": [{
                    "ts": 1385115215254,
                    "v": {
                        "uid":"ee06594f225c4a1c9ceb94e4365250ea",
                        "end": 1385115215300
                    }
                }]
    },
    "e91c1fa4dbaa4367bdcf9b9f93afe564": {
        "SMS_SENT": [{
                "ts": 1385115215255,
                "v": {
                    "uid":"eb0e919503c5495d894aff06e2f90cc1"
                }
            }],
        "VOICE_IN" : [{
                "ts": 1385115215254,
                "v": {
                    "uid":"7e06594f225c4a1c9ceb94e4365250e4",
                    "end": 1385115215400
                }
            }]
    }
}
Name Description Use Default Type
from Inclusive timestamp representing the beginning of the period. optional Current time less 3 months timestamp
to Exclusive timestamp representing the end of the period. optional current time timestamp
size The result size. Max result size: 500. optional 100 int
targetIds The list of systems ids separated by a ','. It is only possible to request up to 5 ids. required - string
Name Description
system.unknown Raised when no system matches any of the 'uid'.
invalid.timerange Raised when 'from' is bigger than 'to'
aggregation.too.many.targets It is only possible to request up to 5 targets.
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers none
Permissions entities.systems.view

/v1/systems/{uid}/usages/records/{uid}

Gets details of a given record.

Request

GET https://na.airvantage.net/api/v1/systems/3c12547b613740adb686271bdc8f097c/usages/records/8006cc58ba2141f69161a78f1bfdea1d

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
    "uid": "3c12547b613740adb686271bdc8f097c",
    "type": "DATA",
    "visitedNetwork": null,
    "start": 1348836320150,
    "end": 1348836320250,
    "bytesSent": 450,
    "bytesReceived": 120,
    "bytesTotal": 570,
    "apn": "internet.mbqt.net"
}

Records contents depend on theirs type.

Commons fields

Name Description
uid The unique identifier of the record. Record id shall be constant for a given session (same for all interim records).
type The type of the usage: DATA, SMS_SENT, SMS_RECEIVED, VOICE_IN, VOICE_OUT or MSU.
visitedNetwork The visited mobile network operator.
visitedCountry The visited mobile network operator country.
visitedMnc The Mobile Network Code.
visitedMcc The Mobile Country Code.
servedImsi The IMSI of the device to which the record is attached.
servedImei The IMEI of the subscriber.
servedMsisdn The MSISDN of the subscriber.

DATA

Name Description
start The start date of the communication session. It's a timestamp in milliseconds.
end The end date of the communication session. This date is equal to the start date if it's an interim record. It's a timestamp in milliseconds.
bytesSent The volume of data sent by the system in bytes.
bytesReceived The volume of data received by the system in bytes.
bytesTotal The total volume of data in bytes for the communication session.
roundedBytesTotal The total volume of data in bytes exchanged during the communication session, to which billing increments are applied.
apn The access point name.
pdpAddress The PDP context IP address.
ratType The Radio Access Technology (RAT) at the session start.

SMS_SENT

Name Description
start The send date of the sms. It's a timestamp in milliseconds.
phoneNumber The MSISDN of the peer entity involved in the communication. It is a SMS initiated by the subscriber (MO), the peer entitee is the callee.

SMS_RECEIVED

Name Description
start The received date of the sms. It's a timestamp in milliseconds.
phoneNumber The MSISDN of the peer entity involved in the communication. It is a SMS received by the subscriber (MT), the peer entity is the caller.

VOICE_IN

>
Name Description
start The start date of the voice session. It's a timestamp in milliseconds.
end The end date of the voice session. It's a timestamp in milliseconds.
phoneNumber The MSISDN of the peer entity involved in the communication. It is a call received by the subscriber (MT), the peer entity is the caller.
roundedDurationThe duration of the call to which the billing increments are applied.

VOICE_OUT

Name Description
start The start date of the voice session. It's a timestamp in milliseconds.
end The end date of the voice session. It's a timestamp in milliseconds.
phoneNumber The MSISDN of the peer entity involved in the communication. It is a call initiated by the subscriber (MO), the peer entitee is the callee.
roundedDuration The duration of the call to which the billing increments are applied.

MSU

Name Description
start The date of the USSD message unit. It's a timestamp in milliseconds.
Name Description
system.unknown Raised when no system matches the 'uid'.
record.unknown Raised when no record matches the 'uid'.
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers none
Permissions entities.system.view

/v1/systems/{uid}/messages

Retrieves the list of past messages. The uid, timestamp, protocol and datapoints count are retrieved. Duplicate data are counted.

Request

GET https://na.airvantage.net/api/v1/systems/6500ee29f8ed4e3991dff484b3ce3e73/messages?fromDate=1341093600
...

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "next": "https://na.airvantage.net/api/v1/systems/6500ee29f8ed4e3991dff484b3ce3e73/messages?fromDate=1341093600&toDate=1349181782870",
   "messages":    [
      {
         "uid": "3c12547b613740adb686271bdc8f097c",
         "timestamp": 1348836320188,
         "protocol" : "MSCI",
         "nbDataPoints" : 3
      },
      {
         "uid": "8006cc58ba2141f69161a78f1bfdea1d",
         "timestamp": 1348836320566
         "protocol" : "MSCI",
         "nbDataPoints" : 2
      }

      ...

   ]
}
Name Description Use Default Type
from Period to retrieve messages. optional Current time less 3 months long
to Period to retrieve messages. optional Current time long
fromDate Period to retrieve messages. Deprecated, use 'from' instead. optional Current time less 3 months long
toDate Period to retrieve messages. Deprecated, use 'to' instead. optional Current time long
size The result size. Max result size: 500. optional 100 long
Name Description
system.unknown Raised when no system matches the 'uid'.
system.invalid.timerange Raised when 'toDate' and 'fromDate'parameters are invalid
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers none
Permissions entities.systems.view

/v1/systems/{uid}/messages/{uid}

Gets message details which consist in its uid, timestamp, protocol, datapoints count and the data sent by the device during this message. Duplicate data are counted.

Request

GET https://na.airvantage.net/api/v1/systems/6500ee29f8ed4e3991dff484b3ce3e73/messages/4ea65e29f8ed41dff4dff484b3ce3e73
...

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
      "uid": "3c12547b613740adb686271bdc8f097c",
      "timestamp": 1348836320188,
      "protocol" : "MSCI",
      "nbDataPoints": 8,
      "data":    {
          "10": [{"timestamp" : "1349907137", "value" : "NOTSET"}],
          "25": [{"timestamp" : "1349907137", "value" : "CA1200202571004"}],
          "261": [
             {
               "value": "-192",
               "timestamp": 1348683054569
             },
             {
               "value": "-97",
               "timestamp": 1348503053478
             },
             {
               "value": "-102",
               "timestamp": 1348303057000
             }],
          "_rssi_level" : [
             { "value": "NO_SIGNAL",
               "timestamp": 1348683054569
             },
             {
               "value": "FAIR",
               "timestamp": 1348503053478
             },
             {
               "value": "POOR",
               "timestamp": 1348303057000
             }]
      }
}
Name Description
system.unknown Raised when no system matches the 'uid'.
HTTP Method GET
Requires Authentication Yes
Rate Limited Yes
Headers none
Permissions entities.systems.view

/v1/operations/systems/label

Adds or removes labels to systems matching a given criteria. When no criteria are set, all systems in the company will be labelled.

Request

POST https://na.airvantage.net/api/v1/operations/systems/label
Content-Type: application/json
...
{
   "labels" : {
      "add" : ["france"]
   },
   "criteria" : {
      "activityState" : ["ACTIVATED", "SUSPENDED"]
   }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4b299c1d46e98a495326"
}
{
    "notify" : true|false,
    "callback" : "callback_url",,
    "labels" : {
        "add" : ["Label1", ...],
        "remove" : ["Label2", ...]
    },
    "criteria" : {
        "uids" : ["uid1", ...],
        "labels" : ["label1", ...],
        "name" : "name",
        "states" : ["state1", ...],
        "lifeCycleStates" : ["state1", ...],
        "activityStates" : ["activity1", ...],
        "type" : "type",
        "lastAppliedTemplate" : "template",
        "lastConfigName" : "config",
        "commStatus" : "comm_status",
        "syncStatus" : "sync_status",
        "lastCommAfter" : timestamp,
        "lastCommBefore" : timestamp,
        "creationAfter" : timestamp,
        "creationBefore" : timestamp,
        "activationAfter" : timestamp,
        "activationBefore" : timestamp,
        "lastStateChangeAfter" : timestamp,
        "lastStateChangeBefore" : timestamp,
        "lastSyncAfter" : timestamp,
        "lastSyncBefore" : timestamp,
        "application" : {
            "uid" : "uid",
            "name" : "name",
            "revision" : "revision",
            "type" : "type",
        },
        "gateway" : {
            "uid" : "uid",
            "type" : "type",
            "imei" : "imei",
            "macAddress" : "mac_address",
            "serialNumber" : "serial_number"
        },
        "subscription" : {
            "uid" : "uid",
            "operator" : "operator",
            "identifier" : "identifier",
            "mobileNumber" : "mobile_number",
            "networkIdentifier" : "network_identifier",
            "eid" : "eid",
            "ipAddress" : "ip_address",
            "requestedIp" : "requested_ip_address",
            "appletGeneration" : "V1|V2|V3|V4",
            "formFactor" : "2FF|3FF|4FF|MFF|COMBO|WLCSP|DFN6",
            "confType" : "LITE|ADVANCED|ADVANCED_NODATA|TAILORED|BROADBAND|PASSIVE|MBQT_V1|MBQT_V2|MBQT_V3|LITE2|ADVANCED2|ADVANCED2_NODATA",
            "technology" : "2G/3G|4G",
            "productRefName" : "product_ref"
        },
        "data" : {
            "rssiLevel" : "rssi_level",
            "ecioLevel" : "ecio_level",
            "networkServiceType" : "network_service_type",
            "roamingStatus" : "roaming status",
            "signalStrength" : "signal_strength",
            "rsrpLevel" : "rsrp_level",
            "rsrqLevel" : "rsrq_level"
        }
    },
    "dependsOn" : {
        "operation" : "uid",
        "states" : ["FAILURE"]
    },
    "identifiers" : {
        "name" : ["name1", "name2"],
        "gatewaySerialNumber" : ["serial1", "serial2"],
        "gatewayImei" : ["imei1", "imei2"],
        "gatewayMacAddress" : ["mac1", "mac2"],
        "subscriptionIdentifier" : ["iccid1", "iccid2"],
        "subscriptionNetworkIdentifier" : ["imsi1", "imsi2"],
        "subscriptionIpAddress" : ["ipAddr1", "ipAddr2"],
        "subscriptionEid" : ["eid1", "eid2"]
    }
}
                            

Add or remove labels should be required
Either 'criteria', 'dependsOn' or 'identifiers' should be set.
If 'identifiers' is set, either 'name', 'gatewaySerialNumber', 'gatewayImei', 'gatewayMacAddress', 'subscriptionIdentifier', 'subscriptionNetworkIdentifier', 'subscriptionIpAddress' or 'subscriptionEid' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes optional boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
labels.add The list of labels to add required string
labels.remove The list of labels to remove required string
dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
identifiers List of identifiers to be used to identify systems. The understandable identifiers are : system name, serial number, IMEI, MAC address, ICCID, IMSI and IP address.
A maximum of 5000 identifiers can be provided.
optional string
identifiers.name List of system name to be used to identify systems.
A maximum of 5000 names can be provided.
optional string
identifiers.gatewaySerialNumber List of serial number to be used to identify systems.
A maximum of 5000 serial numbers can be provided.
optional string
identifiers.gatewayImei List of IMEI to be used to identify systems.
A maximum of 5000 IMEIs can be provided.
optional string
identifiers.gatewayMacAddress List of MAC address to be used to identify systems.
A maximum of 5000 MAC addresses can be provided.
optional string
identifiers.subscriptionIdentifier List of subscription identifier (ICCID / ESN) to be used to identify systems.
A maximum of 5000 subscription identifiers can be provided.
optional string
identifiers.subscriptionNetworkIdentifier List of subscription network identifier (IMSI / MIN) to be used to identify systems.
A maximum of 5000 subscription network identifiers can be provided.
optional string
identifiers.subscriptionIpAddress List of subscription IP address to be used to identify systems.
A maximum of 5000 subscription IP addresses can be provided.
optional string
identifiers.subscriptionEid List of subscription EID to be used to identify systems.
A maximum of 5000 subscription EID can be provided.
optional string
criteria.uids Can contain no more than 100 system unique identifier. optional uid
criteria.labels Labels all systems which have one of the specified label. optional string
criteria.name Labels all systems whose name contains the given string. optional string
criteria.states Labels all systems matching the specified states.
States are : INVENTORY, READY, DEPLOYED, MAINTENANCE.
optional string
criteria.lifeCycleStates Labels all systems matching the specified lifecycle states.
States are : INVENTORY, ACTIVE, TEST_READY, SUSPENDED, RETIRED.
optional string
criteria.type Labels all systems whose type contains the given string. optional string
criteria.lastAppliedTemplate Labels all systems with last applied template name matching the specified template value. optional string
criteria.lastConfigName Labels all systems with last configuration name matching the specified configuration value. optional string
criteria.activityStates Labels all systems matching the given activity state.
States are : ACTIVATED, SUSPENDED, ARCHIVED, PURGED.
optional string
criteria.metadata Labels all systems matching the specified metadata optional string
criteria.lastCommAfter Labels all systems with a last communication date after the given date.
The specified date is included.
optional timestamp
criteria.lastCommBefore Labels all systems with a last communication date before the given date.
The specified date is included.
optional timestamp
criteria.creationAfter Labels all systems created after the given date. The specified date is included. optional timestamp
criteria.creationBefore Labels all systems created before the given date. The specified date is included. optional timestamp
criteria.activationAfter Labels all systems activated after the given date. The specified date is included. optional timestamp
criteria.activationBefore Labels all systems activated before the given date. The specified date is included. optional timestamp
criteria.lastStateChangeAfter Labels all systems whose state changed after the given date. The specified date is included. optional timestamp
criteria.lastStateChangeBefore Labels all systems whose state changed before the given date. The specified date is included. optional timestamp
criteria.lastSyncAfter Label all systems with a last synchronization date after the given date. The specified date is included. optional null timestamp
criteria.lastSyncBefore Label all systems with a last synchronization date before the given date. The specified date is included. optional null timestamp
criteria.commStatus Labels all systems with the given communication status.
Status are : OK, ERROR, WARNING, UNDEFINED.
optional string
criteria.syncStatus Label all systems with the given synchronization status. Status are OK, ERROR, WARNING, NOT_SYNC. optional null string
criteria.application.uid Labels all systems which contain the application having the specified uid. optional string
criteria.application.name Labels all systems which contain an application whose name contains the given string. optional string
criteria.application.revision Labels all systems which contain an application whose revision contains the given string. optional string
criteria.application.type Labels all systems which contain an application whose type contains the given string. optional string
criteria.gateway.uid Labels all systems linked to the gateway having the specified uid. optional uid
criteria.gateway.type Labels all systems linked to a gateway whose type contains the given string. optional string
criteria.gateway.imei Labels all systems linked to a gateway whose imei contains the given string. optional string
criteria.gateway.macAddress Labels all systems linked to a gateway whose MAC address contains the given string. optional string
criteria.gateway.serialNumber Labels all systems linked to a gateway whose serial number contains the given string. optional string
criteria.subscription.uid Labels all systems linked to the subscription having the specified uid. optional uid
criteria.subscription.operator Labels all systems linked to a subscription matching the specified operator. optional string
criteria.subscription.identifier Labels all systems linked to a subscription whose identifier contains the given string. optional string
criteria.subscription.mobileNumber Labels all systems linked to a subscription whose mobile number contains the given string. optional string
criteria.subscription.networkIdentifier Labels all systems linked to a subscription whose network identifier contains the given string. optional string
criteria.subscription.ipAddress Labels all systems linked to a subscription whose IP address contains the given string. optional string
criteria.subscription.requestedIp Labels all systems linked to a subscription whose requested IP address contains the given string. optional string
criteria.subscription.eid Labels all systems linked to a subscription whose eUICC-ID contains the given string. optional string
criteria.subscription.appletGeneration Labels all systems linked to a subscription matching the specified SIM applet generation. optional string
criteria.subscription.formFactor Labels all systems linked to a subscription matching the specified SIM form factor. optional string
criteria.subscription.confType Labels all systems linked to a subscription matching the specified SIM configuration type. optional string
criteria.subscription.technology Labels all systems linked to a subscription matching the specified SIM technology. optional string
criteria.data.rssiLevel Labels all systems matching the specified rssi level optional string
criteria.data.ecioLevel Labels all systems matching the specified ecio level optional string
criteria.data.networkServiceType Labels all systems matching the specified network service type optional string
criteria.data.roamingStatus Labels all systems matching the specified roaming status optional string
criteria.data.signalStrength Labels all systems matching the specified signal strength value optional string
criteria.data.rsrpLevel Labels all systems matching the specified rsrp level value optional string
criteria.data.rsrqLevel Labels all systems matching the specified rsrq level value optional string
Name Description Use Default Type Operand
company Labels all systems available for the company. optional caller's company uid =
Name Description
label.missing The list of label to add or remove is empty.
label.amount.exceeded The number of labels to add or remove is greater than 100.
selection.empty There is no system matching the given criteria.
selection.invalid The selection is invalid. The possible causes are :
  • Only one of the following attributes has to be set : criteria, dependsOn, identifiers
  • 'dependsOn' is defined but 'dependsOn.operation' is not set
  • If 'identifiers' is set, only one of the following attributes has to be set : 'name', 'gatewaySerialNumber', 'gatewayImei', 'gatewayMacAddress', 'subscriptionIdentifier', 'subscriptionNetworkIdentifier', 'subscriptionIpAddress'
selection.too.many.identifiers The list of identifiers contains more than 5000 elements.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers none
Permissions entities.systems.edit

/v1/operations/systems/transfer

Transfers a selection of systems to a partner company.

Request

POST https://na.airvantage.net/api/v1/operations/systems/transfer
Content-: application/json
...
{
  "destination" : "787ef34132fe89734acb9871",
  "systems" : {
     "uids" : ["sys1", "sys2"]
  }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4b299c1d46e98a495326"
}
{
    "notify" : true|false,
    "callback" : "callback URL",
    "destination" : "xxx",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["SUCCESS"]
        }
    },
    "offerId" : "offer_uid"
}
                        
Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes optional false boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
destination The uid of the destination company required uid
offerId Identifier of the target Offer. This offer has to exist in the destination company. optional uid

Either 'label' or 'uids' or 'dependsOn' should be set.


Name Description Use Default Type
company Set the context company. optional caller's company uid
Name Description
company.missing The destination company identifier is missing.
partner.unknown The destination company is not a partner.
system.unknown One of the specifed uid doesn't correspond to an existing system.
selection.empty The given label selection returns no system.
selection.invalid The given selection is either empty or defined both uids and label.
selection.max.uid.reached The given selection contains more than 100 uids.
system.limit.exceeded No more system can be created in the target company
operation.transfer.system.incompatible.operator.account There is no compatible operator account in the target company
operation.transfer.system.gateway.invalid.state The gateway linked to the system must be in inventory
operation.transfer.system.linked.to.private.application A system with private application(s) cannot be transfered
operation.transfer.system.incompatible.offer The target offer is incompatible
operation.transfer.system.missing.offer The target offer is missing
operation.transfer.system.unknown.offer The target offer is unknown
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.transfers.create entities.systems.create (in partner)

/v1/operations/systems/swapsim

Swaps SIM between two systems.

Returns the uid of the created operation.

Request

POST https://na.airvantage.net/api/v1/operations/systems/swapsim
Content-: application/json
...
{
    "identifierType" : "uid",
    "systems" : {
        "sys1", "sys2"
    }
  }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4b299c1d46e98a495326"
}
{
    "notify" : true|false,
    "callback" : "callback_url",
    "identifierType" : "uid",
    "systems" : {
        "xxx": "yyy"
    }
}
                        
Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes optional false boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
identifierType Identifier type used to identify the systems. (Could be uid, name, gatewaySerialNumber, gatewayImei, gatewayMacAddress, subscriptionIdentifier, subscriptionNetworkIdentifier, or subscriptionIpAddress) optional uid string
systems A map of source:target systems identifiers to swap sim for required map
Name Description Use Default Type
company Set the context company. optional caller's company uid
Name Description
operation.system.swapsim.system.invalid.state The source or target system is in invalid lifeCycleState.
Source system must be ACTIVE, SUSPENDED or TEST_READY.
Target system must be INVENTORY.
operation.system.swapsim.unsupported.operation The subscription doesn't not support SWAP SIM operation.
operation.system.swapsim.system.unknown.subscription The source or target system is not linked to subscription.
operation.system.swapsim.system.different.operator.accounts The source and target subscriptions must have the same operator account.
operation.system.swapsim.system.linked.gateway The target system must not have gateway.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.network.swapsim

/v1/operations/systems/import

Imports and creates systems from a CSV file.
Default values can be specified for state and type attributes, either by using 'defaultState' and 'defaultType' request parameters or by attaching a JSON entity part to the request. In this case, the default state and type values of the JSON part are used instead of those specified in the parameters. Additionnaly, the systems can be imported with a default list of applications.
While the name of the CSV part is free, the JSON part of the request must be named 'defaultValues'

Request

POST https://na.airvantage.net/api/v1/operations/systems/import
Content-type: multipart/mixed; boundary="BoundaryUgix6QHMxLwJ4siU"
--BoundaryUgix6QHMxLwJ4siU
Content-Disposition: form-data; name="file"; filename="file.csv"
Content-Type: text/csv
// CSV attached
...
--BoundaryUgix6QHMxLwJ4siU
// JSON attached
Content-Disposition: form-data; name="parameters"; filename="parameters.json"
Content-Type: application/json
{
"defaultApplications" : ["45aa62ac003841fb8fb5b3b21cdf7f86","45aa62ac003841fb8fb5b3b21cdf7f87"],
"defaultType" : "myType",
"defaultState" : "DEPLOYED"
}
--BoundaryUgix6QHMxLwJ4siU--

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"4b89657f63aac4b299c1d46e98a495326"
}
Name Description Use Default Type
company Set the context where the new systems will be created. optional caller's company uid
Header Description Use
NAME The name of the new system optional
TYPE The value of the type attribute of the new system. optional
LABELS The labels of the new system, separated by a '|' character. optional
GATEWAY[gatewayHeader] The gateway columns used to create a new gateway linked to the new system.
The system labels are inherited by the gateway.
The gatewayHeader must be one of the headers available for gateways import (See Import of gateways.).
optional
GATEWAY_METADATA[gatewayMetadataName] A metadata of the new gateway that will be linked to the new system. optional
GATEWAY_REF[gatewayIdentifier] The identifier of an existing gateway that must be linked to the new system.
gatewayIdentifier must be one of : UID, IMEI, MAC ADDRESS, SERIAL NUMBER.
optional
SUBSCRIPTION[subscriptionHeader] The subscription columns used to create a new subscription linked to the new system.
The system labels are inherited by the subscription.
The subscriptionHeader must be one of the headers available for subscriptions import (See Import of subscriptions.).
optional
SUBSCRIPTION_REF[subscriptionIdentifier] The identifier of an existing subscription that must be linked to the new system.
subscriptionIdentifier must be one of : UID, IDENTIFIER.
optional
METADATA[metadataName] A metadata for the system.
metadataName is used as name of the metadata.
optional
MSCI[parameter] Necessary parameters to establish a server initiated connection. Paramaters are : host, user, password. optional
M3DA[parameter] Security parameters to establish successful communications with the device. Parameters are : registrationPassword, password optional
REST[password] Security parameter to establish successful communications with the device. optional
MQTT[password] Security parameter to establish successful communications with the device. optional
{
    "notify" : true|false,
    "callback" : "callback_url",
    "defaultApplications" : ["app_uid1", ...],
    "defaultType" : "myType",
    "defaultState" : "DEPLOYED"
}
                    
Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional false boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
defaultApplications The list of public or company owned applications optional uid string
defaultState The default state of the new systems.
This parameter is ignored if you specify the 'STATE' column in the CSV file.
optional string
defaultType The default type of the new systems.
This parameter is ignored if you specify the 'TYPE' column in the CSV file.
optional string
Name Description
file.unreadable File is unreadable
file.header.missing CSV header is missing
csv.header.unknown.column CSV header column is unknown
file.missing.data File contains no data
file.too.large Files cannot be more than 10MB
system.limit.exceeded" No more system can be created
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: multipart/form-data
Permissions entities.systems.create

/v1/operations/systems/edit

Edits a list of systems from a CSV file.
Default values can be specified for the type attribute, either by using 'defaultType' request parameter or by attaching a JSON entity part to the request. In this case, the default type value of the JSON part is used instead of the one specified in the request parameters. Additionnaly, the systems can be imported with a default list of applications.
While the name of the CSV part is free, the JSON part of the request must be named 'defaultValues'

Request

POST https://na.airvantage.net/api/v1/operations/systems/edit
Content-type: multipart/mixed; boundary="BoundaryUgix6QHMxLwJ4siU"
--BoundaryUgix6QHMxLwJ4siU
Content-Disposition: form-data; name="file"; filename="file.csv"
Content-Type: text/csv
// CSV attached
...
--BoundaryUgix6QHMxLwJ4siU
Content-Disposition: form-data; name="parameters"; filename="parameters.json"
Content-Type: application/json
// JSON attached
{
"defaultApplications" : ["45aa62ac003841fb8fb5b3b21cdf7f86","45aa62ac003841fb8fb5b3b21cdf7f87"],
"defaultType" : "myType"
}
--BoundaryUgix6QHMxLwJ4siU--

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"4b89657f63aac4b299c1d46e98a495326"
}
Name Description Use Default Type
company Set the context where the systems will be updated. optional caller's company uid
Header Description Use
UID The uid of the system to update required
NAME The name of the system optional
TYPE The value of the type attribute of the new system. optional
LABELS The labels of the system, separated by a '|' character. optional
GATEWAY[gatewayHeader] The values of these columns will create a new gateway to be linked to the system. However, if these values reference an existing gateway, it will be updated and linked to the system.
The gatewayHeader must be one of the headers available for gateways import (See Import of gateways.).
optional
GATEWAY_REF[gatewayIdentifier] The identifier of an existing gateway that will be linked to the system.
gatewayIdentifier must be one of : UID, IMEI, MAC ADDRESS, SERIAL NUMBER.
optional
SUBSCRIPTION[subscriptionHeader] The subscription columns used to create a new subscription linked to the new system.
The system labels are inherited by the subscription.
The subscriptionHeader must be one of the headers available for subscriptions import (See Import of subscriptions.).
optional
SUBSCRIPTION_REF[subscriptionIdentifier] The identifier of an existing subscription that will be linked to the system.
subscriptionIdentifier must be one of : UID, IDENTIFIER.
optional
METADATA[metadataName] A metadata for the system.
metadataName is used as name of the metadata.
optional
MSCI[parameter] Necessary parameters to establish a server initiated connection. Paramaters are : host, user, password. optional
M3DA[parameter] Security parameters to establish successful communications with the device. Parameters are : registrationPassword, password optional
REST[password] Security parameter to establish successful communications with the device. optional
MQTT[password] Security parameter to establish successful communications with the device. optional
{
    "notify" : true|false,
    "callback" : "callback_url",
    "defaultApplications" : ["app_uid1", ...],
    "defaultType" : "myType"
}
                    
Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
defaultApplications The list of public or company owned applications. optional uid
defaultType Set the default type to use for all systems of the CSV file.
This parameter is ignored if you specify the 'TYPE' column in the CSV file.
optional string
Name Description
file.unreadable File is unreadable
file.header.missing CSV header is missing
csv.header.unknown.column CSV header column is unknown
file.missing.data File contains no data
file.too.large Files cannot be more than 10MB
system.unknown Raised when no system matches the 'uid'.
gateway.being.transferred Raised when gateway is being transferred to a partner
gateway.missing Raised when no gateway is specified.
gateway.missing.identifiers Raised when missing gateway identifiers (IMEI or SERIAL or MAC).
gateway.not.unique.identifiers Raised when one of the gateway identifiers already exists (IMEI or SERIAL or MAC).
gateway.invalid.imei Raised when gateway IMEI is invalid.
gateway.invalid.esn Raised when gateway ESN is invalid.
gateway.invalid.meid Raised when gateway MEID is invalid.
gateway.invalid.mac.address Raised when gateway MAC address is invalid.
gateway.unknown Raised when gateway is unknown.
application.not.unique Raised when the application already exists.
applications.protocol.conflicts Raised when more than one application on the system use the same protocol
system.applications.type.not.unique Raised when application type is not unique
system.communication.identifier.already.used Raised when communication identifier is aldready used
subscription.assigned Raised when a subscription is already assigned to another system
gateway.assigned Raised when a gateway is already assigned to another system
system.invalid.m3da.registration.password Raised when the format of M3DA registration password is invalid
system.invalid.m3da.password Raised when the format of M3DA password is invalid
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/octet-stream
Permissions entities.systems.edit

/v1/operations/systems/delete

Deletes several systems. As this operation may be long, depending on the number of systems to delete, it is done asynchronously. Gateway and subscription linked to a system could be deleted at the same time.

Request

POST https://na.airvantage.net/api/v1/operations/systems/delete
Content-Type: application/json
...
{
   "systems" : {
      "uids" : ["16199496f6d24f0691fa006ef53e5592"]
   },
   "deleteGateways" : "true",
   "deleteSubscriptions" : "false"
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"4b89657f63aac4b299c1d46e98a495326"
}
Name Description Use Default Type
company Set the context where systems will be deleted. optional caller's company uid
{
   "notify" : "true|false"
   "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "deleteGateways" : "true|false",
    "deleteSubscriptions" : "true|false"
}

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional false boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
deleteGateways True indicates that the gateway linked to the systems will be deleted. optional false boolean
deleteSubscriptions True indicates that the subscription linked to the system will be deleted. optional false boolean
Name Description
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.delete

/v1/operations/systems/data/retrieve

Retrieves data from a set of systems defined by a label or a list of uids.

Request

POST https://na.airvantage.net/api/v1/operations/systems/data/retrieve
Content-Type: application/json
...
{
    "systems" : {
       "uids" : ["0fda23be05fc4edaa8d92c4091dd7f93"]
    },
    "data" : [
          "car1.engine.sparkplug.state"
    ]
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4b299c1d46e98a495326"
}
{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : "request_connection",
    "protocol" : "protocol_name",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "data" : ["data1", ...]
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
protocol When this attribute is set, the settings message will be send thought this protocol. Otherwise, definitions will be collected from applications declared on systems. optional string
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
data The list of data to retrieve identified by their id. required string
Name Description Use Default Type
company Set the context where the retrieve operation is performed. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.missing.data.ids The list of data to retrieve is empty
operation.data.undefined The data is not defined for a system.
operation.all.data.undefined All specified data are not defined for a system.
operation.on.system.missing.comm.identifiers The system do not have any communication identifiers declared.
operation.protocol.not.found.on.system.for.encoding The protocol is not supported by the system.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.retrieve.data

/v1/operations/systems/settings

Applies a list of settings on a set of systems defined by a label or a list of uid.

Request

POST https://na.airvantage.net/api/v1/operations/systems/settings
Content-Type: application/json
...
{
    "protocol" : "m3da",
    "systems" : {
       "label" : "labege"
    },
    "settings" : [
       {
          "key" : "car.engine.speed",
          "value" : 120
       },
       {
          "key" : "car.engine.boost",
          "value" : true
       },
       {
          "key" : "car.engine.fuel",
          "value" : "diesel"
       }
    ]
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4b299c1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : true|false,
    "reboot" : true|false,
    "protocol" : "protocol name",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "settings" : [
        {
            "key" : "key",
            "value" : "value"
        }
    ],
    "templateName" : "template_name"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
reboot True if you want AirVantage to reboot the system after a successful apply settings operation. optional true boolean
protocol When this attribute is set, the settings message will be send thought this protocol. Otherwise, definitions will be collected from applications declared on systems. optional string
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
settings.key The key is the path/ID of the variable to be configured through this operation. required uid
settings.value The value to be set in the variable. IMPORTANT. Typing will be taken from the JSON type.
For example, the following JSON fragments
"value" : true will be a BOOLEAN
"value" : 1.0 will be a DOUBLE
"value" : 1 will be an INTEGER
"value" : "string" will be a STRING
required uid
templateName The name of the template from which the settings are taken. A template can be created using Settings API. optional Custom string
Name Description Use Default Type
company Set the context where the apply setting operation is performed. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown.
operation.unknown The specified 'dependsOn' operation is unknown.
operation.missing.settings The list of settings to apply is empty.
operation.all.settings.undefined All specified settings are unknown.
settings.unknown The specified template name does not exist.
operation.on.system.missing.comm.identifiers The system do not have any communication identifiers declared.
operation.protocol.not.found.on.system.for.encoding The protocol is not supported by the system.
operation.invalid.multiple.entries.for.same.key The same setting key can't be used more than 1 time.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.settings.apply

/v1/operations/systems/reboot

Reboots a selection of systems.

Request

POST https://na.airvantage.net/api/v1/operations/systems/reboot
Content-Type: application/json
...
{
   "action"   : "ALEOS_REBOOT",
   "systems"  : {
       "uids" : ["0fda23be05fc4edaa8d92c4091dd7f93"]
   }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4562dc1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : "request_connection",
    "sysms" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
     "action" : "action"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
action Implemented action of type REBOOT. Example: ALEOS_REBOOT. When this action is missing, AirVantage will try to reboot using the first firmware answering. optional string
Name Description Use Default Type
company Set the context where the reboot operation is performed. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
reboot.invalid.action The specified action is not a REBOOT action
operation.reboot.missing.reboot.action.in.system The specified action is not defined by any installed application or there is no REBOOT action defined by any installed application.
operation.no.communication.id.on.system.for.protocol The system do not communicate through this protocol.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions device.management.action

/v1/operations/systems/reset

Resets a selection of systems to factory defaults

Request

POST https://na.airvantage.net/api/v1/operations/systems/reset
Content-Type: application/json
...
{
   "action"   : "MIHINI_DM_RESET",
   "systems"  : {
       "uids" : ["0fda23be05fc4edaa8d92c4091dd7f93"]
   }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4562dc1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : "request_connection",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
     "action" : "action"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
action Implemented action of type RESET. Example: MIHINI_DM_RESET. When this action is missing, the platform will try to reset using all the RESET actions found on the system. optional string
Name Description Use Default Type
company Set the context where the reset operation is performed. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
reset.invalid.action The specified action is not a RESET action
operation.reset.missing.reset.action.in.system The specified action is not defined by any installed application or there is no RESET action defined by any installed application.
operation.no.communication.id.on.system.for.protocol The system do not communicate through this protocol.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions device.management.action

/v1/operations/systems/wakeup

Wakes up a communication application deployed on a selection of systems in order to force this application to communicate with the Operating Portal

Request

POST https://na.airvantage.net/api/v1/operations/systems/wakeup
Content-Type: application/json
...
{
    "action"  : 'READYAGENT_DM_CONNECT',
    "systems" : {
       "uids" : ["0fda23be05fc4edaa8d92c4091dd7f93"]
    }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4562dc1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "timeout" : "timeout",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
     "action" : "action"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
action Implemented action of type CONNECT. Example READYAGENT_DM_CONNECT. When no action is specified, the AirVantage will try to connect with all communicating applications in the system. optional string
Name Description Use Default Type Operand
company Set the context where the wakeup operation is performed. optional caller's company uid =
Name Description
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
wakeup.invalid.action The specified action is not a CONNECT action
operation.wakeup.missing.wakeup.action.in.system The specified action is not defined by any installed application or there is no CONNECT action defined by any installed application.
operation.no.communication.id.on.system.for.protocol The system do not communicate through this protocol.
operation.unexpected.schedule.date The specified schedule date parameter is unexpected.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions device.management.action

/v1/operations/systems/synchronize

Synchronizes systems with fresh information sent by remote devices. Actions can be set to synchronize information for specific applications.

Request

POST https://na.airvantage.net/api/v1/operations/systems/synchronize
Content-Type: application/json
...
{
    "action"  : "READYAGENT_DM_SYNCHRONIZE",
    "systems" : {
       "uids" : ["0fda23be05fc4edaa8d92c4091dd7f93"]
    }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4562dc1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : "request_connection",
    "action" : "action"
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    }
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
action Implemented action of type SYNCHRONIZE. Example: ALEOS_SYNCHRONIZE. When this action is missing, the AirVantage will try to synchronize all firmware answering. optional string
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
Name Description Use Default Type
company Set the context where the operation is performed. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
synchronize.invalid.action The specified action is not a SYNCHRONIZE action.
operation.synchronize.missing.synchronize.action.in.system The specified action is not defined by any installed application or there is no SYNCHRONIZE action defined by any installed application.
operation.no.communication.id.on.system.for.protocol The system do not communicate through this protocol.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions device.management.action

/v1/operations/systems/sms

Sends a text SMS to a selection of systems.

Request

POST https://na.airvantage.net/api/v1/operations/systems/sms
Content-Type: application/json
...

    "systems" : {
       "label" : "labege"
    },
    "content" : "this is an sms"
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4b299c1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "content" : "content"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
content The sms text content. optional string
Name Description Use Default Type
company Set the context where the operation is performed. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.send.sms

/v1/operations/systems/command

Sends a command to a set of systems defined by a label or a list of uid.

Request

POST https://na.airvantage.net/api/v1/operations/systems/command
Content-Type: application/json
...
{
    "systems" : {
       "label" : "labege"
    },
    "commandId" : "start",
    "parameters" :
       {
          "speed" : "105",
          "oil" : "full"
       }

}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4b299c1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : "request_connection",
    "protocol" : "protocol_name",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "commandId" : "command_id",
    "parameters" : {
        "param1" : value1,
        "param2" : value2,
        ...
    }
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Command Id is available in the application model of selected application.
The list of command parameters can be empty, undefined parameters are ignored.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
protocol When this attribute is set, the settings message will be send thought this protocol. Otherwise, definitions will be collected from applications declared on systems. optional string
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
applicationUid The id of the application which describe the command. This parameter is necessary for the command name to be displayed in the Operation, inside the web UI optional string
commandId The id of the command to send. required string
parameters A key/value map of parameters. required string
Name Description Use Default Type
company Set the context where the send command operation is performed. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.undefined.command.id Command is not defined in the given application.
operation.command.missing.parameter Missing command parameters.
operation.command.bad.parameter.value Value is not included in the specified range of values for the given parameter.
operation.command.bad.parameter.type Value data type does not match with the expected type.
operation.on.system.missing.comm.identifiers The system do not have any communication identifiers declared.
operation.protocol.not.found.on.system.for.encoding The protocol is not supported by the system.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.send.command

/v1/operations/systems/activate

Activates a selection of systems.
If possible, the susbcription linked to the system will be activated.
Upon activation success, the lifecycle state of the system will be ACTIVE or TEST_READY.

Request

POST https://na.airvantage.net/api/v1/operations/systems/activate
Content-Type: application/json
...
{
    "systems" : {
        "uids" : [
            "1cb5e5fc3562a09584bfe417a91e7881",
            "1cb5e5fc9bc14fa567a35717a91e5672"
         ]
    },
    "operatorParameters" : [
        {
            "account" : "5c3a642f60514e01a9a4b4734ff60dde",
            "parameters" : {
                "PricePlan" : ["Primary"]
            }
        }
    ]
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation" : "1cb5e5fc9bc14fa584bfe417a91e7881"
}
{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "operatorParameters" : [
        {
            "account" : "operator_account_uid",
            "parameters" : {
                "key1" : ["value1"],
                "key2" : ["value2", "value3"]
            }
        }
    ],
    "offerId" : "offer_uid"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
operatorParameters.account Uid of the Operator account for which some parameters need to be set in order to activate the subscription linked to the system. optional uid
operatorParameters.parameters List of key/value parameters needed by the operator account to activate the subscriptions.
These parameters are described by the Operator connection related to this account.
optional string
offerId The unique identifier of the Offer to be used to activate the systems.
This parameter is required if several offers are defined in the company.
optional uid
Name Description Use Default Type
company Set the context where the systems will be activated. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.subscription.prov.operator.account.unknown.connection The operator associated to the operator account is unknown.
operation.subscription.prov.operator.account.unsupported.operation The operation is not supported by the operator associated to the operator account.
operator.connection.account.parameters.invalid.type The type of the parameter value is invalid. See the description of the operator connection.
operator.connection.account.parameters.invalid.constraint The constaints of the parameter value are invalid. See the description of the operator connection.
operator.connection.account.parameters.invalid.cardinality The cardinality of the parameter value is invalid. See the description of the operator connection.
operator.connection.account.parameters.missing A required provisioning parameter is missing. See the description of the operator connection.
operation.subscription.prov.missing.operator.account No operator account is defined for the subscription.
operation.subscription.prov.unknown.operator.connection The operator linked to the subscription is unknown.
operation.subscription.prov.unsupported.operation The operation is not supported by the operator of the subscription.
operation.subscription.prov.invalid.subscription.state The state of the subscription does not allow to launch the provisioning action.
operation.subscription.prov.missing.communication.id The communication identifier (Identifier, MobileNumber or NetworkIdentifier) is not set on the subscription.
operation.changestate.invalid.state.to.activate The current lifecycle state does not allow the activation of the system.
operation.changestate.system.activate.failed The system cannot be activated.
operation.changestate.unknown.offer The specified offer does not exist.
operation.changestate.missing.offer An offer is required to activate the systems.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.activate

/v1/operations/systems/suspend

Suspends a selection of systems.
If possible, the susbcription linked to the system will be suspended.
Upon suspension success, the lifecycle state of the system will be SUSPENDED.

Request

POST https://na.airvantage.net/api/v1/operations/systems/suspend
Content-Type: application/json
...
{
    "systems" : {
        "uids" : [
            "1cb5e5fc3562a09584bfe417a91e7881",
            "1cb5e5fc9bc14fa567a35717a91e5672"
         ]
    },
    "operatorParameters" : [
        {
            "account" : "5c3a642f60514e01a9a4b4734ff60dde",
            "parameters" : {
                "PricePlan" : ["Primary"]
            }
        }
    ]
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation" : "1cb5e5fc9bc14fa584bfe417a91e7881"
}
{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "operatorParameters" : [
        {
            "account" : "operator_account_uid",
            "parameters" : {
                "key1" : ["value1"],
                "key2" : ["value2", "value3"]
            }
        }
    ]
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
operatorParameters.account Uid of the Operator account for which some parameters need to be set in order to suspend the subscription linked to the system. optional uid
operatorParameters.parameters List of key/value parameters needed by the operator account to suspend the subscriptions.
These parameters are described by the Operator connection related to this account.
optional string
Name Description Use Default Type
company Set the context where the systems will be suspended. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.subscription.prov.operator.account.unknown.connection The operator associated to the operator account is unknown.
operation.subscription.prov.operator.account.unsupported.operation The operation is not supported by the operator associated to the operator account.
operator.connection.account.parameters.invalid.type The type of the parameter value is invalid. See the description of the operator connection.
operator.connection.account.parameters.invalid.constraint The constaints of the parameter value are invalid. See the description of the operator connection.
operator.connection.account.parameters.invalid.cardinality The cardinality of the parameter value is invalid. See the description of the operator connection.
operator.connection.account.parameters.missing A required provisioning parameter is missing. See the description of the operator connection.
operation.subscription.prov.missing.operator.account No operator account is defined for the subscription.
operation.subscription.prov.unknown.operator.connection The operator linked to the subscription is unknown.
operation.subscription.prov.unsupported.operation The operation is not supported by the operator of the subscription.
operation.subscription.prov.invalid.subscription.state The state of the subscription does not allow to launch the provisioning action.
operation.subscription.prov.missing.communication.id The communication identifier (Identifier, MobileNumber or NetworkIdentifier) is not set on the subscription.
operation.changestate.invalid.state.to.suspend The current lifecycle state does not allow the suspension of the system.
operation.changestate.system.suspend.failed The system cannot be suspended.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.suspend

/v1/operations/systems/resume

Resumes a selection of systems.
If possible, the susbcription linked to the system will be resumed.
Upon resume success, the lifecycle state of the system will be ACTIVE or TEST_READY.

Request

POST https://na.airvantage.net/api/v1/operations/systems/resume
Content-Type: application/json
...
{
    "systems" : {
        "uids" : [
            "1cb5e5fc3562a09584bfe417a91e7881",
            "1cb5e5fc9bc14fa567a35717a91e5672"
         ]
    },
    "operatorParameters" : [
        {
            "account" : "5c3a642f60514e01a9a4b4734ff60dde",
            "parameters" : {
                "PricePlan" : ["Primary"]
            }
        }
    ]
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation" : "1cb5e5fc9bc14fa584bfe417a91e7881"
}
{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "operatorParameters" : [
        {
            "account" : "operator_account_uid",
            "parameters" : {
                "key1" : ["value1"],
                "key2" : ["value2", "value3"]
            }
        }
    ]
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
operatorParameters.account Uid of the Operator account for which some parameters need to be set in order to reactivate the subscription linked to the system. optional uid
operatorParameters.parameters List of key/value parameters needed by the operator account to reactivate the subscriptions.
These parameters are described by the Operator connection related to this account.
optional string
Name Description Use Default Type
company Set the context where the systems will be resumed. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.subscription.prov.operator.account.unknown.connection The operator associated to the operator account is unknown.
operation.subscription.prov.operator.account.unsupported.operation The operation is not supported by the operator associated to the operator account.
operator.connection.account.parameters.invalid.type The type of the parameter value is invalid. See the description of the operator connection.
operator.connection.account.parameters.invalid.constraint The constaints of the parameter value are invalid. See the description of the operator connection.
operator.connection.account.parameters.invalid.cardinality The cardinality of the parameter value is invalid. See the description of the operator connection.
operator.connection.account.parameters.missing A required provisioning parameter is missing. See the description of the operator connection.
operation.subscription.prov.missing.operator.account No operator account is defined for the subscription.
operation.subscription.prov.unknown.operator.connection The operator linked to the subscription is unknown.
operation.subscription.prov.unsupported.operation The operation is not supported by the operator of the subscription.
operation.subscription.prov.invalid.subscription.state The state of the subscription does not allow to launch the provisioning action.
operation.subscription.prov.missing.communication.id The communication identifier (Identifier, MobileNumber or NetworkIdentifier) is not set on the subscription.
operation.changestate.invalid.state.to.resume The current lifecycle state does not allow the reactivation of the system.
operation.changestate.system.resume.failed The system cannot be resumed.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.resume

/v1/operations/systems/terminate

Terminates a selection of systems.
If possible, the susbcription linked to the system will be terminated.
Upon terminate success, the lifecycle state of the system will be RETIRED.

Request

POST https://na.airvantage.net/api/v1/operations/systems/terminate
Content-Type: application/json
...
{
    "systems" : {
        "uids" : [
            "1cb5e5fc3562a09584bfe417a91e7881",
            "1cb5e5fc9bc14fa567a35717a91e5672"
         ]
    },
    "operatorParameters" : [
        {
            "account" : "5c3a642f60514e01a9a4b4734ff60dde",
            "parameters" : {
                "PricePlan" : ["Primary"]
            }
        }
    ]
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation" : "1cb5e5fc9bc14fa584bfe417a91e7881"
}
{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "operatorParameters" : [
        {
            "account" : "operator_account_uid",
            "parameters" : {
                "key1" : ["value1"],
                "key2" : ["value2", "value3"]
            }
        }
    ]
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
operatorParameters.account Uid of the Operator account for which some parameters need to be set in order to terminate the subscription linked to the system. optional uid
operatorParameters.parameters List of key/value parameters needed by the operator account to terminate the subscriptions.
These parameters are described by the Operator connection related to this account.
optional string
Name Description Use Default Type
company Set the context where the systems will be terminated. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.subscription.prov.operator.account.unknown.connection The operator associated to the operator account is unknown.
operation.subscription.prov.operator.account.unsupported.operation The operation is not supported by the operator associated to the operator account.
operator.connection.account.parameters.invalid.type The type of the parameter value is invalid. See the description of the operator connection.
operator.connection.account.parameters.invalid.constraint The constaints of the parameter value are invalid. See the description of the operator connection.
operator.connection.account.parameters.invalid.cardinality The cardinality of the parameter value is invalid. See the description of the operator connection.
operator.connection.account.parameters.missing A required provisioning parameter is missing. See the description of the operator connection.
operation.subscription.prov.missing.operator.account No operator account is defined for the subscription.
operation.subscription.prov.unknown.operator.connection The operator linked to the subscription is unknown.
operation.subscription.prov.unsupported.operation The operation is not supported by the operator of the subscription.
operation.subscription.prov.invalid.subscription.state The state of the subscription does not allow to launch the provisioning action.
operation.subscription.prov.missing.communication.id The communication identifier (Identifier, MobileNumber or NetworkIdentifier) is not set on the subscription.
operation.changestate.invalid.state.to.terminate The current lifecycle state does not allow the termination of the system.
operation.changestate.system.terminate.failed The system cannot be terminated.
operation.changestate.system.under.contract.on.terminate Termination is not allowed until contract period is over.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.terminate

/v1/operations/systems/changeoffer

Changes the offer on a selection of systems.

Request

POST https://na.airvantage.net/api/v1/operations/systems/changeoffer
Content-Type: application/json
...
{
    "systems" : {
        "uids" : [
            "1cb5e5fc3562a09584bfe417a91e7881",
            "1cb5e5fc9bc14fa567a35717a91e5672"
         ]
    },
    "offerId" : "1eb5e5fc9bf14fa584bfe417a91e7951"
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation" : "1cb5e5fc9bc14fa584bfe417a91e7881"
}
{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "offerId" : "offer_uid"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
offerId The unique identifier of the Offer to set on the systems.
.
required uid
Name Description Use Default Type
company Set the company where the operation will be launched. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.system.changeoffer.invalid.system.state This operation cannot be performed on an INVENTORY system.
operation.system.changeoffer.unknown.offer The specified offer does not exist.
operation.system.changeoffer.missing.offer An offer is required to launch this operation.
operation.system.changeoffer.target.offer.cannot.be.changed The selected offer cannot be used to change the offer of the systems
operation.system.changeoffer.system.offer.cannot.be.changed The offer on the system cannot be changed
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.change.offer

/v1/operations/systems/changeoptions

Changes the options on a selection of systems.

Request

POST https://na.airvantage.net/api/v1/operations/systems/changeoptions
Content-Type: application/json
...
{
    "systems" : {
        "uids" : [
            "1cb5e5fc3562a09584bfe417a91e7881",
            "1cb5e5fc9bc14fa567a35717a91e5672"
         ]
    },
    "add" : ["a36db6247e3e4ca696e6af7afad3f74b"],
    "remove" : ["7b6425d4f0914f7e93f21e7ac9582c27"]
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation" : "1cb5e5fc9bc14fa584bfe417a91e7881"
}
{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "add" : ["option_uid", ...],
    "remove" : ["option_uid", ...]
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
add The list of option uids to add
.
required uid array
remove The list of option uids to remove
.
required uid array
Name Description Use Default Type
company Set the company where the operation will be launched. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.system.changeoptions.missing.options At least one option must be specified as input of this operation.
operation.system.changeoptions.unknown.options At least one of the specified options is unknown.
operation.system.changeoptions.invalid.system.state This operation is only available on ACTIVE ou TEST_READY system.
operation.system.changeoptions.unsupported.operation The associated subscription does not allow a change of the options.
operation.system.changeoptions.incompatible.options.for.offer At least one of the options to be added is not compatible with the offer of the system.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.change.options

/v1/operations/systems/atcommand

Sends an AT command to a set of systems defined by a label or a list of uid.
The result of the AT command sent for a system is returned in the messages of the task associated to this system with the following format : "result [result_AT_command]". (See Get tasks API)

Request

POST https://na.airvantage.net/api/v1/operations/systems/atcommand
Content-Type: application/json
...
{
    "systems" : {
       "label" : "labege"
    },
    "atcommand" : "AT+CGMR",
    "action" : "OPENAT_AT_COMMAND"
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation":"4b89657f63aac4b299c1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : "request_connection",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "atcommand" : "at_command",
    "action" : "action"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
atcommand The AT command to send. required string
action Implemented action of type AT_COMMAND. For instance OPENAT_AT_COMMAND. When no action is specified, the AirVantage will use the first AT_COMMAND action found on the system. optional string
Name Description Use Default Type
company Set the context where the send AT command operation is performed. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.missing.at.command AT command is not specified.
send.at.command.invalid.action The specified action is not an AT COMMAND action
operation.send.at.command.missing.at.command.action.in.system The specified action is not defined by any installed application or there is no AT COMMAND action defined by any installed application.
operation.no.communication.id.on.system.for.protocol The system do not communicate through this protocol.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions device.management.action

/v1/operations/systems/applications/install

Installs or upgrades an application on a set of systems defined by a label or a list of uids.

Request

POST https://na.airvantage.net/api/v1/operations/systems/applications/install
Content-Type: application/json
...
{
  "application" : "1cb5e5fc3562a09584bfe417a91e7881",
  "systems": { "label":"france" }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"4b89657f63aac4b299c1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : "request_connection",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "application" : "uid"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
application The unique identifier of the application to install required uid
Name Description Use Default Type
company The company in which the application has to be installed optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
application.unknown The specified application is unknown.
application.invalid.state Application state is invalid. Only PUBLISHED application can be installed.
operation.install.missing.install.action.in.appmgr Application manager defined by the aplication does not support INSTALL action
operation.install.missing.install.action.in.system There is no INSTALL action defined by any installed application.
operation.no.communication.id.on.system.for.protocol The system do not communicate through this protocol.
applications.protocol.conflicts The protocol used by the application to install is used by an application already installed on the system
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions device.management.action

/v1/operations/systems/applications/uninstall

Uninstalls an application on a set of systems defined by a label or a list of uids.

Request

POST https://na.airvantage.net/api/v1/operations/systems/applications/uninstall
Content-Type: application/json
...
{
  "application" : "1cb5e5fc3562a09584bfe417a91e7881",
  "systems": { "label":"france" }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"4b89657f63aac4b299c1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : "request_connection",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "application" : "uid"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
application The unique identifier of the application to uninstall required uid
Name Description Use Default Type
company The company in which the application has to be uninstalled optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
application.unknown The specified application is unknown
operation.uninstall.missing.uninstall.action.in.appmgr Application manager defined by the aplication does not support UNINSTALL action
operation.uninstall.missing.application.in.system The application to uninstall is not installed on the system
operation.uninstall.missing.uninstall.action.in.system There is no UNINSTALL action defined by any installed application.
operation.no.communication.id.on.system.for.protocol The system do not communicate through this protocol.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions device.management.action

/v1/operations/systems/applications/start

Starts an application on a set of systems defined by a label or a list of uids.

Request

POST https://na.airvantage.net/api/v1/operations/systems/applications/start
Content-Type: application/json
...
{
  "application" : "1cb5e5fc3562a09584bfe417a91e7881",
  "systems": { "label":"france" }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"4b89657f63aac4b299c1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : "request_connection",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "application" : "uid"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
application The unique identifier of the application to start required uid
Name Description Use Default Type
company The company in which the application has to be started optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
application.unknown The specified application is unknown.
operation.start.missing.start.action.in.appmgr Application manager defined by the aplication does not support START action
operation.start.missing.start.action.in.system There is no START action defined by any installed application.
operation.no.communication.id.on.system.for.protocol The system do not communicate through this protocol.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions device.management.action

/v1/operations/systems/applications/stop

Stops an application on a set of systems defined by a label or a list of uids.

Request

POST https://na.airvantage.net/api/v1/operations/systems/applications/stop
Content-Type: application/json
...
{
  "application" : "1cb5e5fc3562a09584bfe417a91e7881",
  "systems": { "label":"france" }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"4b89657f63aac4b299c1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : "request_connection",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "application" : "uid"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
application The unique identifier of the application to stop required uid
Name Description Use Default Type
company The company in which the application has to be stopped optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
application.unknown The specified application is unknown.
operation.stop.missing.stop.action.in.appmgr Application manager defined by the aplication does not support STOP action
operation.stop.missing.stop.action.in.system There is no STOP action defined by any installed application.
operation.no.communication.id.on.system.for.protocol The system do not communicate through this protocol.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions device.management.action

/v1/operations/systems/updatecfg

Reads the system software versions and upgrade the device softwares to the requested configuration on a set of systems defined by a label or a list of uids.

Request

POST https://na.airvantage.net/api/v1/operations/systems/updatecfg
Content-Type: application/json
...
{
  "config" : "145354a73a1c4188a43826aff514b7c1",
  "systems": { "label":"france" }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"4b89657f63aac4b299c1d46e98a495326"
}

{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "requestConnection" : "request_connection",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "config" : "uid"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
config The unique identifier of the system configuration. required uid
Name Description Use Default Type
company Set the company where the operation will be launched optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown.
operation.unknown The specified 'dependsOn' operation is unknown.
system.config.unknown The specified system configuration is unknown.
operation.install.missing.install.action.in.system There is no INSTALL action defined by any installed application.
operation.no.communication.id.on.system.for.protocol The system does not communicate through this protocol.
applications.protocol.conflicts The protocol used by the application to install is used by an application already installed on the system.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions device.management.action

/v1/operations/systems/configure

Configures heartbeat, status report and additional datasets for a set of systems

Request

POST https://na.airvantage.net/api/v1/operations/systems/configure
Content-Type: application/json
...
{
    "systems" : {
       "label" : "systems"
    },
    "heartbeat" : {
       "state" : "ON",
       "period" : "15",
       "serverOnly": true,
       "sla" : {
          "error" : "2",
          "warning" : "1"
       }
    },
    "statusReport" : {
       "state" : "ON",
       "period" : "20"
    },
    "reports" : [{
       "period" : "20",
       "dataset" : {
          "uid" : "af2061ef883449ae845866672097d005"
       }
    }]
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"494f28fbb6454507b7360f9bdc0dfa78"
}
{
    "scheduledTime": "timestamp",
    "timeout" : "timestamp",
    "requestConnection" : true|false,
    "notify" : true|false,
    "callback" : "callback_url",,
    "systems" : {
        "label" : "label",
        "uids" : ["system_uid", ...]
    },
    "heartbeat" : {
        "state" : "ON|OFF",
        "period" : "period",
        "serverOnly": true|false,
        "sla" : {
            "error" : "error",
            "warning" : "warning"
        }
    },
    "statusReport" : {
        "state" : "ON|OFF",
        "period" : "period"
    },
    "reports" : [
    {
        "period" : "period",
        "dataset" : {
            "uid" : "dataset_uid"
        }
    }
    ...
    ]
}
                            
Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
requestConnection True if you want AirVantage to notify the system (if possible). optional false boolean
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
heartbeat.state State : ON / OFF optional OFF string
heartbeat.period Period in minutes optional integer
heartbeat.serverOnly If true, the configuration is not applied on the device (change is applied only on the server), if false, the configuration is sent to be applied in the device. optional false boolean
heartbeat.sla.error The extra delay in minutes before to consider communication in ERROR.
If SLA part (warning / error) is not set, the communication status never changes. It will be always OK.
optional integer
heartbeat.sla.warning The extra delay in minutes before to consider communication in WARNING.
If SLA part (warning / error) is not set, the communication status never changes. It will be always OK.
optional integer
statusReport.state State : ON / OFF optional OFF string
statusReport.period If ON, a status report has to be generated every period in minutes optional integer
reports.period A report has to be generated every period in minutes optional integer
reports.dataset.uid Unique identifier of an existing dataset optional uid
Name Description Use Default Type
company Set the context where the systems have to be found. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.configure.empty.configuration The given configuration is empty.
operation.configure.missing.heartbeat.state Heartbeat configuration is defined without state.
operation.configure.missing.heartbeat.period Heartbeat configuration is defined without period.
operation.configure.heartbeat.period.too.short Heartbeat configuration period has to be greater than 15 minutes.
operation.configure.invalid.heartbeat.warning.sla Heartbeat configuration warning SLA has to be greater than 0.
operation.configure.invalid.heartbeat.error.sla Heartbeat configuration error SLA has to be greater than 0.
operation.configure.missing.status.report.state Default status report is defined without state.
operation.configure.missing.status.report.period Default status report is defined without period.
operation.configure.status.report.period.too.short Default status report period has to be greater than 15 minutes.
operation.configure.missing.advanced.report.dataset An advanced report is defined without dataset.
operation.configure.duplicate.advanced.report.dataset More than once advanced report is defined with the same dataset.
operation.configure.missing.advanced.report.period An advanced report is defined without period.
operation.configure.advanced.report.period.too.short Advanced report period has to be greater than 15 minutes.
dataset.unknown A dataset used in advanced reports does not exist in the given company.
operation.no.communication.id.on.system.for.protocol The system do not communicate through this protocol.
operation.configure.missing.heartbeat.action.in.system There is no HEARTBEAT action defined by any installed application.
operation.on.system.missing.comm.identifiers The system do not have any communication identifiers declared.
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.edit

/v1/operations/systems/export

Exports a set of systems with their details to a CSV file.

Request

POST https://na.airvantage.net/api/v1/operations/systems/export
Content-Type: application/json
...
{
    "systems" : {
       "label" : "activatedSystems"
    },
    "fields" : ["Name", "CommStatus", "State", "Metadata"],
    "metadata" : ["name1", "name2"]
    "data" : ["_RSSI", "261"],
    "dataset" : "3ed6cd7426604ee0bca9fe01f2521230"
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
  "operation":"4b89657f63aac4b299c1d46e98a495326"
}
{
    "notify" : true|false,
    "callback" : "callback_url",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "fields" : ["Name", "State", "Metadata", ... ],
    "metadata" : ["name1", "name2"]
    "dataset" : "dataset_uid",
    "data" : ["data_id", ... ]
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes optional boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
fields The list of fields to export optional string
metadata The list of metadata to export optional string
dataset The uid of a dataset whose last data value has to be exported optional string
data The list of data id or generated data whose last data value has to be exported
See generated data
optional string

'system.label' or 'system.uids' should be set.

List of system fields:

  • LastTemplateName
  • Name
  • State
  • LifeCycleState
  • ActivityState
  • CommStatus
  • CreationDate
  • ActivationDate
  • LastStateChangeDate
  • LastCommDate
  • LastCommFailureDate
  • MonthToDateUsage
  • MonthToDateUsageDevice
  • UsageStatus
  • GatewayUid
  • GatewayImei
  • GatewayMacAddress
  • GatewaySerialNumber
  • SubscriptionUid
  • SubscriptionIdentifier
  • SubscriptionNetworkIdentifier
  • SubscriptionMobileNumber
  • SubscriptionIpAddress
  • SubscriptionOperator
  • Labels
  • ApplicationsUid
  • ApplicationsName
  • ApplicationsRev
  • ApplicationsType
  • Metadata
  • HeartbeatState
  • HeartbeatPeriod
  • HeartbeatSLAWarning
  • HeartbeatSLAError
  • OfferUid
  • OfferName

Name Description Use Default Type
company Set the context company. optional caller's company uid
Name Description
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
dataset.unknown The specified dataset is unknown
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.export

/v1/operations/systems/network/detach

Detaches from the network a selection of systems.
This operation is only possible on systems linked to a SIERRA WIRELESS subscription.

Request

POST https://na.airvantage.net/api/v1/operations/systems/network/detach
Content-Type: application/json
...
{
    "systems" : {
        "uids" : [
            "1cb5e5fc3562a09584bfe417a91e7881",
            "1cb5e5fc9bc14fa567a35717a91e5672"
         ]
    }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation" : "1cb5e5fc9bc14fa584bfe417a91e7881"
}
{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    },
    "type" : "ALL|DATA|DATA_2G_3G|DATA_4G"
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
type The detachment type. Possible values are:
  • ALL will detach VOICE, 2G/3G and 4G
  • DATA will detach 2G/3G and 4G
  • DATA_2G_3G will detach 2G/3G only
  • DATA_4G will detach 4G only
optional ALL string
Name Description Use Default Type
company Set the context where the operation must be launched. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.system.network.detach.unsupported.operation The operation cannot be launched on the system because it is not linked to a SIERRA WIRELESS subscription
operation.system.network.detach.invalid.system.state The state of the system does not allow to detach from network
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.network.detach

/v1/operations/systems/network/status

Gets the network status of a selection of systems.
This operation is only possible on systems linked to a SIERRA WIRELESS subscription.
For each selected system, the network information are available in the details of the associated task.
Below a sample of the returned network information:

"network": {
  "attachmentInfo": {
    "voice": {
      "attached": true,                   // Latest GSM attachment status
      "date": "2016-06-22 11:30:27",      // Latest GSM attachment  date
      "country": "France",                // Latest GSM country name
      "network": "SFR"                    // Latest GSM network name
    },
    "data": {
      "attached": true,                   // Latest GPRS attachment status
      "date": "2016-06-22 11:30:27",      // Latest GPRS attachment  date
      "country": "France",                // Latest GPRS country name
      "network": "SFR"                    // Latest GPRS network name
    },
    "lte": {
      "attached": true,                   // Latest LTE attachment status
      "date": "2016-06-22 11:30:27",      // Latest LTE attachment  date
      "country": "France",                // Latest LTE country name
      "network": "SFR"                    // Latest LTE network name
    }
  },
  "subscriberInfo": {
    "mcc": "208",                         // Mobile Country Code
    "mnc": "10",                          // Mobile Network Code
    "lac": "49950",                       // Location Area Identity
    "cid": "51406",                       // Cell identifier
    "cidDate": "2016-06-22 11:31:45",     // Cell identifier date
    "state": "REACHABLE_IDLE"             // Subscriber state (REACHABLE_IDLE, REACHABLE_BUSY, UNREACHABLE_INVALID, UNREACHABLE_PURGED, UNREACHABLE_DETACHED, UNREACHABLE_RESTRICTED_AREA, UNREACHABLE_NOT_REGISTERED, NOT_PROVIDED, NOT_SUPPORTED, UNKNOWN)
  },
  "dataSessionInfo": {
    "apn": "internet.sierrawireless.com", // Access Point Name
    "ipAddress": "100.87.242.170",        // Current IP address
    "totalKb": 11.873046875,              // Volume consumed in KiB (download + upload)
    "ratType": "UTRAN",                   // Radio Access Technology (UTRAN, GERAN, WLAN, GAN, HSPA-Evolution, EUTRAN)
    "imei": "3568530509568218",           // IMEI
    "ggsnAddress": "46.23.240.57",        // Gateway GPRS Support Node address
    "sessionDate": 1487867782000          // Start date of the session
  }
}

Request

POST https://na.airvantage.net/api/v1/operations/systems/network/status
Content-Type: application/json
...
{
    "systems" : {
        "uids" : [
            "1cb5e5fc3562a09584bfe417a91e7881",
            "1cb5e5fc9bc14fa567a35717a91e5672"
         ]
    }
}

Response
200 OK

HTTP/1.1 200 OK
Content-Type: application/json
...
{
   "operation" : "1cb5e5fc9bc14fa584bfe417a91e7881"
}
{
    "notify" : true|false,
    "callback" : "callback_url",
    "scheduledTime": "scheduled_time",
    "timeout" : "timeout",
    "systems" : {
        "label" : "label",
        "uids" : ["uid1", ...],
        "dependsOn" : {
            "operation" : "uid",
            "states" : ["FAILURE"]
        }
    }
}
                            

Either 'label' or 'uids' or 'dependsOn' should be set.

Field Description Use Default Type
notify Send an email notification to the user calling this method when the operation finishes. optional caller's company boolean
callback The url that will be called when the operation state changes. The url has the following pattern : http(s)://(user:password@)www.yourhost.com/your_rest_service optional string
scheduledTime Date time when the operation will be launched.
If null, the operation starts immediately.
The date must be lower than 90 days.
optional null timestamp
timeout The date for which the operation is considered as expired.
If null, the operation will expire in 7 days.
optional null timestamp
systems.label Label name. All systems linked to the label will be incorporated to the operation required string
systems.uids List of system uids to be used to launch the operation required uid array
systems.dependsOn.operation Identifier of the operation to be used to launch this operation
In other words, the tasks of the new operation will start only when the tasks of specified operation will be finished.
required if 'dependsOn' set uid
systems.dependsOn.states States of the tasks which will be used as input of this operation.
Possible values are : SUCCESS, FAILURE and CANCELLED.
If null or empty, all tasks from the parent operation will be used as input of this operation.
optional SUCCESS,FAILURE,CANCELLED string array
Name Description Use Default Type
company Set the context where the operation must be launched. optional caller's company uid
Name Description
operation.invalid.schedule.date The specified schedule date is invalid (greater than 90 days).
operation.invalid.timeout.date The specified timeout is less than schedule date.
selection.empty The list of system uids is empty or no system found for the specified label.
selection.invalid The selection is invalid. Only one of the following attributes has to be set : label, uids, dependsOn.
selection.max.uid.reached The list of system uids contains more than 100 uids.
label.unknown The specified label is unknown
operation.unknown The specified 'dependsOn' operation is unknown
operation.system.network.status.unsupported.operation The operation cannot be launched on the system because it is not linked to a SIERRA WIRELESS subscription
operation.system.network.status.invalid.system.state The state of the system does not allow to get the network status
operation.system.network.status.invalid.subscription.state The state of the subscription does not allow to get the network status
HTTP Method POST
Requires Authentication Yes
Rate Limited Yes
Headers Content-type: application/json
Permissions entities.systems.network.status
TOP