9.0.4 • Published 11 months ago

balena-register-device v9.0.4

Weekly downloads
1,602
License
Apache-2.0
Repository
github
Last release
11 months ago

��balena-register-device

Balena device registration utilities.

npm version dependencies Build Status Build status

Installation

Install balena-register-device by running:

$ npm install --save balena-register-device

Documentation

Balena-Register-Device exports a factory function, which must be called with a dependencies object, containing a configured balena-request instance.

Example:

deviceRegister = require('balena-register-device')({
	request: request # An instantiated balena-request instance
})

deviceRegister.generateUniqueKey()

Generate a random key, useful for both uuid and api key.

Example:

randomKey = deviceRegister.generateUniqueKey()
# randomKey is a randomly generated key that can be used as either a uuid or an api key
console.log(randomKey)

deviceRegister.register(Object options, Function callback)

Register a device with Balena.

Notice: You can use this function as a promise if you omit the callback argument.

The options object requires the following properties:

  • Number userId: The user id - optional.
  • Number applicationId: The application id.
  • String uuid: The device's UUID.
  • String deviceType: The device type slug.
  • String deviceApiKey: The API key to create for the newly registered device.
  • String provisioningApiKey: The provisioning API Key.
  • String apiEndpoint: The API endpoint.

The callback gets called with two arguments: (error, deviceInfo), where deviceInfo is an object containing one property: the id for the device that was just registered.

Example:

deviceRegister.register
		userId: 199
		applicationId: 10350
		uuid: '...'
		deviceType: 'raspberry-pi'
		deviceApiKey: '...'
		provisioningApiKey: '...'
		apiEndpoint: 'https://api.balena-cloud.com'
	, (error, deviceInfo) ->
		throw error if error?
		console.log(deviceInfo) # { id }

Tests

Run the test suite by doing:

$ npm test

Contribute

Before submitting a PR, please make sure that you include tests, and that coffeelint runs without any warning:

$ npm run lint

Support

If you're having any problem, please raise an issue on GitHub.

License

The project is licensed under the Apache 2.0 license.

9.0.4

11 months ago

9.0.3

11 months ago

9.0.2

2 years ago

8.0.7

2 years ago

8.0.6

2 years ago

9.0.1

2 years ago

9.0.0

2 years ago

8.0.5

2 years ago

8.0.4

3 years ago

8.0.1

3 years ago

8.0.0

3 years ago

8.0.3

3 years ago

8.0.2

3 years ago

7.1.1

4 years ago

7.2.0

4 years ago

7.1.0

5 years ago

7.0.1

5 years ago

7.0.0

5 years ago

6.1.6

5 years ago

6.1.4

5 years ago

6.1.5

5 years ago

6.1.3

5 years ago

6.1.2

5 years ago

6.1.1

5 years ago

6.1.0

6 years ago

6.0.1

6 years ago

6.0.0

7 years ago