This tool is made available to aid users in developing software that uses the Nexpose API.
This software is not officially supported by Rapid7 and is made available for the community without warranty
- You must install the JAVA SDK to use this tool
- It is highly recommended that you use and IDE (ie: Eclipse, IntelliJ ... etc) when working with these APIs
Use the following to assist in understanding the API's:
...
// Create a URL that points to your nexpose instance.
URL url = new URL("https://<nexpose_netaddress>:<nexpose_port>");
// Create a session object
// NOTE: APISupportedVersion.XXX V1_0("1.0"), V1_1("1.1"), V1_2("1.2") These correspond the API version
APISession session = new APISession(url, "xml", APISupportedVersion.V1_2, <username>, <password>));
// Now login
session.login(null);
...
...
// see org/rapid7/nexpose/api/APISession.java for a list of supported API operations.
// Example: The following will print out all the asset groups and their associated risk
List<AssetGroupSummary> assetGroups = (List<AssetGroupSummary>)session.listAssetGroups(session.getSessionID(), null);
for (AssetGroupSummary assetGroup : assetGroups)
{
System.out.println("************************************");
System.out.println("Name: " + assetGroup.getName());
System.out.println("Risk: " + assetGroup.getRiskScore());
System.out.println("************************************");
}
...
...
session.logout(session.getSessionID(), null);
...
This tool comes with some examples located at: org/rapid7/nexpose/api/examples
-
Compile normally:
mvn install
-
Run with options:
java -cp target/classes <Class_Name_With_Package> <nexpose_netaddress> <port> <username> <password> <other options if needed>