General conventions =================== Asynchronous operations ----------------------- The API makes extensive use of the `Promise `_ API (as defined by the JavaScript ES6 specification), because all requests are made asynchronously. All functions and methods therefore return a *Promise* object, rather than directly the result of the operation. Object properties, however, typically return cached data, and return the requested value directly. Error handling -------------- All errors resulting from operations with the API are represented by a :js:class:`SCWS.Error` object: .. js:autoclass:: SCWS.Error .. js:autoattribute:: Error#message .. js:autoattribute:: Error#code .. js:autoattribute:: Error#httpStatus