opensensemap-client
v1.8.1
Published
The library allows and improves type-based working with the openSenseMap API
Readme
openSenseMap Client
Based on API version: v11.3.0
Install
npm install opensensemap-clientpnpm install opensensemap-clientyarn add opensensemap-clientUsage
Usage in TypeScript (with ES Modules):
import * as client from 'opensensemap-client';
async function start() {
// Get information about a senseBox
const r = await client.getBox('57000b8745fd40c8196ad04c').catch((e) => console.error(e));
console.log(JSON.stringify(r));
// Post new sensor data
const data: client.PostNewMeasurementsParamData = [];
const authToken = 'Your senseBox token';
data.push({
sensor: 'Your sensorId',
value: 'Your data'
});
client.postNewMeasurements('Your senseBoxId', data, authToken).catch(console.error);
}
start();Listed functions according to API documentation of openSenseMap
API Functions Reference
Boxes
| Function | Description | OpenSenseMap API Documentation |
| ------------------------------------------------------------------------------------------------------- | ------------------------------------ | ------------------------------------------------------------------- |
| getBox() | Get one senseBox | API Doc |
| getBoxes() | Get all senseBoxes | API Doc |
| postNewBox() | Post new senseBox | API Doc |
| updateBox() | Update a senseBox | API Doc |
| deleteBox() | Mark a senseBox for deletion | API Doc |
| getAllTags() | Get all senseBox tags | API Doc |
| claimBox() | Claim a senseBox marked for transfer | API Doc |
| getSketch() | Download the Arduino script | API Doc |
| getBoxLocations() | Get locations of a senseBox | API Doc |
| getTransfer() | Get transfer information | API Doc |
| createTransfer() | Mark a senseBox for transfer | API Doc |
| removeTransfer() | Revoke transfer token | API Doc |
| updateTransfer() | Update a transfer token | API Doc |
Measurements
| Function | Description | OpenSenseMap API Documentation |
| --------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------- | --------------------------------------------------------------------------------------- |
| postNewMeasurement() | Post new measurement | API Doc |
| getData() | Get latest measurements for a sensor | API Doc |
| deleteMeasurements() | Delete measurements of a sensor | API Doc |
| getDataByGroupTag() | Get measurements for a grouptag | API Doc |
| getDataMulti() | Get measurements for a phenomenon | API Doc |
| getLatestMeasurements() | Get latest measurements of a senseBox | API Doc |
| getLatestMeasurementOfSensor() | Get latest measurements of a sensor | API Doc |
| postNewMeasurements() | Post multiple new measurements | API Doc |
Users
| Function | Description | OpenSenseMap API Documentation |
| ----------------------------------------------------------------------------------------------------------------------- | ------------------------- | ----------------------------------------------------------------------------- |
| register() | Register new user | API Doc |
| deleteUser() | Delete user and all boxes | API Doc |
| getUser() | Get user details | API Doc |
| refreshAuth() | Refresh Authorization | API Doc |
| signIn() | Sign in | API Doc |
| signOut() | Sign out | API Doc |
| updateUser() | Update user details | API Doc |
| confirmEmail() | Confirm email address | API Doc |
| getUserBox() | Get specific box of user | API Doc |
| getUserBoxes() | List all boxes of user | API Doc |
| resendEmailConfirmation() | Resend email confirmation | API Doc |
| requestPasswordReset() | Request password reset | API Doc |
| passwordReset() | Reset password | API Doc |
Other Functions
| Function | Description | OpenSenseMap API Documentation |
| --------------------------------------------------------------------------------------------------- | ------------------------------ | ------------------------------------------------------------------------ |
| calculateIdw() | Get IDW Interpolation | API Doc |
| getStatistics() | Get database statistics | API Doc |
| printRoutes() | Print all routes | API Doc |
| descriptive() | Compute descriptive statistics | API Doc |
You can find more information in the full documentation 📖.
OpenSenseMap API documentation
This library was created with a lot of work, reading the code from the OpenSenseMap-API by hand. In addition, this library provides an Insomnia file for debugging purposes.
Import this file into Insomnia, install the plugins customtimestamp and save-variables and configure the environments if you needed. You are ready!
Author
👤 Julian Wowra [email protected]
- Github: @JulianWowra
🤝 Contributing
Contributions, issues and feature requests are welcome!Feel free to check issues page. You can also take a look at the contributing guide.

