Skip to content

Latest commit

 

History

History
174 lines (128 loc) · 4.13 KB

README.md

File metadata and controls

174 lines (128 loc) · 4.13 KB

Nexus Stats API Package

Nodejs package to connect to api.nexushub.co, based on cubic-client.


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 })
Key Default Description
user_key null (optional) User key obtained via Auth-Node registration
user_secret null (optional) User secret obtained via Auth-Node

RESTful methods

nexus.get(url)

Sends a GET request to the API-Node

Argument Description Default
url URL to request, without domain. e.g. /foo. None

nexus.post(url, body)

Sends a POST request to the API-Node

Argument Description Default
url URL to request, without domain. e.g. /foo. None
body Data to send to endpoint. Can be any data type. None

nexus.put(url, body)

Sends a PUT request to the API-Node

Argument Description Default
url URL to request, without domain. e.g. /foo. None
body Data to send to endpoint. Can be any data type. None

nexus.patch(url, body)

Sends a PATCH request to the API-Node

Argument Description Default
url URL to request, without domain. e.g. /foo. None
body Data to send to endpoint. Can be any data type. None

nexus.delete(url, body)

Sends a DELETE request to the API-Node

Argument Description Default
url URL to request, without domain. e.g. /foo. None
body Data to send to endpoint. Can be any data type. None

Pub/Sub

nexus.subscribe(endpoint, fn)

Subscribe to updates on a specific endpoint.

Argument Description Default
endpoint URL to listen for updates on, without domain. e.g. '/foo' None
fn Function 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.

Argument Description Default
user User id, equal to user_key when registering. None
secret User password, equal to user_secret when registering. None

nexus.setRefreshToken(token)

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

Argument Description Default
token refresh_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.

Argument Description Default
token access_token to use. None

nexus.getRefreshToken()

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

License

MIT