A client API for accessing the OpenNMS network monitoring platform.
Using the OpenNMS.js APIs In Your Code
Information on getting started and how to use the API is in the OpenNMS Documentation.
The complete API list is available at opennms.github.io.
Using the OpenNMS.js Command Line
- install Node.js
npm install -g opennms
opennms --helpfor a list of available commands
Changes and Versioning
The CHANGELOG should always contain the complete list of changes between versions, and should always be accessible here.
OpenNMS.js follows semantic versioning.
2.5.1 is a small release with just dependency updates, most notably moment.js and moment-timezone, plus minor bumps to Grafana dependencies.
OpenNMS.js 2.5.0 contains a bunch of dependency updates including a move to core-js v3 for compatibility, as well as a few build system cleanups, fixes for querying SNMP interfaces by node ID and a query fix for 0-indexed enums.
This is just a rerelease to fix an issue with artifact generation.
This release includes a ton of dependency updates, as well as an enhancement to specify whether a remote OpenNMS system supports the newer, more efficient, query API for selecting resources.
This release adds support for querying SNMP interfaces, monitored services, and outages.
This release bumps a bunch of dependencies, plus it adds support for the
This release adds support for some flow APIs coming in OpenNMS Horizon 28, as well as a documentation rework and tons of dependency updates.
Another small release with dependency and documentation updates and a switch (back) to npm rather than yarn.
This is a small release with some dependency updates and a fix for handling of ReST data that is missing a response.
OpenNMS.js 2.0 adds a few new APIs, contains a ton of refactoring and build system updates, and has a few small breaking changes.
- updated CLI libraries to fix/improve table output
- better, faster build system to improve generated code
- improved handling of authentication in HTTP implementations
- support for
HEADrequests has been added to the HTTP implementations
- a number of metadata objects (notably
.equals()for comparison now
- property caching on v2 API calls is fixed when interacting with multiple servers/DAOs
- filter API now supports
alarmsCLI list command supports it)
- HTTP parameters in
OnmsHTTPOptionscan now have multiple values -- for example a parameter with value
[ 1, 2 ]will serialize to
api/Logmodule now only exports a single, simplified
typescript-loggingwas overly complicated and not really adding much in the way of value. Use
.setSilent()to change the logging level instead.
- A number of the TypeScript APIs have been clarified to be explicitly nullable (and/or
undefined-able) to make strict null- and type-checking validation pass.
PropertiesCacheand its associated interface,
ISearchPropertyAccessorare gone. This only affects you if you have implemented custom DAOs, which is very unlikely. :)
- The previously deprecated
AbstractHTTP(and sub-classes) has been removed. Access the
Clientno longer keeps a separate copy of the server object. Instead you should access the
- A number of API objects are now immutable/read-only to reduce side-effects:
OnmsServerobjects now have builders (use
.newBuilder()to create) rather than constructors with a bunch of arguments.
OnmsServeris no longer generated, it is computed based on the contents of the server object and should be repeatably equal if the contents are equal.
This release includes support for some additional flow queries, as well as a few security updates and a fix for CLI formatting.
This is a small feature release with a few changes targeted primarily to Helm (adding root cause and tags to the situation feedback API support, and support for
isAcknowledged queries on alarms).
This release contains a number of new features and a few bug fixes, including support for correlation alarms and feedback, and additional metadata for Helm 3.
This is a small release which adds support for a default timeout in
GrafanaHTTP, as well as adding
X-Requested-With headers to requests (NMS-9783).
This release adds support for telemetry (Netflow) APIs which will be introduced in OpenNMS 22.x. It also includes a number of build optimizations and updates since 1.0.
The initial official release of OpenNMS.js.
OpenNMS.js currently supports a subset of the OpenNMS ReST API:
- query alarms, events, and nodes (including complex queries against OpenNMS Horizon 21+ and Meridian 2017+)
- acknowledge, escalate, and clear alarms
- create, update, and close trouble tickets against an alarm
- create, update, and delete alarm sticky memos
- create, update, and delete alarm journal memos