User Tools

Site Tools


web:access_rest_api

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
web:access_rest_api [2016/01/29 01:55]
mjallison [Use Cases]
web:access_rest_api [2016/02/09 00:25] (current)
mjallison [Responses]
Line 18: Line 18:
      * May need separate instance of REST API for each machine to avoid cross site scripting calls. ​      * May need separate instance of REST API for each machine to avoid cross site scripting calls. ​
   * REST API perhaps used for background operations in IOS operations.   * REST API perhaps used for background operations in IOS operations.
 +
 +===== Responses =====
 +If the method succeeds, ack is true. Any error will cause ack to be false, and code set to the StorageException value returned by the server. In most cases the string value err is set to the description provided by the error. ​
 +
 +   { ack: true|false,
 +     code: 0 | code,
 +     err: "error description"​
 +   }
 +
 +Other JSON structures may be returned from a method. In each case the objects returned are wrapped as a GenericResponse. For instance getAllAnnouncements() returns
 +
 +   { ack: true|false
 +     code: 0 | code,
 +     err : "error description"​
 +     [ Announcement* ]
 +   }
 + 
 +Where **Announcement** is:
 +   {
 +      id: integer,
 +      expire: long, (mSec)
 +      text: "​String of announcement"​
 +   ​}  ​
 +  ​
 +Other return objects possible are:
 +**StoredItem**
 +   {
 +      handle ​     : int-value,
 +      name        : string,
 +      description : string,
 +      isFolder ​   : boolean,
 +      size        : long,
 +      children: [ StoredItem* ]
 +   }
 +   
 +**ApplicationState** return from connection/​open or connection/​check
 +   {
 +      userid: string,
 +      token: string,
 +      lastPath: string,
 +      hasAccess: boolean,
 +      hasLicense: boolean,
 +      hasTracks: boolean,
 +      isAdmin: boolean,
 +      isSupport: boolean
 +   }
 +   
 +**AccountInfo**
 +   {
 +      user: string,
 +      userid: string,
 +      totalSpace: long,
 +      usedSpace: long
 +   }
 +   
 +**StorageUser** (minimal needed for admin functions)
 +   {
 +      handle: integer,
 +      customerId: string,
 +      userId: string,
 +      firstName: string,
 +      lastName: string,
 +      phone: string,
 +      role: string
 +   }
 +   
 +**LicenseKey** (minimal needed for admin functions)
 +   {
 +      handle: integer,
 +      type: integer,
 +      number: string,
 +      customerId: string,
 +      maxCheckoutPeriod:​ long,
 +      dueDate: long,
 +      checkoutUser:​ string,
 +      checkoutUserPhone:​ string
 +   }
 +   
 +**Project**
 +   {
 +      handle: integer,
 +      name: string,
 +      description:​ string,
 +      lastTrackTime:​ long,
 +      modifiedTime:​ long,
 +      status: integer,
 +      trackCount: integer
 +   }
 +   
 +**WorkingTime**
 +   {
 +      projectHandle:​ integer,
 +      dayStart: long,
 +      morningStart:​ long,
 +      clipToStart:​ boolean,
 +      morningEnd: long,
 +      clipToMidday:​ boolean,
 +      afternoonStart:​ long,
 +      clipToEnd: boolean,
 +      afternoonEnd:​ long
 +   }
 +   
 +**Track**
 +   {
 +      handle: integer,
 +      trackerAlias:​ string,
 +      trackerSerial:​ string,
 +      projectHandle:​ integer,
 +      discoveryTime:​ long,
 +      startTime: long,
 +      endTime: long,
 +      totalPoints:​ long,
 +      fixType: integer, ​
 +      attributes: object
 +   }
 +   
 +**TrackPoints**
 +   {
 +      count: integer,
 +      [ Point ]
 +   }
 +   
 +**Point**
 +   {
 +      time: long,
 +      lat: double,
 +      lon: double,
 +      alt: double
 +   }
 +   
 +**Tracker**
 +   {
 +      serial: string,
 +      alias: string,
 +      lastLat: double,
 +      lastLon: double,
 +      lastAlt: double,
 +      lastTime: long,
 +      totalPoints:​ integer
 +   }
 +  ​
 +**Telemetry**
 +   {
 +      serial: string,
 +      time: long,
 +      channel: int,
 +      value: numeric | string (depends on channel type)
 +   }
 +   
 +**Vehicle**
 +   {
 +      assetId: string,
 +      type: integer,
 +      status: integer,
 +      description:​ string,
 +      color: integer, (RGBA 32bit value)
 +      avgLoad: double
 +   }
 +
 ===== Method Breakdown ===== ===== Method Breakdown =====
  
