
Research
Security News
Malicious PyPI Package Exploits Deezer API for Coordinated Music Piracy
Socket researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
steelpenny
Advanced tools
nodejs based API for COINS
cd
into the cloned folder and run npm install
See #usage and #environment requirements to boot the API!
See REQUIREMENTS.md for configuring your system's environment.
$ node src/index.js
Use node src/index.js --help
to see all available options.
@flag development/release/production
run the server using COINS_ENV of the respective flag. Shorthand --dev/rel/prd are honored.
@flag coinstac
start the server with COINSTAC routes. Shorthand -c Defaults to false.
@flag without-new-relic
start the server without including the New Relic agent. Shorthand -w. Defaults to false.
To start the server as a daemon, ansible-provisioned servers should have an upstart script: sudo start steelpenny
.
To start the server with auto-restart, try using monit: monit [re]start steelpenny
.
Logs are written to the logs/
directory in this repo.
The New Relic agent is require()
ed on startup by default, however, it does not
report to New Relic's servers by default. To turn on reporting, the environment
variable NEW_RELIC_ENABLED
must be set to 'true'
. This should be configured
automatically on servers by Ansible: production and staging servers will enable
reporting.
When tests are run, the New Relic agent is not require()
ed at all. This is
accomplished by overriding the cli-options in
src/test/utils/override-cli-opts.js.
Please refer to CONTRIBUTING.md
for details about the code structure, and how
to add to it.
All responses are a JSON string which parses to an object of the following format:
{
data: [ ... ],
error: null | {},
stats: {will eventually include performance data}
}
It is worth noting that the data property will always be an array, even if only a single value is requested/retrieved.
The error property will be null if no errors have occurred. If an error did occur, then the error object will take the following form:
{
error: '...',
message: '...',
statusCode: ###,
debugData: {custom debug data}
}
All endpoints have a prefix of /api/v#.#.#
where v#.#.#
is the version in
package.json
.
The one exception to the above rule is GET /api/version
, which can be used to
retrieve the version via the API itself.
By default, this server starts accepting HTTP
connections on port 8080.
To use HTTPS, place a reverse proxy server in front of this service. production
and staging environments should listen for HTTPS connections on port 443, while
development systems should listen on port 8443.
Please refer to the swagger documentation that is auto-generated by this repo.
To view it, start this server npm start
, and navigate to the base url +
/swagger/documentation
(e.g. https://coins-api.mrn.org/swagger/documentation).
This API also serves a javascript client. The client is auto-generated during the build process, and exists in src/client/src/client.js. At present the client only runs in a nodejs environment (not in the browser).
To retrieve the client remotely, simply send a get
request to /api/client/client.js
.
The client exposes a function which takes a config object, and returns a SDK. Please refer to src/test/utils/init-api-client.js for an example of setting up the client.
If things aren't working, go down this quick checklist.
Is a redis server installed and running locally?
Have you pulled the latest changes in coins_auth, and run grunt build
?
Is nginx installed, configured and running locally?
(only if running in COINSTAC mode) Did you create a cloudant account, or mkdir /tmp/coinstac-pouchdb
?
If you miss any of these requirements, remove all node modules and reinstall them after installing the requirements.
FAQs
node api for COINS
The npm package steelpenny receives a total of 0 weekly downloads. As such, steelpenny popularity was classified as not popular.
We found that steelpenny 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 researchers uncovered a malicious PyPI package exploiting Deezer’s API to enable coordinated music piracy through API abuse and C2 server control.
Research
The Socket Research Team discovered a malicious npm package, '@ton-wallet/create', stealing cryptocurrency wallet keys from developers and users in the TON ecosystem.
Security News
Newly introduced telemetry in devenv 1.4 sparked a backlash over privacy concerns, leading to the removal of its AI-powered feature after strong community pushback.