1.2.0 • Published 5 years ago

nexushub-client v1.2.0

Weekly downloads
8
License
MIT
Repository
github
Last release
5 years ago

Nexus Stats API Package

Installation

npm i nexushub-client

Usage

const Nexus = require('nexushub-client')
const nexus = new Nexus({
  // ONLY use this if you want to test new features
  // auth_url: https://auth.staging.nexushub.co 
  // api_url: https://api.staging.nexushub.co
})

const items = await nexus.get('/warframe/v1/items') // Get a list of all items.

API

For a list of all API endpoints, check out the official documentation.

Configuration

const Nexus = require('nexus-stats-api')
const nexus = new Nexus({ key: value })
KeyDefaultDescription
user_keynull(optional) User key obtained via Auth-Node registration
user_secretnull(optional) User secret obtained via Auth-Node

RESTful methods

nexus.get(url)

Sends a GET request to the API-Node

ArgumentDescriptionDefault
urlURL to request, without domain. e.g. /foo.None
nexus.post(url, body)

Sends a POST request to the API-Node

ArgumentDescriptionDefault
urlURL to request, without domain. e.g. /foo.None
bodyData to send to endpoint. Can be any data type.None
nexus.put(url, body)

Sends a PUT request to the API-Node

ArgumentDescriptionDefault
urlURL to request, without domain. e.g. /foo.None
bodyData to send to endpoint. Can be any data type.None
nexus.patch(url, body)

Sends a PATCH request to the API-Node

ArgumentDescriptionDefault
urlURL to request, without domain. e.g. /foo.None
bodyData to send to endpoint. Can be any data type.None
nexus.delete(url, body)

Sends a DELETE request to the API-Node

ArgumentDescriptionDefault
urlURL to request, without domain. e.g. /foo.None
bodyData to send to endpoint. Can be any data type.None

Pub/Sub

nexus.subscribe(endpoint, fn)

Subscribe to updates on a specific endpoint.

ArgumentDescriptionDefault
endpointURL to listen for updates on, without domain. e.g. '/foo'None
fnFunction to run when updates are received. Takes the new data as argument.None

Authentication

nexus.login(user, secret)

Re-authorizes as a specific user at runtime. Usually users should be logged in through the constructor options.

ArgumentDescriptionDefault
userUser id, equal to user_key when registering.None
secretUser password, equal to user_secret when registering.None
nexus.setRefreshToken(token)

Manually set the refresh token. This way user credentials needn't be exposed.

ArgumentDescriptionDefault
tokenrefresh_token to use.None
nexus.getRefreshToken()

Retrieve current refresh token. Will await any existing authentication process. Useful if the initial login can be done through user/pass but the refresh token needs to be stored for subsequent logins.

nexus.setAccessToken(token)

Manually set the access token. This will expire on the next refresh.

ArgumentDescriptionDefault
tokenaccess_token to use.None
nexus.getRefreshToken()

Retrieve current access token. Will await any existing authentication process.

License

MIT