-| **Sub-API**   ​| **Method Name** ​            ​| **Return Value** ​ | **Notes** |  +| **API-class (priority)** | **Method Name** ​  ​| **Return Value**  ​| **REST Method** | **params** | **return** ​| **Notes** |  
-| CONNECTION ​   |                             ​| ​                  ​| ​          ​+| CONNECTION ​(0) |                             ​| ​                  ​| ​
-              ​| connect() ​                  | StorageServer ​    ​| ​          ​+               | connect() ​                  | StorageServer ​    ​| ​GET  | userid,​password,​token | GR |  
-              ​authenticate()              |                   ​| ​          ​| +               connectResetPassword()      |                   ​| ​GET  ​userid,​password ​GR **still needed** ​
-              ​authenticateResetPassword() |                   ​| ​          +               | disconnect() ​               |                   ​| ​PUT  | | GR |  
-              ​| disconnect() ​               |                   ​| ​          ​|  +               getAnnouncements()          | Announcement* ​    ​| ​GET  | | GR [ Announcement ] 
-              ​getAllAnnouncements()       ​| Announcement* ​    ​| ​          ​|  +| ASSOCIATION ​(4)                            |                   ​| ​
-| ASSOCIATION ​  ​                            ​|                   ​| ​          ​+               | getAssociations() ​          | Association* ​     | GET  | 
-              ​| getAssociations() ​          | Association* ​     |           ​+               | addAssociation() ​           | Association ​      ​| ​PUT  | 
-              ​| addAssociation() ​           | Association ​      ​| ​          ​+               | updateAssociation() ​        | Association ​      ​| ​PUT  | 
-              ​| updateAssociation() ​        | Association ​      ​| ​          ​+               | deleteAssociation() ​        | Association ​      ​| ​PUT  | 
-              ​| deleteAssociation() ​        | Association ​      ​| ​          ​|  +| CONFIGURATION ​(4)                          |                   ​| ​
-| CONFIGURATION |                             ​|                   ​| ​          ​|  +               | getAllConfigurations() ​     | Configuration* ​   | GET  | 
-              ​| getAllConfigurations() ​     | Configuration* ​   |           ​|  +               | getConfiguration() ​         | Configuration ​    ​| ​GET  | 
-              ​| getConfiguration() ​         | Configuration ​    ​| ​          ​|  +               | updateConfiguration() ​      | Configuration ​    ​| ​PUT  | 
-              ​| updateConfiguration() ​      | Configuration ​    ​| ​          ​|  +               | getConfigurationData() ​     | ConfigurationData | POST | 
-              ​| getConfigurationData() ​     | ConfigurationData |           ​+               | setConfigurationData() ​     | void              | POST | 
-              ​| setConfigurationData() ​     | void              |           ​|  +| FILEAPI ​(1)    ​|                             ​| ​                  | | 
-| FILEAPI ​      ​|                             ​| ​                  | | +               | createFolder() ​             | StoredFolder ​     | GET  | path | GR { stedFolder } 
-              ​| createFolder() ​             | StoredFolder ​     | |  +               | createPublicUrl() ​          | String url        | GET  | path | GR { url } 
-              ​| createPublicUrl() ​          | String url        | |  +               | deleteFile() ​               | void              | PUT  | path | GR 
-              ​| deleteFile() ​               | void              | |  +               | deletePublicUrl() ​          | void              | PUT  | path | GR 
-              ​| deletePublicUrl() ​          | void              | |  +               | downloadFile() ​             |                   | GET  | path | | to file... tbd | 
-              ​| downloadFile() ​             |                   | to file... tbd | +               | downloadVersion() ​          ​| ​                  | GET  | path | | to file... tbd |  
-              ​| downloadVersion() ​          ​| ​                  | to file... tbd |  +               | getAccountInfo() ​           |                   ​| ​GET  | | GR { AccountInfo } 
-              ​| getAccountInfo() ​           |                   ​| ​               +               | getFolder() ​                | StoredFolder ​     ​| GET  | ??? 
-              ​| getFolder() ​                | StoredFolder ​     | +               | getVersions() ​              | StoredFile+ ​      | GET  | 
-              ​| getVersions() ​              | StoredFile+ ​      | +               | getStoredFile() ​            | StoredFile ​       ​| GET  ​| | 
-              ​| getStoredFile() ​            | StoredFile ​       | | +               | moveFile() ​                 | void              | PUT  | path, dstpath | GR |  
-              ​| moveFile() ​                 | void              | | +               | renameFile() ​               | void              | PUT  | path, newname | GR |  
-              ​| renameFile() ​               | void              | |  +               | renameFolder() ​             | void              | PUT  | path, newname | GR 
-              ​| renameFolder() ​             | void              | |  +               setDescription()            | void              | PUT  | path, description ​
-              ​setDescriptio()             ​| void              | | +               | uploadFolder() ​             | StoredFolder ​     | POST | ??? | 
-              ​| uploadFolder() ​             | StoredFolder ​     | | +|                | uploadFile() ​               | StoredFile ​       | POST | ??? 
-| PROJECTS ​     |                             ​| ​                  | | +| PROJECTS ​(2)   |                             ​| ​                  | | 
-              ​| addProject() ​               | Project ​          | | +               | addProject() ​               | Project ​          | PUT  ​| | 
-              ​| updateProject() ​            | Project ​          | |  +               | updateProject() ​            | Project ​          | PUT  ​| | 
-              ​| getProjects() ​              | Project* ​         | | +               | getProjects() ​              | Project* ​         ​| PUT  ​| | 
-              ​| deleteProject() ​            | void              | | +               | deleteProject() ​            | void              ​| PUT  ​| | 
-              ​| archiveProject() ​           | StoredFile ​       | |  +               | archiveProject() ​           | StoredFile ​       ​| POST | | 
-              ​| restoreProject() ​           | Project ​          | |  +               | restoreProject() ​           | Project ​          | POST | | 
-              ​| getWorkingTime() ​           | WorkingTime ​      | |  +               | getWorkingTime() ​           | WorkingTime ​      ​| ​GET  | | | for a day 
-              ​| getWorkingTime() ​           | WorkingTime* ​     | |  +               | getWorkingTime() ​           | WorkingTime* ​     | GET  | | | for a range of times 
-              ​| updatingWorkingTime() ​      | WorkingTime ​      | |  +               | updatingWorkingTime() ​      | WorkingTime ​      | PUT  ​| | 
-              ​| deleteWorkingTime() ​        | void              | | +               | deleteWorkingTime() ​        | void              ​| PUT  ​| | 
-| REPORTS ​      ​|                             ​| ​                  | | +| REPORTS ​(3)    ​|                             ​| ​                  | | 
-              ​| getReportFormats() ​         | String+ ​          | |  +               | getReportFormats() ​         | String+ ​          | GET  ​| | 
-              ​| getReports() ​               | String+ ​          | | +               | getReports() ​               | String+ ​          | GET  ​| | 
-              ​| runReport() ​                | void              | |  +               | runReport() ​                | void              ​| POST | | 
-              ​| getActiveProducts() ​        | String+ ​          | | +               | getActiveProducts() ​        | String+ ​          | GET  ​| | 
-| ADMIN         ​|                             ​| ​                  | All are customer admin functions as defined in current API | +| ADMIN  ​(3) ​    |                             ​| ​                  | | | | All are customer admin functions as defined in current API | 
-              ​| getUsers() ​                 | StorageUser* ​     | | +               | getUsers() ​                 | StorageUser* ​     ​| GET  ​| | 
-              ​| addUser() ​                  | StorageUser ​      | |  +               | addUser() ​                  | StorageUser ​      | PUT  ​| | 
-              ​| deleteUser() ​               | boolean ​          | |  +               | deleteUser() ​               | boolean ​          | PUT  ​| |  
-              ​| updateUser() ​               | StorageUser ​      | |  +               | updateUser() ​               | StorageUser ​      | PUT  ​| | 
-              ​| getAllLicenses() ​           | LicenseKey* ​      | | +               | getAllLicenses() ​           | LicenseKey* ​      | GET  ​| | 
-              ​| removeLicenseUser() ​        | void              | | +               | removeLicenseUser() ​        | void              ​| PUT  ​| | 
-              ​| addLicenseUser() ​           | void              | | +               | addLicenseUser() ​           | void              ​| PUT  ​| | 
-              ​| updateLicenseCheckoutTime() | LicenseKey ​       | |  +               | updateLicenseCheckoutTime() | LicenseKey ​       ​| PUT  ​| | 
-              ​| getLicenseLog() ​            ​| ​                  ​| ​  +               | getLicenseLog() ​            ​| ​                  ​| ​GET  | | 
-| LICENSE ​      ​|                             ​| ​                  ​| ​Not supported in V1 +| LICENSE ​ ​(5) ​  |                             ​| ​                  ​| ​| | | Needed for web apps at all? 
-              ​| getLicenses() ​              | LicenseKey* ​      | | +               | getLicenses() ​              | LicenseKey* ​      | GET  ​| | 
-              ​| checkoutLicense() ​          | LicenseKey ​       | |  +               | checkoutLicense() ​          | LicenseKey ​       ​| PUT  ​| | 
-              ​| checkinLicense() ​           | LicenseKey ​       | |  +               | checkinLicense() ​           | LicenseKey ​       ​| PUT  ​| | 
-              ​| renewLicense() ​             | LicenseKey ​       | | +               | renewLicense() ​             | LicenseKey ​       ​| PUT  ​| | 
-              ​| submitLicenseComment() ​     | void              | |  +               | submitLicenseComment() ​     | void              ​| PUT  ​| | 
-| SUPPORT ​      ​|                             ​| ​                  | Limited to viewing only operations |  +| SUPPORT ​ ​(5) ​  |                             ​| ​                  | | | | Limited to viewing only operations |  
-              ​| getConfig() ​                | Config ​           | |  +               | getConfig() ​                | Config ​           ​| GET  ​| | 
-              ​| getCustomers() ​             | StorageCustomer* ​ | |  +               | getCustomers() ​             | StorageCustomer* ​ | GET  | | 
-              ​| getCustomerByLicense() ​     | StorageCustomer ​  | |  +               | getCustomerByLicense() ​     | StorageCustomer ​  | GET  ​| | 
-              ​| getCustomerByUser() ​        | StorageCustomer ​  | | +               | getCustomerByUser() ​        | StorageCustomer ​  | GET  ​| | 
-              ​| getUsers() ​                 | StorageUser ​      | | +               | getUsers() ​                 | StorageUser ​      | GET  ​| | 
-              ​| findUsersByPattern() ​       | StorageUser ​      | | +               | findUsersByPattern() ​       | StorageUser ​      | GET  ​| | 
-              ​| runReport() ​                ​| ​                  | |  +               | runReport() ​                ​| ​                  | POST | | 
-              ​| <​del>​addCustomerUser()</​del> ​          ​| StorageUser ​      | |  +               | <​del>​addCustomerUser()</​del> ​   | StorageUser ​      | | 
-              ​| <​del>​addAnnouncement() </​del> ​         | Announcement ​     | |  +               | <​del>​addAnnouncement() </​del> ​  ​| Announcement ​     ​| | 
-              ​| <​del>​deleteAnnouncement()</​del> ​       | void              | |  +               | <​del>​deleteAnnouncement()</​del>​ | void              ​| | 
-              ​| <​del>​getLicenses(cust) </​del> ​         | LicenseKey* ​      | | +               | <​del>​getLicenses(cust) </​del> ​  ​| LicenseKey* ​      | | 
-              ​| <​del>​createLicense() </​del> ​           | LicenseKey ​       | |  +               | <​del>​createLicense() </​del> ​    ​| LicenseKey ​       ​| | 
-              ​| <​del>​updateLicense() </​del> ​           | LicenseKey ​       | |  +               | <​del>​updateLicense() </​del> ​    ​| LicenseKey ​       ​| | 
-              ​| <​del>​convertDCLLicense()</​del> ​        ​| LicenseKey ​       | |  +               | <​del>​convertDCLLicense()</​del> ​ | LicenseKey ​       ​| | 
-              ​| <​del>​transferLicense()</​del> ​          ​| LicenseKey ​       | | +               | <​del>​transferLicense()</​del> ​   | LicenseKey ​       ​| | 
-              ​| <​del>​unlockLicense() </​del> ​           | LicenseKey ​       | | +               | <​del>​unlockLicense() </​del> ​    ​| LicenseKey ​       ​| | 
-              ​| <​del>​addCustomer()</​del> ​              ​| StorageCustomer ​  | | +               | <​del>​addCustomer()</​del> ​       | StorageCustomer ​  | | 
-              ​| <​del>​updateCustomer()</​del> ​           | void              | | +               | <​del>​updateCustomer()</​del> ​    ​| void              ​| | 
-              ​| <​del>​getEvents()</​del> ​                ​| String* ​          | Server event list | +               | <​del>​getEvents()</​del> ​         | String* ​          | | | | Server event list | 
-              ​| <​del>​getApps() </​del> ​                 | Application ​      | | +               | <​del>​getApps() </​del> ​          ​| Application ​      | | 
-              ​| <​del>​updateApp() </​del> ​               |                   | | +               | <​del>​updateApp() </​del> ​        ​|                   | | 
-| TRACKING ​     |                             ​| ​                  | Plus traditional POSITION API |  +| TRACKING ​(4)   |                             ​| ​                  | | | | Plus traditional POSITION API |  
-              ​| getSerialNumbers() ​         | String* ​          | +               | getSerialNumbers() ​         | String* ​          | GET  | 
-              ​| updateGpsStats() ​           | GpsStat ​          |  +               | updateGpsStats() ​           | GpsStat ​          | PUT  | |  
-              ​| updateGpsStats() ​           | GpsStat ​          | inp telemetry, needed in web? | +               | updateGpsStats() ​           | GpsStat ​          | PUT  | | | inp telemetry, needed in web? | 
-              ​| getGpsStats() ​              | GpsStat+ ​         | | +               | getGpsStats() ​              | GpsStat+ ​         ​| GET  ​| |  
-              ​| getGpsTelemetry() ​          | GpsTelemetry ​     | |  +               | getGpsTelemetry() ​          | GpsTelemetry ​     ​| GET  ​| | 
-              ​| getTracks() ​                | Track* ​           | |  +               | getTracks() ​                | Track* ​           ​| GET  ​| | 
-              ​| getTrack() ​                 | Track             | |  +               | getTrack() ​                 | Track             | GET  ​| | 
-              ​| deleteTrack() ​              | void              | | +               | deleteTrack() ​              | void              ​| PUT  ​| | 
-              ​| moveTrack() ​                | Track             | | +               | moveTrack() ​                | Track             | PUT  ​| |  
-              ​| combineTrack() ​             | Track             | |  +               | combineTrack() ​             | Track             | PUT  ​| |  
-              ​| updateTrack() ​              | void              | |  +               | updateTrack() ​              | void              ​| PUT  ​| | 
-              ​| getTrackStats() ​            | TrackStats ​       | | +               | getTrackStats() ​            | TrackStats ​       ​| GET  ​| |  
-              ​| getTrackSummaryStats() ​     | TrackStats ​       | |  +               | getTrackSummaryStats() ​     | TrackStats ​       ​| GET  ​| |  
-              ​| updateTrackStats() ​         | TrackStats ​       | |  +               | updateTrackStats() ​         | TrackStats ​       ​| PUT  ​| |  
-| VEHICLES ​     |                             ​| ​                  | +| VEHICLES ​(4)   |                             ​| ​                  | | 
-              ​| getVehicles() ​              | Vehicle* ​         | +               | getVehicles() ​              | Vehicle* ​         ​| GET  | 
-              ​| addVehicle() ​               | Vehicle ​          | +               | addVehicle() ​               | Vehicle ​          | PUT  | 
-              ​| updateVehicle() ​            | Vehicle ​          |  +               | updateVehicle() ​            | Vehicle ​          | PUT  | 
-              ​| deleteVehicle() ​            | Vehicle ​          |+               | deleteVehicle() ​            | Vehicle ​          | PUT  | |
  
web/access_rest_api.1454032515.txt.gz · Last modified: 2016/01/29 01:55 by mjallison