Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
reflect-node
Advanced tools
This is a client for the Reflect API.
This library includes support for generating authentication tokens as well as using the Reflect REST API.
This README outlines basic usage. For more detailed documentation, please refer to JSDoc.
Install reflect-node through npm:
$ npm install reflect-node
This functionality is currently under development. You can expect to see expanded support for our various endpoints down the road.
After Installation, require reflect-node
from your
application:
const Reflect = require('reflect-node');
For the next step you'll need a Reflect API token. You can find yours by logging into https://app.reflect.io then navigating to the Tokens section of the Account page.
const client = new Reflect.Client('my-api-token');
Once you've created a Client
instance, you're ready to make authenticated
requests to the Reflect API using reflect-node
.
The documentation below assumes you've completed these two steps, and have an
instance of Client
stored in a client
variable.
reflect-node
is broken up into various resources with methods for manipulating
them. The various resources and their methods are documented below.
Our reporting APIs are allow you to query the projects you've previously configured in Reflect.
We currently only support the report()
method. This method accepts four
arguments:
Name | Type | Description |
---|---|---|
projectSlug | string | The project slug you wish to query |
dimensions | array | An array of dimension names you wish to query |
metrics | array | An array of metric names to query |
options | object | Options to query with |
Note that it is required to specify either dimensions
or metrics
.
This method returns a promise.
Example:
client.reporting.report('my-project', ['Dimension 1'], ['Metric 1'])
.then((data) => {
console.log(data);
})
List, create, update, and delete projects. Refer to the JSDoc documentation for usage.
To debug reflect-node
, start your Node environment with the following
environment variable set DEBUG=reflect-node
.
Here's an example of how you'd generate an encrypted authentication token.
var reflect = require('reflect-node');
var accessKey = 'd232c1e5-6083-4aa7-9042-0547052cc5dd';
var secretKey = '74678a9b-685c-4c14-ac45-7312fe29de06';
var b = new reflect.ProjectTokenBuilder(accessKey)
.setAttribute('user-id', 1234)
.setAttribute('user-name', 'Billy Bob')
.addParameter({
'field': 'My Field',
'op': '=',
'value': 'My Value',
});
b.build(secretKey, function(err, token) {
console.log(token);
});
FAQs
Node interface for the Reflect API
The npm package reflect-node receives a total of 2 weekly downloads. As such, reflect-node popularity was classified as not popular.
We found that reflect-node demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 8 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.